1 /* GPL-2.0 WITH Linux-syscall-note OR Apache 2.0 */ 2 /* Copyright (c) 2021 Fuzhou Rockchip Electronics Co., Ltd */ 3 4 5 #ifndef INCLUDE_RT_MPI_RK_MPI_AVS_H_ 6 #define INCLUDE_RT_MPI_RK_MPI_AVS_H_ 7 8 #include "rk_common.h" 9 #include "rk_comm_video.h" 10 #include "rk_comm_mb.h" 11 #include "rk_comm_avs.h" 12 13 #ifdef __cplusplus 14 #if __cplusplus 15 extern "C" { 16 #endif 17 #endif /* __cplusplus */ 18 19 /* Group Settings */ 20 RK_S32 RK_MPI_AVS_CreateGrp(AVS_GRP AVSGrp, const AVS_GRP_ATTR_S *pstGrpAttr); 21 RK_S32 RK_MPI_AVS_DestroyGrp(AVS_GRP AVSGrp); 22 RK_S32 RK_MPI_AVS_StartGrp(AVS_GRP AVSGrp); 23 RK_S32 RK_MPI_AVS_StopGrp(AVS_GRP AVSGrp); 24 RK_S32 RK_MPI_AVS_ResetGrp(AVS_GRP AVSGrp); 25 RK_S32 RK_MPI_AVS_GetGrpAttr(AVS_GRP AVSGrp, AVS_GRP_ATTR_S *pstGrpAttr); 26 RK_S32 RK_MPI_AVS_SetGrpAttr(AVS_GRP AVSGrp, const AVS_GRP_ATTR_S *pstGrpAttr); 27 28 /* Pipe Settings */ 29 RK_S32 RK_MPI_AVS_SendPipeFrame(AVS_GRP AVSGrp, AVS_PIPE AVSPipe, 30 const VIDEO_FRAME_INFO_S *pstVideoFrame, RK_S32 s32MilliSec); 31 RK_S32 RK_MPI_AVS_GetPipeFrame(AVS_GRP AVSGrp, AVS_PIPE AVSPipe, 32 VIDEO_FRAME_INFO_S *pstVideoFrame); 33 RK_S32 RK_MPI_AVS_ReleasePipeFrame(AVS_GRP AVSGrp, AVS_PIPE AVSPipe, 34 const VIDEO_FRAME_INFO_S *pstVideoFrame); 35 36 /* Channel Settings */ 37 RK_S32 RK_MPI_AVS_SetChnAttr(AVS_GRP AVSGrp, AVS_CHN AVSChn, const AVS_CHN_ATTR_S *pstChnAttr); 38 RK_S32 RK_MPI_AVS_GetChnAttr(AVS_GRP AVSGrp, AVS_CHN AVSChn, AVS_CHN_ATTR_S *pstChnAttr); 39 RK_S32 RK_MPI_AVS_EnableChn(AVS_GRP AVSGrp, AVS_CHN AVSChn); 40 RK_S32 RK_MPI_AVS_DisableChn(AVS_GRP AVSGrp, AVS_CHN AVSChn); 41 RK_S32 RK_MPI_AVS_GetChnFrame(AVS_GRP AVSGrp, AVS_CHN AVSChn, 42 VIDEO_FRAME_INFO_S *pstVideoFrame, RK_S32 s32MilliSec); 43 RK_S32 RK_MPI_AVS_ReleaseChnFrame(AVS_GRP AVSGrp, AVS_CHN AVSChn, 44 const VIDEO_FRAME_INFO_S *pstVideoFrame); 45 RK_S32 RK_MPI_AVS_SetModParam(const AVS_MOD_PARAM_S *pstModParam); 46 RK_S32 RK_MPI_AVS_GetModParam(AVS_MOD_PARAM_S *pstModParam); 47 48 RK_S32 RK_MPI_AVS_GetFinalLut(AVS_GRP AVSGrp, AVS_FINAL_LUT_S *pstFinalLut); 49 50 #ifdef __cplusplus 51 #if __cplusplus 52 } 53 #endif 54 #endif /* __cplusplus */ 55 56 #endif /* INCLUDE_RT_MPI_RK_MPI_AVS_H_ */ 57