MP3音频解码的仿真实现

上传人:pu****.1 文档编号:557768955 上传时间:2022-07-23 格式:DOC 页数:39 大小:621.50KB
返回 下载 相关 举报
MP3音频解码的仿真实现_第1页
第1页 / 共39页
MP3音频解码的仿真实现_第2页
第2页 / 共39页
MP3音频解码的仿真实现_第3页
第3页 / 共39页
MP3音频解码的仿真实现_第4页
第4页 / 共39页
MP3音频解码的仿真实现_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《MP3音频解码的仿真实现》由会员分享,可在线阅读,更多相关《MP3音频解码的仿真实现(39页珍藏版)》请在金锄头文库上搜索。

1、 第一章MP3音频概述1. 1 MP3的历史 运动图像及其伴音通用的压缩编码技术是多媒体计算机、多媒体数据库、多媒体通信、数字化电视、高清晰度电视以及交互式电视系统中的关键技术。要解决上述应用中的传输和存储问题,必须要采用压缩编码技术。从最早提出PCM编码理论开始,迄今己有50多年的历史,很多科学家、工程师先后提出了预测编码、变换编码、矢量量化编码、信息嫡编码、子带编码、结构编码以及基于知识的编码等。其的目的就是为了从原始数据中去除信息的时间冗余、空间冗余、信息嫡冗余、结构冗余、知识冗余以及视觉的冗余,保留有用的信息,以便提高信息处理、传输和存储效率。 从八十年代开始,很多大的国际性公司,为了

2、设计开发多媒体计算机系统以及通信系统,专门研制了自己的音频视频信息压缩解压缩算法,为了提高速度,投入了大量研究经费,设计制造了专用集成电路,当时在国际市场上取得了良好的经济效益和社会交易。但是随着国际标准化组织ISO(The Intemational Organization for Standardization)先后制定了ISO/IEC10918连续色调静态图象的数字压缩和解码(JPEG)、ISO/IECI1172(具有1.5/Mbit/s数据传输率数字存储媒体运动图象及其伴音的标准MPEG-I)以及CCITT制定的H.261(Px64Kbps视声业务视象编码方式)等标准,使得一些不符合国

3、际标准的产品的技术发展受到限制。国际标准化组织于1988年就成立一个致力于制订有关运动图像压缩编码的组织。组织在工作一开始就考虑到相关标准化组织的研究成果,如JPEG和H.261标准。运动图像可以看成是静止图像的一个系列,所以图象运用的帧内解码器中就采用了JPEG推荐的技术,此外又加进了帧间压缩技术(运动补偿技术)。到1992年MPEG正式推出了MPEG-I标准草案,1993年正式通过。MP3就是MPEG标准中的音频标准中的一部分。1987年,IIS开始进行有关实用的音频编码方面的工作。它们同Erlangen大学合作开展了一个项目,最后IIS提出了一个非常优秀的算法,也就是ISO-MPEG-I

4、音频的第3层,同时通过的ISO11172-3标准也就成为了MPEG标准中的一部分。后来,在MPEG-I的基础上,又提出了MPEG-II的编码标准,该标准的音频部分与MPEG-I的音频部分在算法上基本一致,但提供了与CCITT的G-722相类似的16KHz、22.05KHz和24KHz的采样速率,这样就使得MP3也可以用于低比特率(15kHzstereo112.128kbps14.12:1 从上表可以看出,采用MP3标准压缩的声音具有音质好,码率低的特点,而且根据国际上众多的视听测试,MP3提供了非常好的性能,根据测试,在10kHz的通道中完全可以实现立体声广播。1. 3 MP3的实现基础及局限

5、性 MP3之所以能够实现主要是因为人的听觉的特性以及编码技术的发展。 最小听觉阈制值与声音掩蔽: 人耳的听觉阈制并不是线性的,而且人耳对于不同的声音的感觉是不同的,强的声音往往可以淹没弱的声音。所以在编码的时候就没有必要将所有的声音进行编码,这样就减小了数据量。 Huffman编码技术: MP3使用了非常经典的Huffman算法,MP3使用Huffman算法实现压缩的最后步骤。在编码过程中,Huffman算法产生一个可变码长的位流,并且可以根据一个相应的表格解决码流不等长的问题,而且解码速度非常快,同时压缩比也较高,平均可节省20%的空间。MP3虽然有压缩比大的优点,但因为它的编码原理的限制,

6、同样也存在缺点。MP3一个显著的缺点就是延迟时间长,它的最小理论延时是59ms,而实际上的值要比这要大许多,而且同系统的实现方法有关,很难给出一个精确的值。第二章 音频解码概述2.1.音频序列1 帧层和层:位流的部分内容可以根据自身的信息进行解码。在层中,它包含有384个样本信息;在层中,包含1152个样本。它以一个同步字开始,在下一个同步字前结束。它由整数个槽(slot)组成(层中4个字节,层中1个字节)。帧层:位流的部分内容可使用先前获得的主要信息进行解码。在层中,它包含有1152个样本信息。尽管两个连续的同步字开始位置之间的距离为整数槽(层1个字节),属于一个帧的音频信息一般并不包含在两

7、个相继的同步字之间。2.2 音频帧 header:位流的一部分,它包含同步和状态信息。 error_check:位流的一部分,它包含用于错误检测的信息。 audio_data:位流的一部分,包含音频样本的信息。 ancillary_data:位流的一部分,可用于辅助数据。2.3 头标 前32位(4个字节)是头标信息,对所有层而言,它是一样的。 syncword:位串1111 1111 1111 ID标明算法ID的位(l位),等于z表示是IsozIEe11172-3音频,0值保留。 Layer:2位,表明使用的层次,取值如“表2.1”所示。表2.1 Layer值定义Layer11层10层01层0

8、0保留 为了改变层,可能需要复位音频解码器。 protection_bit:1位长,用于表明冗余信息是否被加到音频流中,以进行错误检测和错误隐蔽。位值为1表示未增加冗余信息,位值为0表示增加冗余信息。 bitrateindeX:指定位率。所有。值表明“自由格式”情形,在这种情形下可以使用不同于表中的固定位率。这里的固定意味着帧包含N或者N+1个槽(依赖于填补位的值)。bitrate_index是1个表的索引,每层所用的表各不相同。bitrate_index表明整个位率,而不管其方式(stereo(立体表)joint_stero(联合立体声)dual_chanel(双声道)和single_cha

9、nel(单声道)。表2.2 不同层次的位率Bitrate_index指定的位率(Kb/s)层层层0000FreeFreeFree00013232320010644840001196564801001286456010116080640110192968001112241129610002561281121001288160128101032019216010113522241921100384256224110141632025611104483843201111禁止使用禁止使用禁止使用 为了提供可能的最小延迟和复杂性,不需要解码器支持一连续可变位率(当在层和层时),层通过切换bitrate_

10、index来支持可变位率。bitrate_index的切换可用来优化DSM上的存储需求或者插值任何中等数据位率,具体方法是在位率表中近似的值之间进行切换。然而,在自由格式中,需要使用固定位率。另外要求解码器所支持的位率高于448kb/s、384kb/s和320kb/s(分别对应与层、层和层),这时的操作模式为自由格式。 对于层而言,并非所有位率与模式的组合都是允许的,参见“表2.3”。表2.3 位率与模式的关系位率(Kb/s)自由格式所有模式34单通道48单通道56单通道64所有模式80单通道96所有模式112所有模式128所有模式160所有模式192所有模式224立体声,强度立体声,双通道2

11、56立体声,强度立体声,双通道320立体声,强度立体声,双通道384立体声,强度立体声,双通道 sampling_frequeney:指定采样频率,参见“表2.4”。表2.4 采样频率的值Sampling_frequency指定的频率(kHz)0044.101481032 paddingesbit:如果该位为1,那么帧中包含一个额外槽,用于把中等位率调节为采样频率,否则该位必须为0。在采样频率为44.1妞z时,填补是必要的,在自由格式中也可能需要填补。 之所以要应用填补操作位到流中,原因是在一定数量的音频帧后,编码帧的累计长度不应与下面的计算值偏离(+0,-1槽)以上: 其中,帧大小=384(

12、层)或1152(层和层): Private_bit:标志私有使用的位 mode:表明所有的模式,见“表2.5”。在层和层中,joing_stereo模式是instersity_stereo;在层中,它是iniensity_stereo或ms_stereo.表2.5 模式表Mode指定的模式00Stereo(立体声)01Joint_stereo(intensity_stereo或ms_strero)(联合立体声)10Dual_channel11Single_chanle 在层中,除联合立体声(Joint_stereo)之外的所有模式下,等32;在层中,在除联合立体声之外的所有模式下,约束值等于s

13、blimit。在joint_stereo模式下,约束值由mode_extension确定。 Mode_extension:这些位用于joint_stereo模式中,在层和层中,它们表明哪个子带在iniensity_stereo中,所有其它子带按立体声编码,mode_extension的含义如“表2.6”所示。表2.6 mode_ectension的定义Mode_extension00Intensity_stereo中的子带4-31,bound=401Intensity_stereo中的子带8-31,bound=810Intensity_stereo中的子带12-31,bound=1211Intensity_stereo中的

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号