Tunesage

TuneSage progress update 3

A few more things checked off the list. Added a couple “measure editing” tasks. Quite a few tasks I think can probably be skipped for now, as I’d like to get back to working on the back-end so I can then work on integrating the back-end with the front-end. Most of the skipped items should not be overly difficult anyway (though difficulty is always easy to underestimate). Excluding the skipped items leaves the items in bold: measure editing, save / load / export stuff, and an “undo” system, which I guess will be better to tackle earlier than later.

I still need to have a good think about what features the back-end should include at launch; that is, what specific music-generating features would be most useful. I’ll do that in another post a bit later, I suppose.

  • Playing features
    • Play from a selected position 
    • Play or loop a selection (skip!)
    • Show play location in minutes / seconds (skip!)
    • Pause play (saves play position) 
    • Show / hide measure numbers 
  • Move / create tempos (or tempo groups for accelerandos?) (skip!)
  • Note editing
    • Move / create / delete / edit notes or note groups (skip!)
    • Copy / paste notes or note groups (skip!)
    • Edit note velocities (skip!)
  • Measure editing
    • Delete / create / edit measures
    • Delete / create / edit sections (measure groups)
  • Track editing
    • Load track instrument from MIDI file 
    • Edit track instrument 
    • Edit track volume / stereo positions (skip!)
    • Auto-color tracks differently (skip!)
  • Load / display / edit key signatures (skip!)
  • MIDI loading
    • Load note velocities from MIDI 
    • Fix MIDI loading bug: Extra note at end of file (skip!)
  • Saving / exporting
    • Save / load music pieces to / from personal database
    • Export music to MIDI
    • Export music to WAV or MP3 (skip!)
  • Bookmark sections of a piece (skip!)
  • Zoom in and out (horizontally) 
  • Undo / redo support (Ctrl+Z)
  • Import soundfonts from computer (low priority) (skip!)
  • Account
    • Confirm email (if necessary) (skip!)
    • Log in / out / reset password (skip!)
    • Edit optional personal info (skip!)
    • Usage stats (skip!)
  • Final design pass (make everything look good) (skip!)

By S P Hannifin, ago
Tunesage

TuneSage progress update 2

It’s been five days and, judging by the to-do list, it doesn’t look like I’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; “auto-color tracks differently” will be easy; that’s just a matter of cycling through hues when a MIDI is loaded, the same sort of thing I did in the Java-based MIDI animator.

I also want to allow the user to import their own soundfont from their computer. (Although honestly that’s probably a feature that can wait until after launch, so that one’s iffy.)

Finally, we’ll need an “undo / redo” 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’ll figure it out.

  • Playing features
    • Play from a selected position 
    • Play or loop a selection
    • Show play location in minutes / seconds
    • Pause play (saves play position) 
    • Show / hide measure numbers 
  • Move / create tempos (or tempo groups for accelerandos?)
  • Note editing
    • Move / create / delete / edit notes or note groups
    • Copy / paste notes or note groups
    • Edit note velocities
  • Track editing
    • Load track instrument from MIDI file 
    • Edit track instrument
    • Edit track volume / stereo positions
    • Auto-color tracks differently
  • Load / display / edit key signatures
  • MIDI loading
    • Load note velocities from MIDI
    • Fix MIDI loading bug: Extra note at end of file
  • Saving / exporting
    • Save / load music pieces to / from personal database
    • Export music to MIDI
    • Export music to WAV or MP3
  • Bookmark sections of a piece
  • Zoom in and out (horizontally)
  • Undo / redo support (Ctrl+Z)
  • Import soundfonts from computer (low priority)
  • Account
    • Confirm email (if necessary)
    • Log in / out / reset password
    • Edit optional personal info
    • Usage stats
  • Final design pass (make everything look good)

By S P Hannifin, ago
Programming

TuneSage progress update 1

There’s still lots of work to do on TuneSage. I’m hoping if I regularly blog some short progress updates, it may encourage productivity, as it did last year with Trovedex.1

Right now I’m working on the front-end. As always, it’s a bit of a balancing act deciding what features need to be included and what features can wait to be added after launch. So far, the completed features include:

  • Load a MIDI from file
  • Mute / solo tracks
  • Change track colors
  • Show / hide tempo marks (from MIDI)
  • Edit / delete tempos
  • Show / hide measure lines
  • Show / hide pitch lines
  • Play MIDI

Features on the to-do list:

  • Playing features
    • Play from a selected position
    • Play or loop a selection
    • Show play location in minutes / seconds
    • Pause play (saves play position)
  • Move / create tempos (or tempo groups for accelerandos?)
  • Note editing
    • Move / create / delete / edit notes or note groups
    • Copy / paste notes or note groups
    • Edit note velocities
  • Track editing
    • Load track instrument from MIDI file
    • Edit track instrument
    • Edit track volume / stereo positions
  • Load / display / edit key signatures
  • MIDI loading
    • Load note velocities from MIDI
    • Fix MIDI loading bug: Extra note at end of file
  • Saving / exporting
    • Save / load music pieces to / from personal database
    • Export music to MIDI
    • Export music to WAV or MP3
  • Bookmark sections of a piece
  • Zoom in and out (horizontally)
  • Account
    • Confirm email (if necessary)
    • Log in / out / reset password
    • Edit optional personal info
    • Usage stats
  • Final design pass (make everything look good)

That’s not counting the further work of integrating the back-end with the front-end.

Anyway, my goal is to finish all the above before the end of this month (April 2021), and then I can move on to integrating the back-end (which still needs a good bit of work itself).

Feel free to suggest any features you’d like; though, like I said, I’m only trying to do the minimum needed to launch.

By S P Hannifin, ago