media/hardware/HardwareAPI.h: Added PrepareForAdaptivePlaybackParams

This is the param struct used by stagefright to notify codec that
the playback may include resolution changes, so that it can prepare
accordingly to avoid port reconfiguration.

Change-Id: I64e53b7ebf74c4f9d07cc9fe0cd65be55f666afe
Signed-off-by: Lajos Molnar <lajos@google.com>
Related-to-bug: 7093648
This commit is contained in:
Lajos Molnar 2013-05-03 13:22:13 -07:00
parent 96a7dc08f2
commit dde86f7b18

View File

@ -89,6 +89,31 @@ struct VideoDecoderOutputMetaData {
buffer_handle_t pHandle; buffer_handle_t pHandle;
}; };
// A pointer to this struct is passed to OMX_SetParameter() when the extension
// index "OMX.google.android.index.prepareForAdaptivePlayback" is given.
//
// This method is used to signal a video decoder, that the user has requested
// seamless resolution change support (if bEnable is set to OMX_TRUE).
// nMaxFrameWidth and nMaxFrameHeight are the dimensions of the largest
// anticipated frames in the video. If bEnable is OMX_FALSE, no resolution
// change is expected, and the nMaxFrameWidth/Height fields are unused.
//
// If the decoder supports dynamic output buffers, it may ignore this
// request. Otherwise, it shall request resources in such a way so that it
// avoids full port-reconfiguration (due to output port-definition change)
// during resolution changes.
//
// DO NOT USE THIS STRUCTURE AS IT WILL BE REMOVED. INSTEAD, IMPLEMENT
// METADATA SUPPORT FOR VIDEO DECODERS.
struct PrepareForAdaptivePlaybackParams {
OMX_U32 nSize;
OMX_VERSIONTYPE nVersion;
OMX_U32 nPortIndex;
OMX_BOOL bEnable;
OMX_U32 nMaxFrameWidth;
OMX_U32 nMaxFrameHeight;
};
// A pointer to this struct is passed to OMX_SetParameter when the extension // A pointer to this struct is passed to OMX_SetParameter when the extension
// index for the 'OMX.google.android.index.useAndroidNativeBuffer' extension is // index for the 'OMX.google.android.index.useAndroidNativeBuffer' extension is
// given. This call will only be performed if a prior call was made with the // given. This call will only be performed if a prior call was made with the