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

Milestones #16

Open
24 of 27 tasks
zeffii opened this issue Nov 24, 2020 · 4 comments
Open
24 of 27 tasks

Milestones #16

zeffii opened this issue Nov 24, 2020 · 4 comments

Comments

@zeffii
Copy link
Owner

zeffii commented Nov 24, 2020

Some of these may be implemented early and require re-implementation as my understanding of C++/SDL develops.


Drawing

  • draw pattern, arbitrary from a file.
  • correctly destroy textures to avoid memory leak
  • keep font alive for duration of main
  • add sequencer view

Pattern Editor

  • switch pattern next/last for this instrument
  • edit pattern (input notes, change octave column, new hex values, remove values, note off, note cut)
  • pattern based current octave for new nodes
  • implement selection rectangle
  • delete content of cell
  • function to interpolate between two hex vales.
  • function to interpolate between multiple values over the selection.
  • display outline of current cell for caret (caret is always smaller than outline of total cell)
  • scroll pattern
    • truly link the visual cursor rect position relative to the viewed portion of pattern..
  • cut, copy, paste, wipe selection
  • add console facility! (major!!!!!)
    • replace values with their average; f.ex avg |
    • amplify values; f.ex amp 0.4 and amp 1.0 0.0 (linear interpolate the ampliciation between 2 values)
    • reverse selection rev |
      Envelope Editor
  • handles, lines, active handle
  • kb input, with modifiers for speed.
  • limits, (handles can't move beyond rect bounds and handle can not move x lower than a handle before it)

Instrument Editor panel

  • sliders + kb handlers
  • waveform display, updateable via sliders
  • wavetable with tone + overtones + noise mix + rotate + smoothing (dynamic..width independant code)
  • default parameters for instrument
  • add names to sliders
@zeffii
Copy link
Owner Author

zeffii commented Dec 6, 2020

While i'm not finished the pattern editing stuff, that's one area of the whole project that i'm confident I can fully grasp and make an intuitive interface. Therefor it;s time to shift gears and tackle things that i've been putting off.

  • adsr / NNA , controlled via keyboard ( i really don't care much for mouse control )
  • how to get sound out of this,, (scares me a little..)

@zeffii
Copy link
Owner Author

zeffii commented Dec 12, 2020

Sound is the endgoal of this thing, and it's time to figure out how to implement that part of it.

@zeffii
Copy link
Owner Author

zeffii commented Dec 15, 2020

  • maybe a Bela / beagle bone unit driven?
  • maybe OneLoneCoder 's sound engine ? :)

@zeffii
Copy link
Owner Author

zeffii commented Dec 26, 2020

The bela tutorials are a good resource for learning about waveform reading / playing. I think i have everything I need now to start exclusively looking at how to get sound out of this thing. Anything else I do now that isn't directly sound related will be merely procastination. I don't want to use JUCE, but might.. or the other libraries above.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant