嵌入式视频方案学习第十三篇——音频模块AUDIO
来源:互联网 发布:手机号码筛选软件 编辑:程序博客网 时间:2024/06/04 19:04
输出模块通过对 Hi35xx 芯片音频接口的控制实现音频输入输出功能。音频编码和解码
模块提供对G711、G726、ADPCM 格式的音频编解码功能,并支持录制和播放LPCM
格式的原始音频文件
音频输入
1、设置AI设备属性
HI_S32 HI_MPI_AI_SetPubAttr(AUDIO_DEV AudioDevId,const AIO_ATTR_S
*pstAttr)
音频输入设备的属性决定了输入数据的格式,输入设备属性包括工作模式、采样率、
采样精度、buffer 大小、每帧的采样点数、扩展标志、时钟选择和通道数目
2、启用AI设备
HI_S32 HI_MPI_AI_Enable(AUDIO_DEV AudioDevId);
3、禁用AI设备。
HI_S32 HI_MPI_AI_Disable(AUDIO_DEV AudioDevId);
4、启用AI通道
HI_S32 HI_MPI_AI_EnableChn(AUDIO_DEV AudioDevId, AI_CHN AiChn)
5、禁用AI通道
HI_S32 HI_MPI_AI_DisableChn(AUDIO_DEV AudioDevId, AI_CHN AiChn);
6、获取音频帧
HI_S32 HI_MPI_AI_GetFrame(AUDIO_DEV AudioDevId, AI_CHN AiChn,
AUDIO_FRAME_S *pstFrm, AEC_FRAME_S *pstAecFrm, HI_BOOL bBlock)
7、释放音频帧
HI_S32 HI_MPI_AI_ReleaseFrame(AUDIO_DEV AudioDevId, AI_CHN AiChn,
AUDIO_FRAME_S *pstFrm, AEC_FRAME_S *pstAecFrm)
8、设置AI通道参数
HI_S32 HI_MPI_AI_SetChnParam(AUDIO_DEV AudioDevId, AI_CHN AiChn,
AI_CHN_PARAM_S *pstChnParam)
9、启用指定AI及AO的回声抵消功能
HI_S32 HI_MPI_AI_EnableAec(AUDIO_DEV AiDevId,
AI_CHN AiChn, AUDIO_DEV AoDevId, AO_CHN AoChn)
10、启用AI重采样
HI_S32 HI_MPI_AI_EnableReSmp(AUDIO_DEV AudioDevId, AI_CHN AiChn,
AUDIO_RESAMPLE_ATTR_S *pstAttr);
11、启用AI噪声抑制
HI_S32 HI_MPI_AI_EnableAnr(AUDIO_DEV AudioDevId, AI_CHN AiChn)
12、获取音频输入通道号对应的设备文件句柄
HI_S32 HI_MPI_AI_GetFd(AUDIO_DEV AudioDevId ,AI_CHN AiChn)
音频输出
1、设置AO设备属性
HI_S32 HI_MPI_AO_SetPubAttr(AUDIO_DEV AudioDevId ,const AIO_ATTR_S
*pstAttr)
2、启用AO设备
HI_S32 HI_MPI_AO_Enable(AUDIO_DEV AudioDevId);
3、禁用AO设备
HI_S32 HI_MPI_AO_Disable(AUDIO_DEV AudioDevId);
4、启用AO通道
HI_S32 HI_MPI_AO_EnableChn(AUDIO_DEV AudioDevId, AI_CHN AoChn);
5、禁用AO通道
HI_S32 HI_MPI_AO_DisableChn(AUDIO_DEV AudioDevId, AI_CHN AoChn)
6、发送AO音频帧
HI_S32 HI_MPI_AO_SendFrame(AUDIO_DEV AudioDevId, AO_CHN AoChn,
const AUDIO_FRAME_S *pstData, HI_BOOL bBlock)
7、启用AO重采样
HI_S32 HI_MPI_AO_EnableReSmp(AUDIO_DEV AudioDevId, AO_CHN AoChn,
AUDIO_RESAMPLE_ATTR_S *pstAttr);
8、设置AO设备的音量大小
HI_S32 HI_MPI_AO_SetVolume(AUDIO_DEV AudioDevId, AO_CHN AoChn, HI_S32
s32VolumeDb);
9、获取音频输出通道号对应的设备文件句柄
HI_S32 HI_MPI_AO_GetFd(AUDIO_DEV AudioDevId ,AO_CHN AoChn)
音频编码
1、创建音频编码通道
HI_S32 HI_MPI_AENC_CreateChn(AENC_CHN AeChn, const AENC_CHN_ATTR_S
*pstAttr)
2、发送音频编码音频帧
HI_S32 HI_MPI_AENC_SendFrame(AENC_CHN AeChn, const AUDIO_FRAME_S *pstFrm,
const AEC_FRAME_S *pstAecFrm)
3、获取编码后码流
HI_S32 HI_MPI_AENC_GetStream(AENC_CHN AeChn,
AUDIO_STREAM_S*pstStream ,HI_BOOL bBlock);
4、释放从音频编码通道获取的码流
HI_S32 HI_MPI_AENC_ReleaseStream(AENC_CHN AeChn, const AUDIO_STREAM_S
*pstStream)
5、获取音频编码通道号对应的设备文件句柄
HI_S32 HI_MPI_AENC_GetFd(AENC_CHN AeChn)
- 嵌入式视频方案学习第十三篇——音频模块AUDIO
- 嵌入式视频方案学习第十二篇——视频编码模块VENC 一般初始化过程
- 嵌入式视频方案学习第六篇——视频输入
- HTML5学习日记——音频(audio)&视频(vedio)
- 嵌入式视频方案学习第十一篇——视频编码模块VENC
- 嵌入式视频方案学习第二篇——Hi3518E介绍
- 嵌入式视频方案学习第七篇——视频输入VI一般的初始化流程
- 嵌入式视频方案学习第八篇——视频输出VOU
- 嵌入式视频方案学习第九篇——视频处理子系统VPSS
- 嵌入式视频方案学习第十篇——视频处理子系统VPSS 一般初始化流程
- 音频与视频标签—audio和video
- 嵌入式视频方案学习之第一篇—主流视频方案介绍
- 视频<video>音频<audio>
- 嵌入式视频方案学习第三篇——Hi3518E SDK安装说明
- 嵌入式视频方案学习第三篇——Hi3518E 媒体处理软件平台介绍
- 嵌入式视频方案学习第四篇——系统基本控制
- 嵌入式视频方案学习第五篇——系统初始化的一般流程
- 微信小程序—audio(音频)
- 19. Remove Nth Node From End of List
- 在CentOS下安装Pygame
- MPI 安装
- 1234567转成一百二十三万四千五百六十七
- 编译安装MySQL-5.5
- 嵌入式视频方案学习第十三篇——音频模块AUDIO
- 使用Netty构建APP后台服务器实现http请求
- 使用 xcworkspace 管理 iOS 工程
- USB 全速/高速设备识别信号分析
- Linux进程间通信——使用匿名管道
- 命令模式
- Ubuntu16.04 ibus-pinyin安装
- 基本数据类型和引用数据类型的区别:
- saltsack开启自动认证