音频AAC编码与RV1126的AENC模块的讲解

一.音频编码的原理

AAC编码的基本概念

AAC(Advanced Audio Coding)是一种高级音频编码格式,旨在提供比MP3更高的音质和更低的比特率。AAC是MPEG-2和MPEG-4标准的一部分,广泛应用于音乐、视频流媒体和广播等领域

音频为什么要进行编码压缩?我们就以PCM原始数据为例,假设这个PCM数据采样率为:48000、采样深度:16bit、声道数:2。对应的码率是:48000 * 16bit * 2 = 1536000bps ~=1.46M 若传输一分钟那就是1.46M * 60S~ = 87.6M。这个数据量是非常大,若在网络传输上这个音频的数据量很容易造成网络的负载压力。所以此时我们就需要对音频进行编码压缩,音频编码压缩格式分很多种,比方说:MP3、AAC、OGG格式。我们的课程重点来说AAC编码格式,因为AAC编码在网络传输中质量最好,并且AAC的压缩比高达1:18,是所有音频编码技术中压缩比最高。

1.AAC编码的特点

每个AAC音频帧包含了多个音频采样的压缩数据,AAC的一个音频帧包含1024个采样值。由于原始数据块它是以帧的形式存在,我们称之为原始帧。

在AAC中一般有两种方式来封装,一种是ADIF,另外一种是ADTS。

2.ADIF 格式

音频数据交换格式,这种格式必须在定义的音频数据流进行处理,基本上用于存储磁盘文件中

3.ADTS 格式

音频数据传输流,这种格式是最常用的格式。它的特点是会同步字的比特流,并且允许在音频数据流任意帧解码。换言之,就是它的每一帧都有信息头,一个是AAC原始数据长度是可变,对原始帧加上ADTS头进行封装就生成ADTS帧。

AAC的每一帧数据由ADTS Header和AAC Audio Data组成,其中ADTS Header占有7个字节-9个字节。

ADTS Header由两部分组成分别是:固定头部信息 (adts_fixed_header)和可变头信息 (adts_variable_header),固定头信息指的是数据每一帧都是相同的 ,它主要定义了音频的采样率、声道数、帧长度等信息;**可变头信息则主要描述帧和帧之间的可变。**下面是adts帧的结构

4.adts_fixed_header 的参数:

图二:采样率下标和采样率关系

5.adts_variable_header的参数:

二.RV1126的AENC模块的讲解

RV1126 AENC 模块的介绍

RV1126的AENC模块是音频编码模块 ,主要是对AI模块进来的数据进行**音频编码压缩处理,**并输出对应的音频压缩码流,下面是AENC模块在RV1126里面和AI模块的关系。

RV1126的 AENC 模块参数

设置AENC模块的是AENC_CHN_ATTR_S 结构体,下面我们重点看看这个结构体属性的具体定义:

1.enCodecType 音频编码协议类型,下面是AENC支持的音频编码格式

2.u32Bitrate 音频编码比特率,音频编码每秒传输的数据量。

AAC 编码协议推荐使用 64kpbs(64000bps)

G711A G711U 编码协议推荐使用 64kps(64000bps)

G726 推荐使用 32kpbs(32000bps)

3. u32Quality: 音频编码质量,默认是1

4.stAencAAC stAencMp2 stAencG711A stAencG711U stAencG726 这几个结构体是不同的音频编码器的专门协议属性结构体

4.1 .stAencAAC**:它是** AAC 编码协议属性

u32Channels **:**编码通道数

u32SampleRate **:**音频采样率,AAC的采样率范围是7350-96000

4.2 .stAencMp2**:** 它是MP2编码协议属性

u32Channels **:**编码通道数

u32SampleRate **:**音频采样率

相关推荐
张较瘦_1 小时前
[论文阅读] 人工智能 + 软件工程 | 需求获取访谈中LLM生成跟进问题研究:来龙去脉与创新突破
论文阅读·人工智能
一 铭2 小时前
AI领域新趋势:从提示(Prompt)工程到上下文(Context)工程
人工智能·语言模型·大模型·llm·prompt
顾道长生'3 小时前
(Arxiv-2025)通过动态 token 剔除实现无需训练的高效视频生成
计算机视觉·音视频·视频生成
麻雀无能为力5 小时前
CAU数据挖掘实验 表分析数据插件
人工智能·数据挖掘·中国农业大学
时序之心6 小时前
时空数据挖掘五大革新方向详解篇!
人工智能·数据挖掘·论文·时间序列
.30-06Springfield6 小时前
人工智能概念之七:集成学习思想(Bagging、Boosting、Stacking)
人工智能·算法·机器学习·集成学习
说私域7 小时前
基于开源AI智能名片链动2+1模式S2B2C商城小程序的超级文化符号构建路径研究
人工智能·小程序·开源
永洪科技7 小时前
永洪科技荣获商业智能品牌影响力奖,全力打造”AI+决策”引擎
大数据·人工智能·科技·数据分析·数据可视化·bi
shangyingying_17 小时前
关于小波降噪、小波增强、小波去雾的原理区分
人工智能·深度学习·计算机视觉
书玮嘎8 小时前
【WIP】【VLA&VLM——InternVL系列】
人工智能·深度学习