{"id":3232,"date":"2026-06-18T18:42:59","date_gmt":"2026-06-18T22:42:59","guid":{"rendered":"https:\/\/wizardwalk.com\/newblather\/?p=3232"},"modified":"2026-06-18T18:42:59","modified_gmt":"2026-06-18T22:42:59","slug":"tunesage-progress-update-11","status":"publish","type":"post","link":"http:\/\/wizardwalk.com\/newblather\/?p=3232","title":{"rendered":"TuneSage progress update 11"},"content":{"rendered":"<p><img loading=\"lazy\" src=\"http:\/\/wizardwalk.com\/newblather\/wp-content\/uploads\/2023\/11\/tunesagesage-300x300.png\" alt=\"\" width=\"400\" height=\"400\" class=\"aligncenter wp-image-3102\" srcset=\"http:\/\/wizardwalk.com\/newblather\/wp-content\/uploads\/2023\/11\/tunesagesage-300x300.png 300w, http:\/\/wizardwalk.com\/newblather\/wp-content\/uploads\/2023\/11\/tunesagesage-150x150.png 150w, http:\/\/wizardwalk.com\/newblather\/wp-content\/uploads\/2023\/11\/tunesagesage-768x768.png 768w, http:\/\/wizardwalk.com\/newblather\/wp-content\/uploads\/2023\/11\/tunesagesage-50x50.png 50w, http:\/\/wizardwalk.com\/newblather\/wp-content\/uploads\/2023\/11\/tunesagesage.png 1024w\" sizes=\"(max-width: 400px) 100vw, 400px\" \/><\/p>\n<p>Haven&#8217;t blogged in a while! Does anyone read blogs anymore anyway?<\/p>\n<p>Also haven&#8217;t made an update about TuneSage in a few years. But I&#8217;ve been working on it on and off, trying a lot of approaches and doing a lot of experiments that ultimately failed. Lots of trial and even more error.<\/p>\n<p>But I\u00a0<em>finally<\/em> have a completely overhauled algorithm that is both extremely fast and much easier to iterate on (unlike previous versions), so I&#8217;m excited and finally feel like I&#8217;m making good progress once more (despite the emergence of a vocal anti-AI crowd that didn&#8217;t much exist 10+ years ago).<\/p>\n<p>Anyway, I&#8217;ve just made a YouTube video demonstrating TuneSage as it is at the moment:<\/p>\n<p style=\"text-align: center;\"><iframe loading=\"lazy\" width=\"560\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/kbvKsmM-1uo?si=gqAWnQBoYHvK5oWH\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen=\"allowfullscreen\"><\/iframe><\/p>\n<p>As I mention in the video, the three main things I want to add before launching the product:<\/p>\n<ul>\n<li>Melodic styles (right now the melodies are purposefully very random and generic sounding)<\/li>\n<li>The ability to write melodies more or less than 8 bars long, and the ability to string melodies together for larger forms<\/li>\n<li>The ability to edit individual notes or chords, and the ability to &#8220;lock&#8221; notes or chords in place while re-generating the rest<\/li>\n<\/ul>\n<p>Plus, I&#8217;ll probably move the chordal accompaniment to a separate track so that the user can choose different instruments for both.<\/p>\n<p>Still, the app will focus only on generating melodies with chords at first. I&#8217;ll work on expanding the accompaniment generation abilities after the app is actually launched.<\/p>\n<p>(P.S. As of this writing, <a href=\"https:\/\/www.tunesage.com\">tunesage.com<\/a> is down because I switched hosts and still haven&#8217;t reuploaded the landing page&#8230; I should do that soon.)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Haven&#8217;t blogged in a while! Does anyone read blogs anymore anyway? Also haven&#8217;t made an update about TuneSage in a few years. But I&#8217;ve been working on it on and off, trying a lot of approaches and doing a lot of experiments that ultimately failed. Lots of trial and even [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"spay_email":"","jetpack_publicize_message":"","jetpack_is_tweetstorm":false,"jetpack_publicize_feature_enabled":true},"categories":[797],"tags":[100],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p7gI4B-Q8","_links":{"self":[{"href":"http:\/\/wizardwalk.com\/newblather\/index.php?rest_route=\/wp\/v2\/posts\/3232"}],"collection":[{"href":"http:\/\/wizardwalk.com\/newblather\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/wizardwalk.com\/newblather\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/wizardwalk.com\/newblather\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/wizardwalk.com\/newblather\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3232"}],"version-history":[{"count":4,"href":"http:\/\/wizardwalk.com\/newblather\/index.php?rest_route=\/wp\/v2\/posts\/3232\/revisions"}],"predecessor-version":[{"id":3236,"href":"http:\/\/wizardwalk.com\/newblather\/index.php?rest_route=\/wp\/v2\/posts\/3232\/revisions\/3236"}],"wp:attachment":[{"href":"http:\/\/wizardwalk.com\/newblather\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3232"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/wizardwalk.com\/newblather\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3232"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/wizardwalk.com\/newblather\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3232"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}