Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

note.step / note.tracker #148

Open
jamesholdenmusic opened this issue Jan 31, 2024 · 1 comment
Open

note.step / note.tracker #148

jamesholdenmusic opened this issue Jan 31, 2024 · 1 comment
Labels
bug Something isn't working enhancement New feature or request

Comments

@jamesholdenmusic
Copy link
Collaborator

jamesholdenmusic commented Jan 31, 2024

a standard mono step seq with multitudes twists..
a voice is monophonic, step seq with

  • multiple stored patterns per voice

  • note (start at 1 so that 0=no note, as with current tracker)

  • length (not overlapping) - from 0 to a few seconds? i guess it doesn't need to do the job of making it mono/legato, because any voices after it in the chain will do that

    • -1 = no length, just a noteon or noteoff. 0 = zero length, (negative vel value sent out). >0 = max length in ms <- add 1, so 0=no length,1=zero, >1 max length+1 in ms
  • vel (support channel aftertouch, ie vel with no note, but not note with no vel. this also starts at 1 because blank != noteoff)
    (- a modulation output param? params? NO: just use another voice if you want a modulation lane)

  • a probability (ie x% chance of skipping note) or ratchet kind of thing (every n'th note is played)

    • positive = ratchet counter, negative = probability. use a random walk kind of thing so that the overall prob is accurate but it's a bit correlated
  • delay (as a fraction of a beat)

  • group some steps then when it lands on one it round robins or randoms - so if you have a pattern like: cdefga, but the last 3 steps are grouped as round robin, it goes cdefcdegcdea. either these steps compress or in other channels you could leave a space? tbh channel alignment isn't a really big deal because they may be on different clocks?

    • round robin data storage: when you clock lands in a round robin'd zone you need to know where it starts, in order to get the current counter for that zone (stored in a the first step's rr value) and get the actual cell. so how about every cell's 'group' value holds (negative) the number of steps back to the first one of the group? or positive = rr counter (starts from 1). that way
    • simple case, playing forwards in above eg, you land on cell 4, get a 3, so you know this is first cell of a RR, and counter is 3. cell 7 has 0 in the rr column, so you know it's wrapped. output cell 4, counter = 0.
    • if you happen to jump into a cell in the middle you can in one step get the first cell, then the counter, then the correct one.
  • all of this could equally be displayed as a tracker view or a steps/bars view.. - i think i'll design one way of storing the data, one playback max patch, and probably 2 different ui patchers but the option to convert from one to the other easily.

this is 6? or 7 values per row. if max_data is increased to 16k you get 16x 128 step patterns, which is enough

@jamesholdenmusic jamesholdenmusic added the enhancement New feature or request label Jan 31, 2024
@jamesholdenmusic jamesholdenmusic added this to the public beta milestone Jan 31, 2024
@jamesholdenmusic
Copy link
Collaborator Author

jamesholdenmusic commented Feb 9, 2024

ok so remaining:
tracker view

  • could implement the rowmapping idea, not actually very hard
  • drag select would've been nice
    • would a special drag event for the custom mouse passthrough be better? save duplicating code everywhere

step view

  • a way to enter 'offs'? ctl click is meant to do it but doesn't
  • could implement the rowmapping idea..
  • a way to select - in 2d, or just on an axis
  • operations on selected stuff.
  • maybe it takes a double click to delete
  • drag?
    • luke's suggestion: if you drag then it moves selected (or single) notes, if motion is v short the old delete happens. if you drag from an empty cell it pen-mode draws a trail.
  • display chance?
  • colours for voices (eg grey for not-this-voice?)
  • display grid shading - copy from tracker

both

  • SOMETIMES PLAY IS RUNNING 1/16th EARLY?
  • loops stretching around round robins (eg if you've grouped 3 steps in a 16 step loop it should get as far as 18, so that loop length is still 16 ticks.
  • undo
  • step entry (via the record button) : it enters 'off' on every other row? not right (also poly entry useless)
    -copy whole pattern (sidebar buttons for this?)

jamesholdenmusic added a commit that referenced this issue Feb 23, 2024
@jamesholdenmusic jamesholdenmusic changed the title note step sequencer note.step / note.tracker May 17, 2024
@jamesholdenmusic jamesholdenmusic added the bug Something isn't working label May 17, 2024
@jamesholdenmusic jamesholdenmusic modified the milestones: public beta, private beta May 17, 2024
jamesholdenmusic added a commit that referenced this issue May 21, 2024
jamesholdenmusic added a commit that referenced this issue May 21, 2024
also if !mini, doesn't reset font size
jamesholdenmusic added a commit that referenced this issue May 21, 2024
jamesholdenmusic added a commit that referenced this issue May 22, 2024
selection stuff, grid shading, done
jamesholdenmusic added a commit that referenced this issue May 30, 2024
@jamesholdenmusic jamesholdenmusic removed this from the private beta milestone Feb 17, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant