欢迎来到天天文库
浏览记录
ID:47477688
大小:307.50 KB
页数:15页
时间:2020-01-11
《基于S3C2410处理器的的MP3设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、目录一、引言4二、MP3编码和解码原理42.1、MP3编码原理52.1.1、滤波器段52.1.2、神经听觉模型62.1.3、量化和编码72.2、MP3解码原理7三、MP3的设计与实现83.1、硬件设计93.1.1、SDRAM103.1.2、FLASH103.1.3、输出电路113.2、软件设计123.2.1、驱动程序基础123.2.2、UDA1341声卡驱动程序133.2.3、Madplay播放软件13四、参考文献1415基于S3C2410处理器的的MP3设计摘要:设计一种基于S3C2410的MP3播放器。该播放器是基于嵌入式linux操作系统、应
2、用S3C2410为平台。详细介绍了MP3编码和解码的原理、设计及实现过程。由于采用的是嵌入式linux实现的,该种MP3播放器可以很容易地移植到其他微控制器系统中,使设备兼具MP3播放功能的设备。关键字:嵌入式linux;MP3;编码和解码原理;设计及实现15一、引言 MP3(MPEGAudioLayer-3)是一种数字音频压缩技术,数字压缩速率达到每通道128kbps,数比例可以达到12:1。MP3播放器的主要作用就是解压压缩的MP3数字音频,再现MP3音乐,同时为携带方便还要能存贮MP3文件,MP3歌曲可以从电脑上下载。MP3播放器主要由MP3
3、文件解码部分、文件存贮部分、文件下载接口和语音播放部分构成。根据解码的方法播放器可分为软解码和硬解码两种:软解码是利用控制软件解压缩MP3文件,它要求控制器处理速度要快。MPEG-1音频标准是一个普遍适用的音频压缩标准,它对音频源没有任何要求。它利用人耳听觉系统的感知特性,压缩率的取得来自去掉人耳听不到的信息细节,虽然压缩是有失真的,但对人耳来说这些失真是听不到的。也即对人耳而言,MPEG-1音频压缩是不失真的。因此,MPEG-1音频标准的应用非常广泛。二、MP3编码和解码原理音频压缩由编码和解码两个部分组成。把波形文件里的数字音频数据转换为高度压
4、缩的形式(称为比特流)即为编码;要解码则把比特流重建为波形文件。152.1MP3编码原理图1MP3是MPEG-1音频标准中的LayerIII的简称,它基于感知音频编码,结合了MUSICAM(掩蔽模式通用子带集成编码与多路复用)算法和ASPEC(自适应频谱感知熵编码)算法的优势,利用人耳的听觉特性,在保证高品质的音响效果的前提下,可以把原始的音乐数据压缩为原来的十二分之一,目标编码速率为声道,适合于网络上音频数据64kbps的传输。数字音频采样通过由两个滤波器组成的滤波器组输入到心理声学模型中,由心理声学模型的输出控制音频屏蔽等参数,最终通过量化和霍
5、夫曼Huffman)编码得到输出的比特流。2.1.1滤波器段 数字音频信号以脉冲的形式送进编码器,首先会经过一滤波器段(filterbank),它由两个串联的滤波器段组成:一个多相分析滤波器段和一个MDCT(ModifiedDiscreteCosine15Transform,经改良的离散余弦转换),前者也应用到layer-1和layer-2中,后者是MP3独有的。 输入的音频信号在20Hz-20kHz的频率范围内,通过第一个滤波器段后,把信号按频率分成32个小频带,称为子带(Subband)。20000Hz/32=625Hz,那么每个子带的宽度
6、就是625Hz。人耳对不同频段的灵敏度是不同的,编码器可对不同的子带进行不同的量化分层。 不过等宽的子带并没有准确反映人耳的听觉特性,这样进行等宽划分并没有考虑到不同信号的临界宽度,也就是该信号的影响范围,以及不同信号的相互影响,所以这样会产生大量的信号重叠。MDCT转换就是为了解决这问题,它能对子带进行细分,清楚重叠部分,得到更高的频谱解析度。2.1.2神经听觉模型神经听觉模型可以说是感受编码的重中之中,它决定着编码器的编码质量。最主要的原因是它采用了声音心理模型来模拟人耳的听觉,利用人耳听觉感知上的遮蔽效应所得到的遮噪门槛曲线,决定各个子频带
7、所容许的最大量化误差,使得了量化后的失真能被听见。15声音心理模有两种,其中第一声音心理模型比较简单,适用于高传输率;第二声音心理模型比较复杂,在较低的传输率的情况下,也能维持声音的品质。此两模型皆先将音讯经傅里叶频谱变换,在对映射到临界频带,并区分出单频以及非单频成分,依其所在的频率位置与强度大小,分别计算遮噪门槛曲线,而整合成整体遮噪门槛曲线,并对映成每个子频带信号编码时所需的位元素。2.1.3量化和编码当PCM讯号被分成好几个频段并经过一系列的处理后,最后经过MDCT,将波型转换为一连串的系数。这些系数就由Huffman编码器会选择最合适的H
8、uffman表来做最后的压缩。Huffman编码一般是双路工作的,但是在某些需要精密编码的情况下,它会进行四路工作。编码器
此文档下载收益归作者所有