audio_mixer

Top
audio_capture audio_decode audio_encode audio_lowpower audio_mixer audio_processor audio_render audio_splitter
image_decode image_encode image_fx resize source transition
clock null_sink text_scheduler visualisation
camera egl_render hvs isp rawcam video_decode video_encode video_render video_scheduler video_splitter
Custom Index Metadata
| # OMX.broadcom.audio_mixer
230
232
233
234
235
| audio_mixer |
231
The conformant audio_mixer component accepts raw PCM audio frames from enabled input ports sums these onto frames emitted from the output port. If necessary, input data is converted to match the PCM configuration of the output port at the mixdown stage (see the supported PCM formats). The mixer will perform sampling rate conversions, bitrate scaling and channel downmixing. However, at the moment, downmixing from 8 channels to 4 channels is not supported and only stereo input can be resampled (SW-3833). The mixer provides a clock input port that can be used to ensure constant rate output regardless of input ports that fail to provide buffers in time to keep up with the output port frame rate. The mixer output port can buffer up mixed output to be used for gapless and crossfaded audio track changes between input ports.
Port | Index | Notes
231 232 233 234 235 | `OMX_IndexParamPortDefinition` | Query / set the port parameters for the audio input/output streams. The audio format must not be encoded. `nBufferSize` must be a multiple of 32 and and equal to or larger than 1024. `nBufferAlignment` must be equal to or larger than 32.
`OMX_IndexParamAudioPcm` | `nChannels` must be 1, 2, 4, or 8. 5.1 audio can be carried inside 8 channels, with the last two channels advertised as blank. `eNumData` must be `OMX_NumericalDataSigned`. `eEndian` must be `OMX_EndianLittle`. `bInterleaved` must be `OMX_TRUE`. `nBitPerSample` must be 16 or 32. `nSamplingRate` must be less or equal to 96000. `ePCMMode` must be `OMX_AUDIO_PCMModeLinear`.
`OMX_IndexParamAudioPortFormat` | Query / set the audio port used on the port. Audio ports currently only support PCM format audio.
`OMX_IndexConfigAudioMute` | Query / set the mute status of the port.
232 233 234 235 | `OMX_IndexConfigAudioVolume` | Query / set the volume control for the input ports. This controls the software volume scaling that occurs prior to mixdown.
`OMX_IndexParamBrcmTimeScale` | Query / set the speed control for the input ports. This controls the dynamic resampling rate. Parameter is a 16.16 fixed point scale factor.
`OMX_IndexConfigBrcmAudioTrackChangeControl` | Configure a gapless or an overlapping crossfaded track change from one input port to another using the output buffering mechanism in the mixer.
`OMX_IndexConfigBrcmAudioTrackChangeCount` | Query the number of times the port has completed a track change. A track change is complete for an input port when a buffer flagged with `OMX_BUFFERFLAG_EOS` has been fully mixed into output port buffers as is ready to be returned or flushed from the input port. This configuration value can be monitored via `OMX_IndexConfigRequestCallback`.
`OMX_IndexConfigRequestCallback` | Set whether we enable a callback to the client when the value of an index structure changes. Only supported for the index `OMX_IndexConfigBrcmAudioTrackChangeCount`.
`OMX_IndexConfigBrcmAudioDownmixCoefficients` | Query / set downmix coefficients.
`OMX_IndexConfigBrcmAudioDownmixCoefficients8x8` | Query / set arbitrary downmix coefficients.
230 | `OMX_IndexParamPortDefinition` | Query / set the port parameter for the clock port. Only the number of buffers can be modified on this port.
`OMX_IndexParamOtherPortFormat` | Query / set the port format for this clock port. This port currently only supports the time format.
| `OMX_IndexConfigBrcmMinimumProcessingLatency` | Query/set the difference between the actual media time and when the mixer receives request fulfillments for media time requests.