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

130
video_decode
131

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.

The output format may be set to RGB565 using OMX_IndexParamPortDefinition; in this case proprietary communication will not be used, and the image data will be converted on the fly.

PortIndexNotes
130OMX_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 131OMX_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.
131OMX_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.