template <>
class WireSyncBufferClientImpl
Defined at line 319 of file fidling/gen/sdk/fidl/fuchsia.audio.effects/fuchsia.audio.effects/cpp/fidl/fuchsia.audio.effects/cpp/wire_messaging.h
Public Methods
::fidl::WireUnownedResult< ::fuchsia_audio_effects::Processor::Process> Process (uint64_t num_frames, ::fuchsia_audio_effects::wire::ProcessOptions options)
Processes the given number of frames. This will consume `num_frames` from
each `ProcessorConfiguration.inputs[i]` and produce an equivalent number of
frames in each `ProcessorConfiguration.outputs[i]`.
## Execution model
All inputs and outputs must have identical frame rates. This simplifies
the problem of matching input and output frames, as described below.
At each call to `Process`, the effect collects audio from a set of input buffers
and produces a set of output buffers. The input buffers should be aligned by
time. That means: the first frame in each input buffer, input[i].buffer[0],
should have the same presentation time as all other frames input[j].buffer[0].
Output buffers with non-zero latency may be shifted relative to input buffers.
For each output k, input frame 0 has the same presentation time as the frame at
output[k].buffer[output[k].latency_frames].
+ request `num_frames` The number of frames to process.
+ request `options` Extra options.
- response `per_stage_metrics `Metrics about this process call, possibly
subdivided into multiple stages.
* error A zx.Status value indicating success or failure.
Caller provides the backing storage for FIDL message via an argument to `.buffer()`.