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

Records