class SimplePacketQueueProducerStage
Defined at line 29 of file ../../src/media/audio/services/mixer/mix/simple_packet_queue_producer_stage.h
A ProducerStage driven by a packet queue. This is a "simple" producer because it does not handle
Start or Stop commands. This is intended to be embedded within a ProducerStage, but can also be
used in isolation in tests.
Public Methods
void SimplePacketQueueProducerStage (Args args)
Defined at line 18 of file ../../src/media/audio/services/mixer/mix/simple_packet_queue_producer_stage.cc
void UpdatePresentationTimeToFracFrame (std::optional<TimelineFunction> f)
Defined at line 34 of file ../../src/media/audio/services/mixer/mix/simple_packet_queue_producer_stage.cc
bool empty ()
Reports whether the queue is empty or not.
REQUIRED: `Args::command_queue` was not specified.
Defined at line 24 of file ../../src/media/audio/services/mixer/mix/simple_packet_queue_producer_stage.cc
void push (PacketView packet, zx::eventpair fence)
Pushes a `packet` into the queue. `fence` will be closed after the packet is fully consumed.
REQUIRED: `Args::command_queue` was not specified.
Defined at line 29 of file ../../src/media/audio/services/mixer/mix/simple_packet_queue_producer_stage.cc
void AddSource (PipelineStagePtr source, AddSourceOptions options)
Implements `PipelineStage`.
Defined at line 74 of file ../../src/media/audio/services/mixer/mix/simple_packet_queue_producer_stage.h
void RemoveSource (PipelineStagePtr source)
Defined at line 77 of file ../../src/media/audio/services/mixer/mix/simple_packet_queue_producer_stage.h
Protected Methods
void AdvanceSelfImpl (Fixed frame)
Implements `PipelineStage`.
Defined at line 39 of file ../../src/media/audio/services/mixer/mix/simple_packet_queue_producer_stage.cc
std::optional<Packet> ReadImpl (MixJobContext & ctx, Fixed start_frame, int64_t frame_count)
Defined at line 51 of file ../../src/media/audio/services/mixer/mix/simple_packet_queue_producer_stage.cc
void AdvanceSourcesImpl (MixJobContext & ctx, Fixed frame)
Defined at line 95 of file ../../src/media/audio/services/mixer/mix/simple_packet_queue_producer_stage.h