diff options
Diffstat (limited to 'videocodec/OMXVideoDecoderBase.h')
| -rw-r--r-- | videocodec/OMXVideoDecoderBase.h | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/videocodec/OMXVideoDecoderBase.h b/videocodec/OMXVideoDecoderBase.h index 7c5db5e..2262220 100644 --- a/videocodec/OMXVideoDecoderBase.h +++ b/videocodec/OMXVideoDecoderBase.h @@ -23,6 +23,10 @@ #include "VideoDecoderInterface.h" #include "VideoDecoderHost.h" +static const char* VA_VED_RAW_MIME_TYPE = "video/x-raw-vaved"; +static const uint32_t VA_VED_COLOR_FORMAT = 0x20; + + class OMXVideoDecoderBase : public OMXComponentCodecBase { public: OMXVideoDecoderBase(); @@ -42,13 +46,16 @@ protected: //virtual OMX_ERRORTYPE ProcessorResume(void); virtual OMX_ERRORTYPE ProcessorFlush(OMX_U32 portIndex); virtual OMX_ERRORTYPE ProcessorProcess( - OMX_BUFFERHEADERTYPE **buffers, + OMX_BUFFERHEADERTYPE ***pBuffers, buffer_retain_t *retains, OMX_U32 numberBuffers); + virtual OMX_ERRORTYPE PreProcessBuffer(OMX_BUFFERHEADERTYPE* buffer); + virtual OMX_ERRORTYPE PreProcessBufferQueue_Locked(); + 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 *buffer, OMX_U32 inportBufferFlags); + virtual OMX_ERRORTYPE FillRenderBuffer(OMX_BUFFERHEADERTYPE **pBuffer, 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); @@ -56,7 +63,8 @@ protected: virtual OMX_ERRORTYPE BuildHandlerList(void); DECLARE_HANDLER(OMXVideoDecoderBase, ParamVideoPortFormat); DECLARE_HANDLER(OMXVideoDecoderBase, CapabilityFlags); - DECLARE_HANDLER(OMXVideoDecoderBase, BufferIDMode); + DECLARE_HANDLER(OMXVideoDecoderBase, NativeBufferUsage); + DECLARE_HANDLER(OMXVideoDecoderBase, NativeBuffer); private: enum { @@ -70,10 +78,14 @@ private: OUTPORT_ACTUAL_BUFFER_COUNT = 4, OUTPORT_BUFFER_SIZE = 1382400, }; + uint32_t mOMXBufferHeaderTypePtrNum; + OMX_BUFFERHEADERTYPE *mOMXBufferHeaderTypePtrArray[MAX_GRAPHIC_NUM]; + uint32_t mGraphicBufferStride; + uint32_t mGraphicBuffercolorformat; protected: IVideoDecoder *mVideoDecoder; - bool mBufferIDMode; + bool mNativeBufferMode; }; #endif /* OMX_VIDEO_DECODER_BASE_H_ */ |
