diff options
| author | Weian Chen <weian.chen@intel.com> | 2012-02-22 03:26:52 -0500 |
|---|---|---|
| committer | Patrick Tjin <pattjin@google.com> | 2014-07-21 22:02:46 -0700 |
| commit | 747c717e9477b5b660f39a2b737de5e968fa7f9d (patch) | |
| tree | ed7dc9f78715b71b401b1c296825687f454060e2 /videocodec/OMXVideoDecoderBase.h | |
| parent | 22b1d83d8fe1abd7b218049af9a577522aa5d49c (diff) | |
| download | android_hardware_intel_common_omx-components-747c717e9477b5b660f39a2b737de5e968fa7f9d.tar.gz android_hardware_intel_common_omx-components-747c717e9477b5b660f39a2b737de5e968fa7f9d.tar.bz2 android_hardware_intel_common_omx-components-747c717e9477b5b660f39a2b737de5e968fa7f9d.zip | |
omx-components: code cleanup along with one Queue buffer management support
BZ: 24552
code cleanup along with one Queue buffer management support (from Andy)
Signed-off-by: Weian Chen <weian.chen@intel.com>
Change-Id: I75c7f9c6058602b0cd67e1edbc7d5300ca9e0c76
Reviewed-on: http://android.intel.com:8080/36139
Reviewed-by: Chen, Weian <weian.chen@intel.com>
Reviewed-by: Qiu, Junhai <junhai.qiu@intel.com>
Reviewed-by: Ding, Haitao <haitao.ding@intel.com>
Tested-by: Ding, Haitao <haitao.ding@intel.com>
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
Diffstat (limited to 'videocodec/OMXVideoDecoderBase.h')
| -rw-r--r-- | videocodec/OMXVideoDecoderBase.h | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/videocodec/OMXVideoDecoderBase.h b/videocodec/OMXVideoDecoderBase.h index 7d67ed9..49449cc 100644 --- a/videocodec/OMXVideoDecoderBase.h +++ b/videocodec/OMXVideoDecoderBase.h @@ -50,12 +50,12 @@ protected: buffer_retain_t *retains, OMX_U32 numberBuffers); - virtual OMX_ERRORTYPE PreProcessBuffer(OMX_BUFFERHEADERTYPE* buffer); - virtual OMX_ERRORTYPE PreProcessBufferQueue_Locked(); + virtual bool IsAllBufferAvailable(void); + virtual OMX_ERRORTYPE ProcessorPreFillBuffer(OMX_BUFFERHEADERTYPE* buffer); virtual OMX_ERRORTYPE ProcessorPreFreeBuffer(OMX_U32 nPortIndex,OMX_BUFFERHEADERTYPE * pBuffer); virtual OMX_ERRORTYPE PrepareConfigBuffer(VideoConfigBuffer *p); virtual OMX_ERRORTYPE PrepareDecodeBuffer(OMX_BUFFERHEADERTYPE *buffer, buffer_retain_t *retain, VideoDecodeBuffer *p); - virtual OMX_ERRORTYPE FillRenderBuffer(OMX_BUFFERHEADERTYPE **pBuffer, OMX_U32 inportBufferFlags); + virtual OMX_ERRORTYPE FillRenderBuffer(OMX_BUFFERHEADERTYPE **pBuffer, buffer_retain_t *retain, OMX_U32 inportBufferFlags); virtual OMX_ERRORTYPE HandleFormatChange(void); virtual OMX_ERRORTYPE TranslateDecodeStatus(Decode_Status status); virtual OMX_ERRORTYPE MapRawNV12(const VideoRenderBuffer* renderBuffer, OMX_U8 *rawData, OMX_U32& size); @@ -65,6 +65,7 @@ protected: DECLARE_HANDLER(OMXVideoDecoderBase, CapabilityFlags); DECLARE_HANDLER(OMXVideoDecoderBase, NativeBufferUsage); DECLARE_HANDLER(OMXVideoDecoderBase, NativeBuffer); + DECLARE_HANDLER(OMXVideoDecoderBase, NativeBufferMode); private: enum { @@ -77,6 +78,8 @@ private: OUTPORT_MIN_BUFFER_COUNT = 1, OUTPORT_ACTUAL_BUFFER_COUNT = 4, OUTPORT_BUFFER_SIZE = 1382400, + + OUTPORT_NATIVE_BUFFER_COUNT = 10, }; uint32_t mOMXBufferHeaderTypePtrNum; OMX_BUFFERHEADERTYPE *mOMXBufferHeaderTypePtrArray[MAX_GRAPHIC_NUM]; @@ -86,6 +89,7 @@ private: protected: IVideoDecoder *mVideoDecoder; bool mNativeBufferMode; + int mNativeBufferCount; }; #endif /* OMX_VIDEO_DECODER_BASE_H_ */ |
