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

MIDIplay v2 #220

Open
jpcima opened this issue May 30, 2019 · 0 comments
Open

MIDIplay v2 #220

jpcima opened this issue May 30, 2019 · 0 comments
Assignees

Comments

@jpcima
Copy link
Collaborator

jpcima commented May 30, 2019

Let's keep track of some implementation notes for a reengineered MIDI core, improved and compatible with permissive licensing. (feel free to add ideas)

Feature

  • 4-op channel dynamic switching and allocation
  • allow introducing support for more channel types than FM
  • support keying notes multiple times

Model

  • try breaking down big structures as possible
  • reduce the nesting level of structures
  • make the header more lightweight

Implementation

  • active notes are arrays[128] of linked-lists of note records
  • suggestion of providing RT memory alloc substitution by pools. (for note records / linked list, remove complication of static allocating, maintain a free-list in just one place)

Unused things removal

  • audio tick handler

[etc...]

@Wohlstand Wohlstand self-assigned this Nov 25, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Maybe later
Development

No branches or pull requests

2 participants