1*4882a593Smuzhiyun /* GPL-2.0 WITH Linux-syscall-note OR Apache 2.0 */ 2*4882a593Smuzhiyun /* Copyright (c) 2021 Fuzhou Rockchip Electronics Co., Ltd */ 3*4882a593Smuzhiyun 4*4882a593Smuzhiyun #ifndef INCLUDE_RT_MPI_MPI_AO_H_ 5*4882a593Smuzhiyun #define INCLUDE_RT_MPI_MPI_AO_H_ 6*4882a593Smuzhiyun 7*4882a593Smuzhiyun #include "rk_common.h" 8*4882a593Smuzhiyun #include "rk_comm_aio.h" 9*4882a593Smuzhiyun 10*4882a593Smuzhiyun #ifdef __cplusplus 11*4882a593Smuzhiyun #if __cplusplus 12*4882a593Smuzhiyun extern "C" { 13*4882a593Smuzhiyun #endif 14*4882a593Smuzhiyun #endif /* __cplusplus */ 15*4882a593Smuzhiyun 16*4882a593Smuzhiyun 17*4882a593Smuzhiyun RK_S32 RK_MPI_AO_SetPubAttr(AUDIO_DEV AoDevId, const AIO_ATTR_S *pstAttr); 18*4882a593Smuzhiyun RK_S32 RK_MPI_AO_GetPubAttr(AUDIO_DEV AoDevId, AIO_ATTR_S *pstAttr); 19*4882a593Smuzhiyun RK_S32 RK_MPI_AO_Enable(AUDIO_DEV AoDevId); 20*4882a593Smuzhiyun RK_S32 RK_MPI_AO_Disable(AUDIO_DEV AoDevId); 21*4882a593Smuzhiyun RK_S32 RK_MPI_AO_EnableChn(AUDIO_DEV AoDevId, AO_CHN AoChn); 22*4882a593Smuzhiyun RK_S32 RK_MPI_AO_DisableChn(AUDIO_DEV AoDevId, AO_CHN AoChn); 23*4882a593Smuzhiyun RK_S32 RK_MPI_AO_SendFrame(AUDIO_DEV AoDevId, AO_CHN AoChn, const AUDIO_FRAME_S *pstData, RK_S32 s32MilliSec); 24*4882a593Smuzhiyun RK_S32 RK_MPI_AO_EnableReSmp(AUDIO_DEV AoDevId, AO_CHN AoChn, AUDIO_SAMPLE_RATE_E enInSampleRate); 25*4882a593Smuzhiyun RK_S32 RK_MPI_AO_DisableReSmp(AUDIO_DEV AoDevId, AO_CHN AoChn); 26*4882a593Smuzhiyun RK_S32 RK_MPI_AO_PauseChn(AUDIO_DEV AoDevId, AO_CHN AoChn); 27*4882a593Smuzhiyun RK_S32 RK_MPI_AO_ResumeChn(AUDIO_DEV AoDevId, AO_CHN AoChn); 28*4882a593Smuzhiyun RK_S32 RK_MPI_AO_ClearChnBuf(AUDIO_DEV AoDevId, AO_CHN AoChn); 29*4882a593Smuzhiyun RK_S32 RK_MPI_AO_QueryChnStat(AUDIO_DEV AoDevId, AO_CHN AoChn, AO_CHN_STATE_S *pstStatus); 30*4882a593Smuzhiyun RK_S32 RK_MPI_AO_SetTrackMode(AUDIO_DEV AoDevId, AUDIO_TRACK_MODE_E enTrackMode); 31*4882a593Smuzhiyun RK_S32 RK_MPI_AO_GetTrackMode(AUDIO_DEV AoDevId, AUDIO_TRACK_MODE_E* penTrackMode); 32*4882a593Smuzhiyun RK_S32 RK_MPI_AO_SetVolumeCurve(AUDIO_DEV AoDevId, AUDIO_VOLUME_CURVE_S *pvolumeCurve); 33*4882a593Smuzhiyun RK_S32 RK_MPI_AO_SetVolume(AUDIO_DEV AoDevId, RK_S32 s32VolumeDb); 34*4882a593Smuzhiyun RK_S32 RK_MPI_AO_GetVolume(AUDIO_DEV AoDevId, RK_S32 *ps32VolumeDb); 35*4882a593Smuzhiyun RK_S32 RK_MPI_AO_SetMute(AUDIO_DEV AoDevId, RK_BOOL bEnable, const AUDIO_FADE_S *pstFade); 36*4882a593Smuzhiyun RK_S32 RK_MPI_AO_GetMute(AUDIO_DEV AoDevId, RK_BOOL *pbEnable, AUDIO_FADE_S *pstFade); 37*4882a593Smuzhiyun RK_S32 RK_MPI_AO_SetChnAttr(AUDIO_DEV AoDevId, AO_CHN AoChn, const AO_CHN_ATTR_S *pstAttrs); 38*4882a593Smuzhiyun RK_S32 RK_MPI_AO_GetChnAttr(AUDIO_DEV AoDevId, AO_CHN AoChn, AO_CHN_ATTR_S *pstAttrs); 39*4882a593Smuzhiyun RK_S32 RK_MPI_AO_SetChnParams(AUDIO_DEV AoDevId, AO_CHN AoChn, const AO_CHN_PARAM_S *pstParams); 40*4882a593Smuzhiyun RK_S32 RK_MPI_AO_GetChnParams(AUDIO_DEV AoDevId, AO_CHN AoChn, AO_CHN_PARAM_S *pstParams); 41*4882a593Smuzhiyun // RK_S32 RK_MPI_AO_GetFd(AUDIO_DEV AoDevId, AO_CHN AoChn); 42*4882a593Smuzhiyun RK_S32 RK_MPI_AO_SaveFile(AUDIO_DEV AoDevId, AO_CHN AoChn, AUDIO_SAVE_FILE_INFO_S* pstSaveFileInfo); 43*4882a593Smuzhiyun RK_S32 RK_MPI_AO_QueryFileStatus(AUDIO_DEV AoDevId, AO_CHN AoChn, AUDIO_FILE_STATUS_S* pstFileStatus); 44*4882a593Smuzhiyun RK_S32 RK_MPI_AO_ClrPubAttr(AUDIO_DEV AoDevId); 45*4882a593Smuzhiyun RK_S32 RK_MPI_AO_EnableVqe(AUDIO_DEV AoDevId, AO_CHN AoChn); 46*4882a593Smuzhiyun RK_S32 RK_MPI_AO_DisableVqe(AUDIO_DEV AoDevId, AO_CHN AoChn); 47*4882a593Smuzhiyun RK_S32 RK_MPI_AO_SetVqeAttr(AUDIO_DEV AoDevId, AO_CHN AoChn, AO_VQE_CONFIG_S *pstVqeConfig); 48*4882a593Smuzhiyun RK_S32 RK_MPI_AO_GetVqeAttr(AUDIO_DEV AoDevId, AO_CHN AoChn, AO_VQE_CONFIG_S *pstVqeConfig); 49*4882a593Smuzhiyun RK_S32 RK_MPI_AO_WaitEos(AUDIO_DEV AoDevId, AO_CHN AoChn, RK_S32 s32MilliSec); 50*4882a593Smuzhiyun 51*4882a593Smuzhiyun #ifdef __cplusplus 52*4882a593Smuzhiyun #if __cplusplus 53*4882a593Smuzhiyun } 54*4882a593Smuzhiyun #endif 55*4882a593Smuzhiyun #endif /* End of #ifdef __cplusplus */ 56*4882a593Smuzhiyun 57*4882a593Smuzhiyun #endif /* End of INCLUDE_RT_MPI_MPI_AO_H_ */ 58