Skip to content

Coremidi#85

Merged
coelckers merged 4 commits intoZDoom:masterfrom
johncurley:coremidi
Nov 23, 2025
Merged

Coremidi#85
coelckers merged 4 commits intoZDoom:masterfrom
johncurley:coremidi

Conversation

@johncurley
Copy link
Contributor

I've studied the ALSA implementation and it's scheduler thread. My apologies for the original code and my lack of understanding of midi timing.

I've updated the codebase with a PlayerLoop scheduler that activates every 10 milliseconds. This calls the PlayTick() function that times events by reading from the queue, calculating the timestamp for the event and then sends the midi event to the operating system. The function then updates the NextTickIn counter for the next event.

@coelckers coelckers merged commit 387f676 into ZDoom:master Nov 23, 2025
8 checks passed
@Cacodemon345
Copy link
Contributor

This still looks improper, not relying on CoreMIDI-side scheduling if I'm looking at it correctly.

Is there any reason for that? I'd just increment the start time and use it for proper MIDI playback. Or is that too hard to do?

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

Successfully merging this pull request may close these issues.

3 participants