This conformant component accepts encoded video in a number of
different formats, and decodes it to raw YUV frames.
Incoming frames will be buffered to protect against file system read
latency when playing back, and protect against the media stream
interleaving in the file format. Typically multiple input frames have
to be provided before any output frames are produced.
Port | Index | Notes
|
130 | OMX_IndexParamPortDefinition
| Query / set the port parameters for the encoded video stream.
|
OMX_IndexParamBrcmDataUnit
| Sets the type of data delivery for the encoded data
(OMX_DataUnitCodedPicture or OMX_DataUnitArbitraryStreamSection).
By default the component assumes OMX DataUnitArbitraryStreamSection,
but will also issue a OMX_IndexParamBrcmDataUnit request when tunnelling
the input port to find out the value it should use.
|
OMX_IndexParamNalStreamFormatSupported
| Query the format of NAL units that are supported by the decoder
(OMX_NaluFormatStartCodes or OMX_NaluFormatOneNaluPerBuffer).
This is parameter is currently only relevant for AVC streams.
|
OMX_IndexParamNalStreamFormatSelect
| Sets the format of NAL units that will be presented to the decoder
(OMX_NaluFormatStartCodes or OMX_NaluFormatOneNaluPerBuffer).
By default the decoder will try to guess the type based on the codec configuration
data it has been given. This is parameter is currently only relevant for AVC streams.
|
OMX_IndexParamBrcmVideoDecodeErrorConcealment
| Configures how the codec behaves in case of corrupted frames.
(bStartWithValidFrame will instruct the codec not to start emitting
frames until it has a first non-corrupted frame. This applies both when
starting decoding a stream and after a flush.
|
OMX_IndexParamCodecConfig
| Sets codec configuration data to be used. These bytes may also be
supplied in a correctly flagged buffer.
|
OMX_IndexParamVideoMpeg4
| Query / set the Mpeg4 parameters. This component does not yet support
populating this structure with details of the stream being decoded.
|
OMX_IndexParamVideoAvc
| Query / set the AVC parameters. This component does not yet support
populating this structure with details of the stream being decoded.
|
OMX_IndexParamVideoWmv
| Query / set the WMV parameters. This component does not yet support
populating this structure with details of the stream being decoded.
|
OMX_IndexParamVideoH263
| Query / set the H263 parameters. This component does not yet support
populating this structure with details of the stream being decoded.
|
OMX_IndexParamVideoMpeg2
| Query / set the Mpeg2 parameters. This component does not yet support
populating this structure with details of the stream being decoded.
|
OMX_IndexParamVideoRv
| Query / set the Rv parameters. This component does not yet support
populating this structure with details of the stream being decoded.
|
OMX_IndexParamVideoMvc
| Query / set the Mvc parameters. This component does not yet support
populating this structure with details of the stream being decoded.
|
OMX_IndexParamVideoProfileLevelQuerySupported
| Allows to client to enumerate the various profile and level supported by
the port. Only the highest level is reported for each supported profile.
|
OMX_IndexParamBrcmPixelAspectRatio
| Query / set the pixel aspect ratio of the source content.
|
130 131 | OMX_IndexParamVideoPortFormat
| Query / set the port format. The input port supports a wide range of
compressed video format, the output port supports only raw non-encoded
video.
|
131 | OMX_IndexParamPortDefinition
| Once we have the details of the output format, this will be
populated. Details are acquired via codec-specific headers, which are
either exchanged using the OMX_IndexParamCodecConfig when tunnelling
the input port, or after the first frame has been decoded.
|
OMX_IndexParamImagePoolDisplayFunction
| Used to set up proprietary communication with the next component.
|
OMX_IndexConfigSingleStep
| If nU32 is non-zero, only forward the next nU32 frames.
If nU32 is zero then cancel any previous single stepping
requests and resume the default behaviour. This is typically used to
capture a single frame from a video stream to encode as a still image.
|
OMX_IndexParamBrcmDisableProprietaryTunnels
| Tells the component not to use proprietary communication for its
output port.
|
OMX_IndexParamBrcmPixelAspectRatio
| Query the pixel aspect ratio of the decoded video.
|
OMX_IndexConfigCommonInterlace
| Query the type of interlacing in use in the decoded video.
|
OMX_IndexParamBrcmInterpolateMissingTimestamps
| Configures the codec so that it never outputs a frame without a timestamp
but instead tries to interpolate the value of missing timestamps.
This feature is enabled by default.
Disabling this feature means that the codec will only output frames with
timestamps if the corresponding input buffer also had a timestamp.
|
OMX_IndexParamBrcmSetCodecPerformanceMonitoring
| Configures a codec so that it outputs performance statistics to
the given DECODE_PROGRESS_REPORT_T structure (passed as a pointer).
This structure can then be read by the client to find out where the codec is
at in its processing.
|
OMX_IndexConfigBufferStall
| Set the stall threshold, or query the delay between the last decoded output
frame and the current time.
|
OMX_IndexConfigRequestCallback
| The client can request notification for OMX_IndexConfigBufferStall.
Notification is given when the boolean bStalled changes value.
|
OMX_IndexParamNumOutputChannels
| Query for the number of output channels in the decoded stream. This indicates
whether the stream is 2d (1 channel) or stereoscopic (2 channels).
|
OMX_IndexParamColorSpace
| Retrieve the image colour space of the video produced by this port.
|
| OMX_IndexParamImagePoolExternal
| Query / set the location of an externally allocated image pool to use
for output frames. Defaults to NULL, causing the component to allocate
a pool when active.
|
OMX_IndexParamImagePoolSize
| Sets the size of the image pool to be allocated by the
component. Defaults to 1080p.
|
OMX_IndexParamBrcmFlushCallbackId
| Specifies a user callback for flush notification.
This parameter allows internal users of RIL components to request a callback
when a flush has completed on the output port. This is useful in proprietary
tunnelling mode where there is no other way for the user to know when the
output port has been flushed.
The component will perform a callback with the given nU32 as the
callback id.
|
OMX_IndexConfigRefreshCodec
| Triggers closing and reopening the codec. This will only happen if the codec
is currently loaded. To perform this operation, the bEnabled value should
be set to OMX_TRUE.
|
OMX_IndexParamComponentName
| Sets the component name to be used in internal logging messages.
|
OMX_IndexParamBrcmLazyImagePoolDestroy
| The image pool will be deleted lazily, i.e. we will not wait for the images
to be returned from the pool, but instead rely on the image pool tidying itself
up automatically when all references are released.
|
OMX_IndexParamBrcmExtraBuffers
| Sets the number of buffers to allocate beyond the number determined by the codec.
This defaults to 2 (one on the display, one in the video scheduler) but it may
sometimes be necessary to increase this.
|
OMX_IndexConfigBrcmPoolMemAllocSize
| Query for the size of the allocated image pool.
|
OMX_IndexParamBrcmAlignHoriz
| Query / set the horizonal alignment of the output buffer to be a given multiple of bytes in width.
Setting this to anything other than the default of 32 may have a negative impact of performance
because the input buffer may need to be re-pitched before it is encoded. Supported values
are 32 or 1 (no padding).
|
OMX_IndexParamBrcmAlignVert
| Query / set the vertical alignment of the output buffer to be a given multiple of rows in height.
Setting this to anything other than the default of 16 may have a negative impact of performance
because the input buffer may need to be re-pitched before it is encoded. Supported values
are 16 or 1 (no padding).
|
OMX_IndexParamBrcmVideoTimestampFifo
| Query / set the timestamp fifo mode. When enabled, the timestamp fifo mode will change the way
incoming timestamps are associated with output images. In this mode the incoming timestamps
get used without re-ordering on output images.
|
OMX_IndexParamBrcmVideoDrmProtectBuffer
| DRM buffer protection.
Query to request that a memory buffer be allocated for protected video decode, and the fields
in a shared memory region be filled in to request protection from the hardware. Set to indicate
that the previous protection request has been processed.
|
OMX_IndexParamBrcmMaxNumCallbacks
| Query / set a limit to the number of frames that can be stored inside the codec.
|
OMX_IndexParamBrcmVideoDecodeConfigVD3
| Codec specific configuration.
|