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.
|