|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#ifndef __RK_MPI_CMD_H__ |
|
#define __RK_MPI_CMD_H__ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#define CMD_MODULE_ID_MASK (0x00F00000) |
|
#define CMD_MODULE_OSAL (0x00100000) |
|
#define CMD_MODULE_MPP (0x00200000) |
|
#define CMD_MODULE_CODEC (0x00300000) |
|
#define CMD_MODULE_HAL (0x00400000) |
|
|
|
#define CMD_CTX_ID_MASK (0x000F0000) |
|
#define CMD_CTX_ID_DEC (0x00010000) |
|
#define CMD_CTX_ID_ENC (0x00020000) |
|
#define CMD_CTX_ID_ISP (0x00030000) |
|
|
|
|
|
#define CMD_CFG_ID_MASK (0x0000FF00) |
|
|
|
|
|
#define CMD_STATE_OPS (0x00000100) |
|
|
|
|
|
#define CMD_DEC_CFG_ALL (0x00000000) |
|
#define CMD_DEC_QUERY (0x00000100) |
|
#define CMD_DEC_CFG (0x00000200) |
|
|
|
|
|
#define CMD_ENC_CFG_ALL (0x00000000) |
|
#define CMD_ENC_QUERY (0x00000100) |
|
#define CMD_ENC_CFG_RC_API (0x00000200) |
|
|
|
#define CMD_ENC_CFG_MISC (0x00008000) |
|
#define CMD_ENC_CFG_SPLIT (0x00008100) |
|
#define CMD_ENC_CFG_REF (0x00008200) |
|
#define CMD_ENC_CFG_ROI (0x00008300) |
|
#define CMD_ENC_CFG_OSD (0x00008400) |
|
|
|
typedef enum { |
|
MPP_OSAL_CMD_BASE = CMD_MODULE_OSAL, |
|
MPP_OSAL_CMD_END, |
|
|
|
MPP_CMD_BASE = CMD_MODULE_MPP, |
|
MPP_ENABLE_DEINTERLACE, |
|
MPP_SET_INPUT_BLOCK, |
|
MPP_SET_INTPUT_BLOCK_TIMEOUT, |
|
MPP_SET_OUTPUT_BLOCK, |
|
MPP_SET_OUTPUT_BLOCK_TIMEOUT, |
|
|
|
|
|
|
|
|
|
|
|
|
|
MPP_SET_INPUT_TIMEOUT, |
|
MPP_SET_OUTPUT_TIMEOUT, |
|
MPP_SET_DISABLE_THREAD, |
|
|
|
MPP_STATE_CMD_BASE = CMD_MODULE_MPP | CMD_STATE_OPS, |
|
MPP_START, |
|
MPP_STOP, |
|
MPP_PAUSE, |
|
MPP_RESUME, |
|
|
|
MPP_CMD_END, |
|
|
|
MPP_CODEC_CMD_BASE = CMD_MODULE_CODEC, |
|
MPP_CODEC_GET_FRAME_INFO, |
|
MPP_CODEC_CMD_END, |
|
|
|
MPP_DEC_CMD_BASE = CMD_MODULE_CODEC | CMD_CTX_ID_DEC, |
|
MPP_DEC_SET_FRAME_INFO, |
|
MPP_DEC_SET_EXT_BUF_GROUP, |
|
MPP_DEC_SET_INFO_CHANGE_READY, |
|
MPP_DEC_SET_PRESENT_TIME_ORDER, |
|
MPP_DEC_SET_PARSER_SPLIT_MODE, |
|
MPP_DEC_SET_PARSER_FAST_MODE, |
|
MPP_DEC_GET_STREAM_COUNT, |
|
MPP_DEC_GET_VPUMEM_USED_COUNT, |
|
MPP_DEC_SET_VC1_EXTRA_DATA, |
|
MPP_DEC_SET_OUTPUT_FORMAT, |
|
MPP_DEC_SET_DISABLE_ERROR, |
|
MPP_DEC_SET_IMMEDIATE_OUT, |
|
MPP_DEC_SET_ENABLE_DEINTERLACE, |
|
MPP_DEC_SET_ENABLE_FAST_PLAY, |
|
MPP_DEC_SET_DISABLE_THREAD, |
|
MPP_DEC_SET_MAX_USE_BUFFER_SIZE, |
|
MPP_DEC_SET_ENABLE_MVC, |
|
|
|
MPP_DEC_CMD_QUERY = CMD_MODULE_CODEC | CMD_CTX_ID_DEC | CMD_DEC_QUERY, |
|
|
|
MPP_DEC_QUERY, |
|
|
|
CMD_DEC_CMD_CFG = CMD_MODULE_CODEC | CMD_CTX_ID_DEC | CMD_DEC_CFG, |
|
MPP_DEC_SET_CFG, |
|
MPP_DEC_GET_CFG, |
|
|
|
MPP_DEC_CMD_END, |
|
|
|
MPP_ENC_CMD_BASE = CMD_MODULE_CODEC | CMD_CTX_ID_ENC, |
|
|
|
MPP_ENC_SET_CFG, |
|
MPP_ENC_GET_CFG, |
|
MPP_ENC_SET_PREP_CFG, |
|
MPP_ENC_GET_PREP_CFG, |
|
MPP_ENC_SET_RC_CFG, |
|
MPP_ENC_GET_RC_CFG, |
|
MPP_ENC_SET_CODEC_CFG, |
|
MPP_ENC_GET_CODEC_CFG, |
|
|
|
MPP_ENC_SET_IDR_FRAME, |
|
MPP_ENC_SET_OSD_LEGACY_0, |
|
MPP_ENC_SET_OSD_LEGACY_1, |
|
MPP_ENC_SET_OSD_LEGACY_2, |
|
MPP_ENC_GET_HDR_SYNC, |
|
MPP_ENC_GET_EXTRA_INFO, |
|
MPP_ENC_SET_SEI_CFG, |
|
MPP_ENC_GET_SEI_DATA, |
|
MPP_ENC_PRE_ALLOC_BUFF, |
|
MPP_ENC_SET_QP_RANGE, |
|
MPP_ENC_SET_ROI_CFG, |
|
MPP_ENC_SET_CTU_QP, |
|
|
|
MPP_ENC_CMD_QUERY = CMD_MODULE_CODEC | CMD_CTX_ID_ENC | CMD_ENC_QUERY, |
|
|
|
MPP_ENC_QUERY, |
|
|
|
|
|
MPP_ENC_CFG_RC_API = CMD_MODULE_CODEC | CMD_CTX_ID_ENC | CMD_ENC_CFG_RC_API, |
|
|
|
|
|
|
|
|
|
MPP_ENC_GET_RC_API_ALL = MPP_ENC_CFG_RC_API + 1, |
|
|
|
|
|
|
|
|
|
MPP_ENC_GET_RC_API_BY_TYPE = MPP_ENC_CFG_RC_API + 2, |
|
|
|
|
|
|
|
|
|
MPP_ENC_SET_RC_API_CFG = MPP_ENC_CFG_RC_API + 3, |
|
|
|
|
|
|
|
|
|
MPP_ENC_GET_RC_API_CURRENT = MPP_ENC_CFG_RC_API + 4, |
|
|
|
|
|
|
|
|
|
MPP_ENC_SET_RC_API_CURRENT = MPP_ENC_CFG_RC_API + 5, |
|
|
|
MPP_ENC_CFG_MISC = CMD_MODULE_CODEC | CMD_CTX_ID_ENC | CMD_ENC_CFG_MISC, |
|
MPP_ENC_SET_HEADER_MODE, |
|
MPP_ENC_GET_HEADER_MODE, |
|
|
|
MPP_ENC_CFG_SPLIT = CMD_MODULE_CODEC | CMD_CTX_ID_ENC | CMD_ENC_CFG_SPLIT, |
|
MPP_ENC_SET_SPLIT, |
|
MPP_ENC_GET_SPLIT, |
|
|
|
MPP_ENC_CFG_REF = CMD_MODULE_CODEC | CMD_CTX_ID_ENC | CMD_ENC_CFG_REF, |
|
MPP_ENC_SET_REF_CFG, |
|
|
|
MPP_ENC_CFG_OSD = CMD_MODULE_CODEC | CMD_CTX_ID_ENC | CMD_ENC_CFG_OSD, |
|
MPP_ENC_SET_OSD_PLT_CFG, |
|
MPP_ENC_GET_OSD_PLT_CFG, |
|
MPP_ENC_SET_OSD_DATA_CFG, |
|
|
|
MPP_ENC_CMD_END, |
|
|
|
MPP_ISP_CMD_BASE = CMD_MODULE_CODEC | CMD_CTX_ID_ISP, |
|
MPP_ISP_CMD_END, |
|
|
|
MPP_HAL_CMD_BASE = CMD_MODULE_HAL, |
|
MPP_HAL_CMD_END, |
|
|
|
MPI_CMD_BUTT, |
|
} MpiCmd; |
|
|
|
#include "rk_vdec_cmd.h" |
|
#include "rk_vdec_cfg.h" |
|
#include "rk_venc_cmd.h" |
|
#include "rk_venc_cfg.h" |
|
#include "rk_venc_ref.h" |
|
|
|
#endif |
|
|