diff --git a/src/output/plugins/PipeWireOutputPlugin.cxx b/src/output/plugins/PipeWireOutputPlugin.cxx index 33fba8ade..b83bb7399 100644 --- a/src/output/plugins/PipeWireOutputPlugin.cxx +++ b/src/output/plugins/PipeWireOutputPlugin.cxx @@ -61,7 +61,11 @@ class PipeWireOutput final : AudioOutput { std::size_t frame_size; - boost::lockfree::spsc_queue *ring_buffer; + /** + * This buffer passes PCM data from Play() to Process(). + */ + using RingBuffer = boost::lockfree::spsc_queue; + RingBuffer *ring_buffer; const uint32_t target_id; @@ -360,8 +364,9 @@ PipeWireOutput::Open(AudioFormat &audio_format) interrupted = false; /* allocate a ring buffer of 1 second */ - ring_buffer = new boost::lockfree::spsc_queue(frame_size * - audio_format.sample_rate); + const std::size_t ring_buffer_size = + frame_size * audio_format.sample_rate; + ring_buffer = new RingBuffer(ring_buffer_size); const struct spa_pod *params[1];