class OutputPipelineImpl

Defined at line 53 of file ../../src/media/audio/audio_core/output_pipeline.h

Public Methods

void OutputPipelineImpl (const PipelineConfig & config, const VolumeCurve & volume_curve, EffectsLoaderV2 * effects_loader_v2, uint32_t max_block_size_frames, TimelineFunction ref_time_to_frac_presentation_frame, std::shared_ptr<Clock> audio_clock, Mixer::Resampler sampler)

Creates an |OutputPipeline| based on the specification in |config|. The pipeline will

ultimately produce output frames via |ReadLock| in the |output_format| requested.

|max_block_size_frames| is the largest contiguous region that may be returned from

|ReadLock|. If a caller requests a frame region of more that |max_block_size_frames|, then

the pipeline will truncate this to only |max_block_size_frames| and the caller will have to

call |ReadLock| again to mix the subsequent frames.

|ref_clock_to_fractional_frame| is a timeline function that will compute the output frame

number (in fixed point format with 13 bits of fractional precision) based on a reference

timestamp.

The |sampler| is optionally used to select the type of sampler to be used when joining

mix stages together.

Defined at line 36 of file ../../src/media/audio/audio_core/output_pipeline.cc

std::shared_ptr<Mixer> AddInput (std::shared_ptr<ReadableStream> stream, const StreamUsage & usage, std::optional<float> initial_dest_gain_db, Mixer::Resampler sampler_hint)

Defined at line 60 of file ../../src/media/audio/audio_core/output_pipeline.cc

void RemoveInput (const ReadableStream & stream)

Defined at line 69 of file ../../src/media/audio/audio_core/output_pipeline.cc

void ~OutputPipelineImpl ()

Defined at line 74 of file ../../src/media/audio/audio_core/output_pipeline.h

std::shared_ptr<ReadableRingBuffer> dup_loopback ()

|media::audio::OutputPipeline|

Defined at line 77 of file ../../src/media/audio/audio_core/output_pipeline.h

fpromise::result<void, fuchsia::media::audio::UpdateEffectError> UpdateEffect (const std::string & instance_name, const std::string & config)

Defined at line 78 of file ../../src/media/audio/audio_core/output_pipeline.cc

TimelineFunctionSnapshot ref_time_to_frac_presentation_frame ()

|media::audio::ReadableStream|

Defined at line 92 of file ../../src/media/audio/audio_core/output_pipeline.h

void SetPresentationDelay (zx::duration external_delay)

Defined at line 97 of file ../../src/media/audio/audio_core/output_pipeline.h

std::shared_ptr<Clock> reference_clock ()

Defined at line 105 of file ../../src/media/audio/audio_core/output_pipeline.h