pipewire/spa
Pauli Virtanen 9c4aab7508 bluez5: sco-sink: implement flushing the same way as in a2dp-sink
Use separate timers for driving graph and for flushing, since they don't
have the same period.

Flushing is done based on the time positions of the next sample to be
written, so it will stay in sync with the graph.  Because writing too
much data to SCO sockets generally only causes the device to skip ahead,
we don't need to handle the case where the writing has been lagging.

This fixes simultaneous playback to both ALSA and SCO sinks from the
same graph, with SCO as driver, which previously produces broken sound
(e.g. with pw-play --latency 512, linked to the two sinks) ALSA nodes
require regular driver intervals, which was not true previously.
2022-10-18 14:42:14 +00:00
..
examples examples: fix spelling mistake 2022-06-16 16:40:47 +02:00
include Add more parentheses 2022-10-06 12:12:35 -04:00
plugins bluez5: sco-sink: implement flushing the same way as in a2dp-sink 2022-10-18 14:42:14 +00:00
tests treewide: fix some strict-prototypes Clang warnings/errors 2022-10-12 07:32:47 +00:00
tools spa: tools: spa-inspect: clear and free handles 2022-06-16 16:59:40 +02:00
meson.build bluez5: backend-native: Add a ModemManager dependency 2022-10-05 19:31:50 +00:00