RV1126 音频AI模块的详解

一.什么是音频AI模块

RV1126的AI模块指的是音频输入模块 ,它的作用是通过内置芯片读取麦克风等音频的模拟信号,然后把音频模拟信号转换成数字信号。在RV1126里面,音频AI模块是所有音频输入的入口。下面是AI模块和麦克风等音频输入模块的关系

  • AI 模块结构体的重要参数

下面是AI_CHN_ATTR_S 结构体的成员变量

pcAudioNode AUDIO音频节点,默认是default

enSampleFormat 采样格式,下面是RV1126的提供的采样格式,下面好多种采样格式,我们来分别讲解一下:

RK_SAMPLE_FMT_U8: 无符号整型8位采样格式,它是8BIT采样格式的一种,这里的U是unsigned的缩写

RK_SAMPLE_FMT_S16: 整型16位采样格式,它是16IT采样格式,S是signed的缩写

RK_SAMPLE_FMT_S32: 整型32位采样格式,它是32IT采样格式,S是signed的缩写

RK_SAMPLE_FMT_FLT: 利用float格式去采样,它是用浮点型格式进行采样。取值范围是[-1.0, 1.0]。

RK_SAMPLE_FMT_U8P: 无符号整型8位采样平面格式,这里的****P 表示的是平面格式,平面格式指的是非交错模式 ,如:LLLLLLRRRRRRLLLLLLRRRRRRLLLLLLRRRRRRL

RK_SAMPLE_FMT_S16P: 整型16位采样平面格式,这里的P表示的是平面格式,平面格式指的是非交错模式,如:LLLLLLRRRRRRLLLLLLRRRRRRLLLLLLRRRRRRL

RK_SAMPLE_FMT_S32P: 整型32位采样平面格式,这里的P表示的是平面格式,平面格式指的是非交错模式,如:LLLLLLRRRRRRLLLLLLRRRRRRLLLLLLRRRRRRL R

RK_SAMPLE_FMT_FLTP: 浮点型采样平面格式,这里的P表示的是平面格式,平面格式指的是非交错模式,如:LLLLLLRRRRRRLLLLLLRRRRRRLLLLLLRRRRRRL

RK_SAMPLE_FMT_G711A: G711A是标准的ITU-T推荐的标准之一**,**采用8位精度进行采样,它主要运用在电话领域。A表示的是将一个13bit的PCM样本压缩成8bit样本

RK_SAMPLE_FMT_G711U: G711U是标准的ITU-T推荐的标准之一**,**采用8位精度进行采样,它主要运用在电话领域。U表示的是将一个14bit的PCM样本压缩成8bit样本。

2.3. u32Channels 音频通道数,音频默认通道数是****2

2.4. u32SampleRate 音频采样率,在RV1126里面常用的采样率是16000 44100 48000 三种。目前在这个开发中,我们用的是****48000,因为48000 采样率的音频效果最好

2.5. u32NbSample 每一帧的采样个数,这个参数要和对应的音频编码格式来设置。AAC音频编码格式对应的采样个数是1024,MP3音频编码格式对应的采样个数是1152,其实还有很多。

2.6. enAiLayout 音频输入布局类型,它提供了三个成员变量选择:AI_LAYOUT_NORMALAI_LAYOUT_MIC_REF 、AI_LAYOUT_REF_MIC。 它默认是用的是AI_LAYOUT_NORMAL 类型,默认是AI_LAYOUT_NORMAL。

二.设置AI模块的API

3.1. RK_MPI_AI_SetChnAttr 的功能:

RK_MPI_AI_SetChnAttr功能主要是设置AI通道属性

第一个参数: AI模块的通道号ID,取值范围是[0, AI_MAX_CHN_NUM]

第二个参数: AI_CHN_ATTR_S结构体指针

3.2. RK_MPI_AI_EnableChn 的功能:

RK_MPI_AI_EnableChn功能主要是打开AI通道

第一个参数: AI模块的通道号ID,这里填的值和设置的通道号一致

3.3. RK_MPI_AI_StartStream 的功能:

RK_MPI_AI_StartStream功能主要是启动AI音频流

第一个参数: AI模块的通道号ID,这里填的值和设置的通道号一致

相关推荐
白熊1883 分钟前
【图像大模型】AnimateDiff:基于扩散模型的视频生成技术解析与实践指南
人工智能·算法·音视频
几个几个n3 分钟前
Matlab入门
开发语言·人工智能·matlab
码上敲享录9 分钟前
前端如何播放flv视频
前端·音视频
Allen_LVyingbo14 分钟前
传统医疗系统文档集中标准化存储和AI智能化更新路径分析
数据库·人工智能
学技术的大胜嗷20 分钟前
YOLOv8损失函数代码详解(示例展示数据变换过程)
人工智能·python·深度学习·yolo·目标检测
代码小白 ac30 分钟前
考研数一公式笔记
人工智能
桓峰基因30 分钟前
ML 48.机器学习之临床生存树(rpartSurv)
人工智能·机器学习
文火冰糖的硅基工坊33 分钟前
[创业之路-376]:企业战略管理案例分析-战略制定/设计-市场洞察“五看”:看宏观之当前的社会发展趋势与战略应对
大数据·人工智能·架构·模式·跨学科融合
martian66541 分钟前
线性代数中的向量与矩阵:AI大模型的数学基石
人工智能·线性代数·矩阵
aqi001 小时前
FFmpeg开发笔记(六十一)Linux给FFmpeg集成H.266编码器vvenc
linux·ffmpeg·音视频·直播·流媒体