Assists music production by grouping standalone programs into sessions. Community version of "Non Session Manager".
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

56 lines
2.6KB

  1. ! title TODO list for the Non-sequencer
  2. --
  3. ; General
  4. * improve or get rid of the transport.valid test at initialization time.
  5. * deal with dropped ticks from timebase master better when running as slave.
  6. * add 'compaction' action to remove unnamed phrases/patterns and
  7. ajdust their numbers approrpiately (offline)?
  8. * fix transport seeking to the middle of a phrase/pattern in Sequence
  9. Mode.
  10. * allow deletion and renumbering of individual patterns and phrases.
  11. * add mode for disconnected operation. This is especially important
  12. for the situation where there is a timebase master when Non is
  13. started that exits before Non is closed, resulting in a lack of BBT
  14. information on the transport and a subsequent crash.
  15. * add option to create new instrument defintion.
  16. * per phrase tempo setting? Perhaps a percentage of global tempo?
  17. * add channel field to event list widget (but channel bits in pattern
  18. event lists are currently meaningless.)
  19. * add uneditable "other" tab to event list widget.
  20. * new Phrase playback mode. In this mode, a single phrase is looped,
  21. and the next phrase to be looped can be queued. This is similar the
  22. the playlist, but not linear from bar 1.
  23. * live performance record. Does this have to be internal to Non? Is
  24. there no jack MIDI capable recorder that could be connected to all
  25. non ports? How would ports be handled anyway? As separate tracks in
  26. an SMF-1 file, perhaps?
  27. * add global setting for composer name/copyright to be included in
  28. song files.
  29. * !!! now that we're not using stupid-ass STL list container for the
  30. event lists we can perhaps keep a pointer to the next event in the
  31. playback thread, which would eliminate much overhead. This might
  32. also require keeping a "dirtied" bit in the grid to let the
  33. playback thread know that the UI thread has changed the list
  34. between process calls (also, what about transport relocations?)
  35. * guess key signature of imports?
  36. * figure out how to handle SysEx events with Jack MIDI (packetize them?)
  37. * add chords to scale list... a pattern using the scale of a chord
  38. would contain a melody within that chord.
  39. ; Canvas
  40. * custom scrollbar widget (dots)
  41. * add vertical scrollbar widget to canvas.
  42. * update beat/measure line drawing when BPB changes.
  43. * update phrase height when number of patterns changes... (good use
  44. for a signal?)
  45. * phrases need a way to show/hide relevant patterns. The whole
  46. "mapping" system is a total mess. How about only showing rows
  47. containing events? How would one add a pattern in this system? A
  48. button that adds an event for the given pattern?
  49. * split canvas into separate widgets (ruler, names, canvas)?