| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- #ifndef VENC_DRV_IF_DEP_H
- #define VENC_DRV_IF_DEP_H
- /*=============================================================================
- * Include Files
- *===========================================================================*/
- #include "val_types_private.h"
- #include "vcodec_if_v2.h"
- #ifdef __cplusplus
- extern "C" {
- #endif
- /*=============================================================================
- * Type definition
- *===========================================================================*/
- /**
- * @par Structure
- * mhalVdoDrv_t
- * @par Description
- * This is a structure which store common video enc driver information
- */
- typedef struct mhalVdoDrv_s {
- VAL_VOID_T *prCodecHandle;
- VAL_UINT32_T u4EncodedFrameCount;
- VCODEC_ENC_CALLBACK_T rCodecCb;
- VIDEO_ENC_API_T *prCodecAPI;
- VENC_BS_T pBSBUF;
- VCODEC_ENC_BUFFER_INFO_T EncoderInputParamNC;
- VENC_DRV_PARAM_BS_BUF_T BSout;
- VENC_HYBRID_ENCSETTING rVencSetting;
- VAL_UINT8_T *ptr;
- } mhalVdoDrv_t;
- typedef struct __VENC_HANDLE_T {
- VAL_HANDLE_T hHalHandle; /* /< HAL data. */
- VAL_HANDLE_T vdriver_Handle; /* /< for MMSYS power on/off */
- VAL_MEMORY_T rHandleMem; /* /< Save handle memory information to be used in release. */
- VAL_BOOL_T bFirstDecoded; /* / < already pass first video data to codec */
- VAL_BOOL_T bHeaderPassed; /* / < already pass video header to codec */
- VAL_BOOL_T bFlushAll;
- VAL_MEMORY_T HeaderBuf;
- VAL_HANDLE_T hCodec;
- /* DRIVER_HANDLER_T hDrv; */
- VAL_UINT32_T CustomSetting;
- VCODEC_MEMORY_TYPE_T rVideoDecMemType;
- VAL_UINT32_T nYUVBufferIndex;
- VCODEC_OPEN_SETTING_T codecOpenSetting;
- mhalVdoDrv_t rMhalVdoDrv;
- VAL_MEMORY_T bs_driver_workingmem;
- /* Morris Yang 20110411 [ */
- VENC_DRV_VIDEO_FORMAT_T CodecFormat;
- VAL_VOID_T *prExtraData; /* /< Driver private data pointer. */
- VAL_MEMORY_T rExtraDataMem; /* /< Save extra data memory information to be used in release. */
- /* ] */
- VAL_UINT32_T nOmxTids;
- #if 1 /* defined(MT6572) //VCODEC_MULTI_THREAD */
- /* Jackal Chen [ */
- VAL_VOID_T *pDrvModule; /* /< used for dlopen and dlclose */
- /* ] */
- #endif
- VIDEO_ENC_WRAP_HANDLE_T hWrapper;
- } VENC_HANDLE_T;
- #ifdef __cplusplus
- }
- #endif
- #endif /* VENC_DRV_IF_DEP_H */
|