{"id":2683,"date":"2021-04-06T04:31:16","date_gmt":"2021-04-06T08:31:16","guid":{"rendered":"http:\/\/wizardwalk.com\/newblather\/?p=2683"},"modified":"2021-04-06T04:32:00","modified_gmt":"2021-04-06T08:32:00","slug":"tunesage-progress-update-2","status":"publish","type":"post","link":"http:\/\/wizardwalk.com\/newblather\/?p=2683","title":{"rendered":"TuneSage progress update 2"},"content":{"rendered":"<p>It&#8217;s been five days and, judging by the to-do list, it doesn&#8217;t look like I&#8217;ve done much. I actually spent a bunch of time fixing various bugs.<\/p>\n<p>Also I added a few new things to the to-do list; &#8220;auto-color tracks differently&#8221; will be easy; that&#8217;s just a matter of cycling through hues when a MIDI is loaded, the same sort of thing I did in the Java-based <a href=\"https:\/\/github.com\/wizardwalk\/midi-animator\">MIDI animator<\/a>.<\/p>\n<p>I also want to allow the user to import their own soundfont from their computer. (Although honestly that&#8217;s probably a feature that can wait until after launch, so that one&#8217;s iffy.)<\/p>\n<p>Finally, we&#8217;ll need an &#8220;undo \/ redo&#8221; feature so that when the user presses Ctrl+Z, it will undo the last change. Not really sure of the best way to implement that, but we&#8217;ll figure it out.<\/p>\n<ul>\n<li>Playing features\n<ul>\n<li><del>Play from a selected position<\/del>\u00a0<strong>\u2713<\/strong><\/li>\n<li>Play or loop a selection<\/li>\n<li>Show play location in minutes \/ seconds<\/li>\n<li><del>Pause play (saves play position)<\/del>\u00a0<strong>\u2713<\/strong><\/li>\n<li><del>Show \/ hide measure numbers<\/del>\u00a0<strong>\u2713<\/strong><\/li>\n<\/ul>\n<\/li>\n<li>Move \/ create tempos (or tempo groups for accelerandos?)<\/li>\n<li>Note editing\n<ul>\n<li>Move \/ create \/ delete \/ edit notes or note groups<\/li>\n<li>Copy \/ paste notes or note groups<\/li>\n<li>Edit note velocities<\/li>\n<\/ul>\n<\/li>\n<li>Track editing\n<ul>\n<li><del>Load track instrument from MIDI file<\/del>\u00a0<strong>\u2713<\/strong><\/li>\n<li>Edit track instrument<\/li>\n<li>Edit track volume \/ stereo positions<\/li>\n<li>Auto-color tracks differently<\/li>\n<\/ul>\n<\/li>\n<li>Load \/ display \/ edit key signatures<\/li>\n<li>MIDI loading\n<ul>\n<li>Load note velocities from MIDI<\/li>\n<li>Fix MIDI loading bug: Extra note at end of file<\/li>\n<\/ul>\n<\/li>\n<li>Saving \/ exporting\n<ul>\n<li>Save \/ load music pieces to \/ from personal database<\/li>\n<li>Export music to MIDI<\/li>\n<li>Export music to WAV or MP3<\/li>\n<\/ul>\n<\/li>\n<li>Bookmark sections of a piece<\/li>\n<li>Zoom in and out (horizontally)<\/li>\n<li>Undo \/ redo support (Ctrl+Z)<\/li>\n<li>Import soundfonts from computer (<em>low priority<\/em>)<\/li>\n<li>Account\n<ul>\n<li>Confirm email (if necessary)<\/li>\n<li>Log in \/ out \/ reset password<\/li>\n<li>Edit optional personal info<\/li>\n<li>Usage stats<\/li>\n<\/ul>\n<\/li>\n<li>Final design pass (make everything look good)<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>It&#8217;s been five days and, judging by the to-do list, it doesn&#8217;t look like I&#8217;ve done much. I actually spent a bunch of time fixing various bugs. Also I added a few new things to the to-do list; &#8220;auto-color tracks differently&#8221; will be easy; that&#8217;s just a matter of cycling [&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":[],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p7gI4B-Hh","_links":{"self":[{"href":"http:\/\/wizardwalk.com\/newblather\/index.php?rest_route=\/wp\/v2\/posts\/2683"}],"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=2683"}],"version-history":[{"count":2,"href":"http:\/\/wizardwalk.com\/newblather\/index.php?rest_route=\/wp\/v2\/posts\/2683\/revisions"}],"predecessor-version":[{"id":2685,"href":"http:\/\/wizardwalk.com\/newblather\/index.php?rest_route=\/wp\/v2\/posts\/2683\/revisions\/2685"}],"wp:attachment":[{"href":"http:\/\/wizardwalk.com\/newblather\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2683"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/wizardwalk.com\/newblather\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2683"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/wizardwalk.com\/newblather\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2683"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}