output/pipewire: create inactive stream, fill ring_buffer first
This avoids underruns at the start of playback.
This commit is contained in:
parent
00fd692eba
commit
7c9f4f7e4f
@ -336,7 +336,13 @@ PipeWireOutput::Open(AudioFormat &audio_format)
|
|||||||
{
|
{
|
||||||
disconnected = false;
|
disconnected = false;
|
||||||
restore_volume = true;
|
restore_volume = true;
|
||||||
paused = false;
|
|
||||||
|
/* we're paused (inactive) now because of the flag
|
||||||
|
PW_STREAM_FLAG_INACTIVE; this way, we can fill the
|
||||||
|
ring_buffer before activating the stream, to avoid
|
||||||
|
underruns */
|
||||||
|
paused = true;
|
||||||
|
|
||||||
drain_requested = false;
|
drain_requested = false;
|
||||||
drained = true;
|
drained = true;
|
||||||
|
|
||||||
@ -380,6 +386,7 @@ PipeWireOutput::Open(AudioFormat &audio_format)
|
|||||||
PW_DIRECTION_OUTPUT,
|
PW_DIRECTION_OUTPUT,
|
||||||
target_id,
|
target_id,
|
||||||
(enum pw_stream_flags)(PW_STREAM_FLAG_AUTOCONNECT |
|
(enum pw_stream_flags)(PW_STREAM_FLAG_AUTOCONNECT |
|
||||||
|
PW_STREAM_FLAG_INACTIVE |
|
||||||
PW_STREAM_FLAG_MAP_BUFFERS |
|
PW_STREAM_FLAG_MAP_BUFFERS |
|
||||||
PW_STREAM_FLAG_RT_PROCESS),
|
PW_STREAM_FLAG_RT_PROCESS),
|
||||||
params, 1);
|
params, 1);
|
||||||
|
Loading…
Reference in New Issue
Block a user