MatlabMP播放器.doc

MatlabMP播放器.doc

ID:25250638

大小:125.51 KB

页数:11页

时间:2018-11-19

MatlabMP播放器.doc_第1页
MatlabMP播放器.doc_第2页
MatlabMP播放器.doc_第3页
MatlabMP播放器.doc_第4页
MatlabMP播放器.doc_第5页
资源描述:

《MatlabMP播放器.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、基于Matlab的MP3播放器1.概述MP3的全称为MPEG1(MovingPictureExpertsGroup)Layer–3音频文件。它根据压缩质量和编码复杂程度划为三层,Layer–1、Layer–2、Layer–3,且分别对应MP1、MP2MP3这三种声音文件,并根据不同的用途,使用不同层次的编码。MPEG音频的层次越高,编码器越复杂,压缩率也越高,MP3的压缩率则高达10:1–12:1。MATLAB是国际上公认的最优秀的科技应用软件,它在数据分析和处理功能都是很强大,利用它可以灵活方便地处理音频信号。本文将使用ma

2、tlab对MP3进行解码,做一个简易的MP3播放器。2.MP3文件格式MP3文件大体分为三部分:TAG_V2(ID3V2),frame,TAG_V1(ID3V1)ID3V2包含了作者,作曲,专辑等信息,长度不固定,扩展了ID3V1的信息量Frame一系列的帧,个数由文件大小和帧长决定每个FRAME的长度可能不固定,由位率bitrate决定每个FRAME又分为帧头和数据实体两部分帧头记录了mp3的位率,采样率版本等信息,每个帧之间相互独立ID3V1包含了作者,作曲,专辑等信息,长度为128BYTE一个MPEG音频文件是许多的称为帧

3、的较小部分组成的,通常,帧是独立的组成部分,每个帧都拥有之间的头和音频信息,没有文件头。所以我们可以剪切MPEG文件的任何部分并且能够正常播放。但在LayerIII中就并不总是正确的。2.1、帧头格式下面是一个头内容图示,使用字符A到M表示不同的区域AAAAAAAAAAABBCCDEEEEFFGHIIJJKLMMA表示帧同步,都为1,长度为11;B表示MPEG音频版本ID(00–MPEG2.5;01–保留;10–MPEG2;11–MPEG1);C表示Layer描述,(00–保留;01-LayerIII;10–LayerII;11

4、-LayerI);D表示校验位(0有跟16位CRC校验位;1无校验位);E位率索引,长度为4,对不同的版本,不同层索引值表示不同的位率;单位KbitMPEG1LayerIMPEG1LayerIIMPEG1LayerIIIMPEG2,2.5LayerILayerII&LayerIII0000FREE0001323232328001064484048160011965648562401001286456643201011608064804001101929680964801112241129611256100025612811212

5、86410012881601281448010103201921601609610113522241921761121100384256224192128110141632025622414411104483843202561601111F采样频率,单位:HzBitsMPEG1MPEG2MPEG2.50044100220501102501480002400012000103200016000800011保留G填充位(0–无填充;1–额外的填充)H私有bit,用做特殊应用I声道(00–立体声;01–联合立体声;10–双声道;11–

6、单声道);J扩展模式,仅在联合立体声有效K版权(0–无版权;1–有版权);L原创(0–拷贝;1–原创);M强调(00–无;01–50/15ms;10–保留;11–CCITJ.17);2、2CRC校验如果帧头的校验位为0,则帧头后就有一个16位的CRC值,这个值是big-endian的值,把这个值和该帧通过计算得出的CRC值进行比较就可以知道该帧是否有效。2、3帧数据在帧头后边是SideInfo(姑且称之为通道信息)。对标准的立体声MP3文件来说其长度为32字节。通道信息后面是Scalefactor(增益因子)信息。当解码器在读到

7、上述信息后,就可以进行解码了。当MP3文件被打开后,播放器首先试图对帧进行同步,然后分别读取通道信息及增益因子等数据,再进行霍夫曼解码,至此我们已经获得解压后的数据。但这些数据仍然不能进行播放,它们还处于频域,要想听到歌曲还要将它由频域通过特定的手段转换到时域。接下来的处理分别为立体化处理;抗锯齿处理;IMDCT变换;IDCT变换及窗口化滑动处理。2、4ID3v1ID3v1标签用来描述MPEG音频文件。包含艺术家,标题,唱片集,发布年代和流派。另外还有额外的注释空间。位于音频文件的最后固定为128字节。可以读取该文件的最后这12

8、8字节获得标签。结构如下:AAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDEEEEFFFFFFFFFFFFFFFFFFFFF

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

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

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