Skip to content

Seq66's MIDI timing completely falls apart at JACK buffer sizer larger than 128 #100

Description

@unfa

Here's a 16th note blastbeat at 200 BPM I used to test this. I am using Geonkick to generate audio so the waveform should be identical every time (it plays internally-generated samples).

At buffer size 2048 the timing is completely broken:
image

At buffersize 128 - it seems good, but when you look closely at the waveform just before each transient you'll see that they differ and this is audible.
image

Here's 32 - audibly it's best so far, but we can see that it's still not perfect:
image

256 is the lowest usable imho but it's jittery:
image

For my work I usually need buffer of 1024 or 2048, as I do livestreaming and my DSP load is really high.

Here's 1024, which is the lowest feasible for me, but already will cause severe xruns:
image

It seems like the events are not properly scheduled withing each buffer and they get piled up at the end or start of each buffer cycle? I don't know how this works technically, but no other MIDI sequencer I ever used did this.

Here's the RaySession I used to test this. I'll require you to have RaySession, Carla and Geonkick installed to test:
unfa live 2022-09-03.tar.gz

RaySession allows to very easily change the buffer size:
image

Hopefully this can help :)

PS: I've tried changing JACK PPQN value from 192 to 2400 but it had absolutely no effect.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions