Skip to content

Latest commit

 

History

History
327 lines (296 loc) · 9.4 KB

TODO-TRACKER.md

File metadata and controls

327 lines (296 loc) · 9.4 KB

BETA TESTERS

@d’Composer @CuteFox @Sparvnätter

BUGS

  • ! ! ! Check for 'TODO:' in files
  • Pattern instances can have a negative beat_start but should not

THINK ABOUT

USER REPORT

  • New pattern already filled and un-editable
  • Crash on adding pattern / synth -> Crash from ArrayExt when freing previous ptr while it should not It should be NULL but can't find why it's not.
  • Note effects not saved !

SELF REQUEST

  • Mod will recording as CV ?
  • CV Fx
    • Note effect 'Mxy' set synth CV channel x to y (0v to 10v) OR
    • Note effect 'Mxx' set synth CV channel 0 to x (0v to 9.9v) OR
    • Both ? 'Mxx' & 'mxy'

USER REQUESTS

  • Midi input

    • Midi input set velocity
    • Midi polyphonic input
  • Information / Help display (bottom left)

    • Pattern mode: Active column / cell / note effect information
    • Timeline mode: Current time & total time (in beats)
  • Shortcuts

    • Transpose shortcut (ctrl + arrows = semitone ; maj + arrows = octave)
    • Use num pad to enter numbers
    • Play / pause shortcuts
  • Slew limiter to panning & velocity in synth module (avoid click)

  • Synth module needs CV output to be connected even with mapping

  • Polyphonic rotation rotate to find next available channel (if possible)

  • Pattern instance selection + edition

  • Auto-scroll playing timeline

  • ! ! ! Selection + multiple edition ! ! !

  • ? ? ? FX controlling pattern length ? ? ?

  • Glide allowing effects ? -> Useful to have chance or random note / octave

  • What happens to overriden notes / voices when synth is used with many notes ?

  • Tuning

    • Multiple tuning - switch between them (via CV ?)
    • Tuning view

TODO

  • User enhancements

    • Shortcuts
      • Shift row up / down (insert / remove line)
      • Remove instance with Del (consume Del key)
      • Use arrows to move in timeline view
      • Line selection (MAJ key)
      • Change note stop shortcut ('.' ?)
    • Help in context menu (shortcuts, effects, etc)
    • Ctrl-Z
    • JSON saving format (more stable)
    • Crash on file/revert when song playing
    • Crash on startup
    • Crash with chance effect
    • Module to control playhead
  • PATTERN EDITOR SHORTCUTS

    • Select multiple cells
    • Move cell / selection up / down
    • Copy cell / selection
    • Cut cell / selection
    • Paste cell / selection
  • MODULE Tracker

    • BACKEND
      • PLAY
        • Play song
        • Play pattern solo
        • Play pattern
        • Play matrix
      • TIMELINE
      • PATTERN
        • SWING
        • NOTE
          • Mode gate
          • Mode trigger
          • Mode drum
          • Note new (run new note)
          • Note keep (keep active note)
          • Note stop (stop active note)
          • Note glide (glide note, vel, pan)
            • Glide pitch
            • Glide velocity + panning
            • Glide effects (chance, note, etc)
          • Pitch temperament scale
          • Pitch base offset (from 440hz)
        • CV
          • Mode CV
          • Mode Gate
          • Mode BPM
          • Mode tuning ?
          • CV set (set cv point)
            • CV value
            • CV curve
          • CV keep (continue interpolation)
        • FX Column (effects active on entire column, from context menu)
      • LIVE
        • Play live (with caps lock, write in any case)
        • Record live (with play and caps lock on)
          • Move cursor (when record is on)
          • Record notes
            • Single column
            • Multiple columns
          • Record delays
          • Record MPE (with effects)
        • External midi keyboard
          • Select keyboard (from context menu)
          • Play keyboard
    • FRONTEND
      • Buttons
        • Play
          • Play song
          • Play pattern
          • Pause
          • Stop
        • View
          • View pattern
          • View timeline
          • View matrix
          • View tuning
        • Pattern view modes
          • View velocity
          • View panning
          • View delay
          • View glide
          • View effects
        • Pattern values
          • Change octave
          • Change line jump
      • Display
        • Screen mode (Tracker + Timeline + Matrix + Tuning)
        • Screen Tracker
          • View modes (amp + pan + ...)
          • Layer tracker (text only)
          • Layer visual (CV)
            • Mode CV
            • Mode BPM
            • Mode Gate
            • Interpolation
            • Delay
            • Curve
          • Layer user (cursor + beat cursor)
          • Interaction
            • Keyboard
              • Edit pattern
              • Jump line
            • Left click (cursor)
            • Right click
              • Edit pattern
              • Edit column
              • Edit column effects
        • Screen Timeline
          • Lines
          • Columns
          • Add instance
          • Del instance
          • Select instance
          • Move instance
          • Resize instance (fix negative beat_start)
        • Screen Matrix
        • Screen Tuning
          • Default tuning
          • User tuning
          • Clean ui
        • Context menu general
          • Frame rate (audio, audio / 2, audio / 4, ...)
          • Base pitch (default: 440)
          • Tuning
            • Presets temperament (equal, just, ...)
            • Presets scales (major, minor, modes, ...)
            • Presets EDO (2edo, 3edo, ..., 11edo)
            • Manual
              • Cent
              • Ratio
              • Edo
        • Context menu specific
          • Synth
            • Synth channel count
            • Synth mode (gate | trigger | drum)
          • Pattern
            • Pattern length
            • Pattern lpb
            • Pattern note column count
            • Pattern CV column count
            • Pattern color
          • Column
            • Mute
            • Note
              • Effect count
            • CV
              • Mode
              • Synth
              • Index
      • Display Side
        • Screen Side Synths (Tracker)
          • Draw synths
          • Select synth
          • Edit Synth
            • Basics (name + color)
            • Synth mode & channel count
          • Add synth
          • Del synth
          • Move synth (move & replace in patterns)
          • Scroll
        • Screen Side Patterns (Timeline)
          • Draw patterns
          • Select pattern
          • Double click : open pattern tracker
          • Edit pattern
            • Basics (name + color)
            • Pattern specs (length, lpb, etc.)
          • Add pattern
          • Del pattern (remove instances)
          • Move pattern (move & replace in instances)
          • Duplicate pattern
          • Scroll
    • SAVE
      • Save data
      • Load data
      • Load template on empty
    • HISTORY (UNDO / REDO)
      • ActionNote (replace note cell by another)
      • ActionCV (replace cv cell by another)
      • ActionSongResize (resize song)
      • ActionPatternResize (resize pattern length or notes or cv. Can contain multiple removed ActionNote & ActionCV)
      • ActionPatternColumn (change pattern column)
      • ActionSynth (change synth)
      • ActionSynthOut (change synth output module)
  • MODULE TrackerSynth / TrackerDrum

    • FRONTEND
      • Context menu
        • CV mode range
        • CV mode mapping
    • BACKEND
      • CV
        • CV mode range (min / max sliders)
        • CV mode mapping
  • MODULE TrackerClock (mult & div clock)

    • Mode fixed (Restart on loop)
    • Mode Loop (Keep going on loop)
  • MODULE TrackerPhase (mult & div synced LFO)

    • Mode fixed (Restart on loop)
    • Mode Loop (Keep going on loop)
  • MODULE TrackerQuant (quantizer with Tracker pitch & temperament)

    • Mode note nearest (input searched into scale table)
    • Mode index (input used to index scale table)
      • Mode index down
      • Mode index up
      • Mode index round
  • MODULE TrackerState (Playing gate & trigger)

    • State outputs
      • Play gate
      • Play trigger
      • Stop trigger
      • Play + Stop trigger
    • Visualizer display
      • Synth voices note (Y axis)
      • Synth voices velocity (width or alpha)
      • Synth voices panning (X axis)
      • Synth voices color

Effects

  • Axx Amplitude random (xx: noise amplitude) Multiply base amplitude by noise (noise can only make it lower)
  • Pxx Pan random (xx: pan amplitude) Add noise to base panning (bipolar noise)
  • pxx Pitch (micro) random (xx: pitch amplitude)
  • txx Tuning (micro) fixed (xx: pitch amplitude up to 1 semitone) xx = 0 : Note n xx = 99 : Note n + 1 Transition from 0 to 99 depends on temperament table Microtonal + MPE
  • Dxx Delay random (xx: delay amplitude)
  • Oxy Octave random (x: mode y: amplitude) x = 0 : -+ offset x = 1 : + offset x = 2 : - offset
  • Mxy Note random semitone (x: semitone tone 1st offset y: 2nd offset) Peek random note between [base note], [base + x] and [base + y] x & y being semitone offset Can be cumulable
  • Vxy Vibrato (x: speed y: amplitude)
  • Txy Tremolo (x: speed y: amplitude)
  • Cxx Chance keep (xx: chance) Keep previous running note on if chance does not occur
  • cxx Chance stop (xx: chance) Stop previous running note even if chance does not occur
  • Rxx Ratchet / Retrigger (xx: retrigger interval) ? (x: amp fade y: interval) x<5 : decrease | x>5 : increase | x=5 : static y represents the interval between retriggers