aac解码算法原理详解

aac解码算法原理详解

ID:35940658

大小:324.38 KB

页数:18页

时间:2019-04-26

aac解码算法原理详解_第1页
aac解码算法原理详解_第2页
aac解码算法原理详解_第3页
aac解码算法原理详解_第4页
aac解码算法原理详解_第5页
资源描述:

《aac解码算法原理详解》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、实用文案AAC解码算法原理详解原作者:龙帅(loppp138@hotmail.com)此文章为便携式多媒体技术中心提供,未经站长授权,严禁转载,但欢迎链接到此地址。本文详细介绍了符合ISO/IEC13818-7(MPEG2AACaudiocodec),ISO/IEC14496-3(MPEG4AudioCodecAACLowComplexity)进行压缩的的AAC音频的解码算法。1、程序系统结构下面是AAC解码流程图:AAC解码流程图 在主控模块开始运行后,主控模块将AAC比特流的一部分放入输入缓冲区,通过查找同步字得到一帧

2、的起始,找到后,根据ISO/IEC13818-7所述的语法开始进行NoislessDecoding(无噪解码),无噪解码实际上就是哈夫曼解码,通过反量化(Dequantize)、联合立体声(JointStereo),知觉噪声替换(PNS),瞬时噪声整形(TNS),反离散余弦变换(IMDCT),频段复制(SBR)这几个模块之后,得出左右声道的PCM码流,再由主控模块将其放入输出缓冲区输出到声音播放设备。标准文档实用文案2.主控模块主控模块的主要任务是操作输入输出缓冲区,调用其它各模块协同工作。其中,输入输出缓冲区均由DSP控

3、制模块提供接口。输出缓冲区中将存放的数据为解码出来的PCM数据,代表了声音的振幅。它由一块固定长度的缓冲区构成,通过调用DSP控制模块的接口函数,得到头指针,在完成输出缓冲区的填充后,调用中断处理输出至I2S接口所连接的音频ADC芯片(立体声音频DAC和DirectDrive耳机放大器)输出模拟声音。3.同步及元素解码同步及元素解码模块主要用于找出格式信息,并进行头信息解码,以及对元素信息进行解码。这些解码的结果用于后续的无噪解码和尺度因子解码模块。AAC的音频文件格式有以下两种:ADIF:AudioDataInterch

4、angeFormat音频数据交换格式。这种格式的特征是可以确定的找到这个音频数据的开始,不需进行在音频数据流中间开始的解码,即它的解码必须在明确定义的开始处进行。故这种格式常用在磁盘文件中。ADTS:AudioDataTransportStream音频数据传输流。这种格式的特征是它是一个有同步字的比特流,解码可以在这个流中任何位置开始。它的特征类似于mp3数据流格式。AAC的ADIF格式见下图: 3.1ADIF的组织结构AAC的ADTS的一般格式见下图:3.2ADTS的组织结构图中表示出了ADTS一帧的简明结构,其两边的空

5、白矩形表示一帧前后的数据。ADIF和ADTS的header是不同的。它们分别如下所示:标准文档实用文案 3.3ADIF的头信息3.4ADTS的固定头信息                    ADTS的可变头信息 3.5帧同步帧同步目的在于找出帧头在比特流中的位置,13818-7规定,aacADTS格式的帧头为12比特的“111111111111”.标准文档实用文案3.6头信息解码ADTS的头信息为两部分组成,其一为固定头信息,紧接着是可变头信息。固定头信息中的数据每一帧都相同,而可变头信息则在帧与帧之间可变。3.7元素信

6、息解码在AAC中,原始数据块的组成可能有六种不同的元素。它们分别是SCE:SingleChannelElement单通道元素。单通道元素基本上只由一个ICS组成。一个原始数据块最可能由16个SCE组成。CPE:ChannelPairElement双通道元素,由两个可能共享边信息的ICS和一些联合立体声编码信息组成。一个原始数据块最多可能由16个SCE组成。CCE:CouplingChannelElement藕合通道元素。代表一个块的多通道联合立体声信息或者多语种程序的对话信息。LFE:LowFrequencyElement

7、低频元素。包含了一个加强低采样频率的通道。DSE:DataStreamElement数据流元素,包含了一些并不属于音频的附加信息。PCE:ProgramConfigElement程序配置元素。包含了声道的配置信息。它可能出现在ADIF头部信息中。FIL:FillElement填充元素。包含了一些扩展信息。如SBR,动态范围控制信息等。3.8处理流程(1). 判断文件格式,确定为ADIF或ADTS(2). 若为ADIF,解ADIF头信息,跳至第6步。(3). 若为ADTS,寻找同步头。(4). 解ADTS帧头信息。(5). 

8、若有错误检测,进行错误检测。(6). 解块信息。(7). 解元素信息。标准文档实用文案4.无噪声解码无噪编码就是哈夫曼编码,它的作用在于进一步减少尺度因子和量化后频谱的冗余,即将尺度因子和量化后的频谱信息进行哈夫曼编码。全局增益编码成一个8位的无符号整数,第一个尺度因子与全局增益值进行差分编码后再使用尺

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。