pipewire/spa/plugins/alsa
Wim Taymans 22db59d8a3 alsa: fix rate matching in the sequencer
The alsa sequencer rate matching was not actually working correctly.
It would compare the previous queue time with the current time and
compare that to the quantum. This would include uncorrected errors from
jitter and would result in the timeouts being scaled in the wrong
direction forever.

Instead, calculate an ideal queue time and compare our current queue
time against that. We then use the correction to scale the timeout or
the next queue time prediction.

Also use the predicted time as the base time for the event timestamps.
this results in less jitter.

Fixes #3657
2023-12-05 15:37:02 +01:00
..
acp acp: avoid copying structure into itself 2023-12-04 11:19:08 +01:00
mixer
90-pipewire-alsa.rules
acp-tool.c
alsa-acp-device.c
alsa-compress-offload-device.c
alsa-compress-offload-sink.c
alsa-pcm-device.c
alsa-pcm-sink.c alsa: Move ctl sources to a main loop 2023-11-22 16:00:25 +00:00
alsa-pcm-source.c alsa: Move ctl sources to a main loop 2023-11-22 16:00:25 +00:00
alsa-pcm.c alsa: clamp buffer_frames correctly 2023-12-04 11:18:32 +01:00
alsa-pcm.h alsa: Move ctl sources to a main loop 2023-11-22 16:00:25 +00:00
alsa-seq-bridge.c
alsa-seq.c alsa: fix rate matching in the sequencer 2023-12-05 15:37:02 +01:00
alsa-seq.h alsa: fix rate matching in the sequencer 2023-12-05 15:37:02 +01:00
alsa-udev.c
alsa.c
alsa.h
compress-offload-api-util.c
compress-offload-api-util.h
compress-offload-api.c
compress-offload-api.h
meson.build
test-hw-params.c
test-timer.c