专利名称:Mpeg音频解码方法
技术领域:
本发明是关于MPEG音频方面的发明,更具体地说,是关于对具有44.1kHz采样频率的输入流进行解码的MPEG音频的解码方法的发明。
背景技术:
现在,通过网络等公有媒体,MPEG Layer-2等用于广播流和MPEGLayer-3(MP3)等比特流能够很容易实现。而且,MP3在全世界范围内,作为个人便携式播放媒体,由于其能够带来很大的经济利益,现在大部分制造公司都生产它。
而且,在MPEG音频中,MP3从具有44.1kHz采样频率的CD中进行数字编码,大部分流都具有44.1kHz的采样频率。在MPEG音频规格中,当具有44.1kHz的采样频率时,使用填充(padding)位,协调平均比特率(mean bit rate),进行MPEG音频解码。
但是,只使用这种填充位(padding bit)的MPEG音频解码存在当填充位中出现错误时,由于不能计算帧长度,存在不能够准确地进行MPEG音频数据解码的问题。
发明内容
本发明为了解决上述问题,其目的是为使用者提供一种在MPEG解码中,不考虑填充位,直接计算帧长度,查找同步字(syncword),进行解码的MPEG音频解码方法。
为了实现上述目的,本发明MPEG音频解码方法包括以下几个阶段检测输入流的第一个同步字的阶段;对除了上述检测的同步字以外的报头信息进行解码的阶段;通过上述解码,计算累积的帧长度(AFL)的阶段;如果计算了上述累积的帧长度,检测下一个同步字,校验上述报头信息,判断是否存在错误的阶段;如果上个阶段的判断结果是不存在错误,计算帧长度,对帧进行解码的阶段。
上述累积的帧长度最好通过报头信息的比特率索引(bitrate_index)和抽样频率(sampling_frequency)信息进行计算。
而且,将计数器的开始值设定为上述累积的帧长度的数。
并且,上述下一个同步字检测的特点是不认定存在于上述累积的帧长度个数以内的0xFFF为同步字,当其大于累积的帧长度时,进行同步字检测。
而且,上述帧计算是在累积的帧长度比特位的位置(M-位)上,校验上述报头信息,减去没有错误时比特列位置(N-位)的长度。
本发明MPEG音频解码方法,不使用MPEG音频规格里提供的填充位的信息,通过直接计算精确的帧长度,准确地检测同步字,进行解码,达到提高产品的可信性效果。而且,为了查找下一个同步字,通过运行unpack过程,也可以达到同时进行CRC(Cyclic RedundancyCheck循环冗余码校验)处理的效果。
而且,事先判断关于下一个帧的报头1的信息,能够事先掌握现在解码和下一个解码的差,能够主动地应对在下一个帧中发生的变化。
图1是本发明MPEG音频解码方法的方框图。
图2是输入流的报头的示意图。
图3显示的是图1中第二个同步字检测过程的示意图。
具体实施例方式
下面,将参照附图对本发明MPEG音频解码方法的实施例进行详细说明。
首先,值得一提的是,本发明不使用填充位的信息,在44.1KHz的情况下,直接求得帧长度,然后,进行同步字检测。
通常,帧长度指的是从同步字到下一个同步字之前的长度。在本发明中,重新定义了帧长度。
图1是本发明MPEG音频解码方法的方框图,是通过计算新的帧长度进行的解码。
首先,对输入流检测第一个同步字(S11)。
图2显示了输入流的报头。在本发明中,将报头中除了同步字域以外的剩余域定义为任意的报头1。
如果检测到上述第一个同步字(S11),对被任意定义为除了同步字域以外的剩余域--第一个报头1进行解码(S12)。
利用通过上述解码获得的bitrate_index和sampling_frequency信息,按照式(1)和式(2)计算不考虑填充位的累积的帧长度(accumulatedframe length)(AFL)。
AFL(bit)=1152*bitrate/sampling_frequency......式(1)AFL(byte)=1152/8*bitrate/sampling_frequency=144*bitrate/sampling_frequency......式(2)这里,值得一提的是,将计数器的开始值设定为求得的AFL(byte)的数,此时比特列的位置被称为M-位。
然后,检测下一个同步字(S13)。
尽管在MPEG音频编码器中,在音频数据部分对应的区域,字节排列(align)的0xFFF值被认为实际上并不存在,但是,其有时存在于编码的流中。为了避免这种情况,利用对上述报头1进行解码而计算出的AFL,检测下一个同步字。
上述下一个同步字检测如图3所示,存在于AFL个数以内的0xFFF不被认定为同步字,只有当0xFFF比AFL值大时,才运行检测过程。
如果检测上述下一个同步字(S13),校验下一个报头1(S14),判断在同步字以后的信息中是否存在错误。
即,确认ID、层、sampling_frequency等是否存在错误或是否存在变化。
确认后,将没有异常时比特列的位置称为N-位。
然后,读取在上述S12和S14过程中的比特列位置,计算帧长度(S15)。
帧长度可以简单地通过从M位减去N位求得。
如果发生M-N大于AFL+1的情况,将其按照错误状况进行处理,通过默认或者反复此前的帧等方法进行处理。
最后,如果计算出上述帧长度(S15),读取计算的帧长度的信息,进行帧解码(S16)。
反复上述这种过程,对整个流进行解码。
权利要求
1.MPEG音频解码方法,其特征在于,包括以下几个阶段检测输入流的第一个同步字的阶段;对除了上述检测的同步字以外的报头信息进行解码的阶段;通过上述解码,计算累积的帧长度(AFL)的阶段;如果计算了上述累积的帧长度,检测下一个同步字,校验上述报头信息,判断是否存在错误的阶段;如果上个阶段的判断结果是不存在错误,计算帧长度,并进行解码的阶段。
2.如权利要求1所述的MPEG音频解码方法,其特征是上述累积的帧长度利用报头信息的比特率索引和抽样频率信息进行计算。
3.如权利要求1所述的MPEG音频解码方法,其特征是将计数器的开始值设定为上述累积的帧长度的数。
4.如权利要求项1所述的MPEG音频解码方法,其特征是上述下一个同步字检测就是不认定存在于上述累积的帧长度个数以内的0xFF为同步字,当其大于累积的帧长度时,进行同步字检测。
5.如权利要求项1所述的MPEG音频解码方法,其特征是上述帧计算是在累积的帧长度的比特位的位置(M-位)上,校验上述报头信息,减去没有错误时的比特列的位置(N-位)的长度。
全文摘要
MPEG音频解码方法,具体地说,是对具有44.1kHz采样频率的输入流进行解码的MPEG音频的解码方法。MPEG音频解码方法包括以下几个阶段,并以此为特征检测输入流的第一个同步字的阶段;对除了上述检测的同步字以外的报头信息进行解码的阶段;通过上述解码,计算累积的帧长度(AFL)的阶段;如果计算了上述累积的帧长度,检测下一个同步字,校验上述报头信息,判断是否存在错误的阶段;如果上个阶段的判断结果是不存在错误,计算帧长度,对帧进行解码的阶段。
文档编号G10L19/00GK1909657SQ20051003633
公开日2007年2月7日 申请日期2005年8月5日 优先权日2005年8月5日
发明者黄泰勋 申请人:乐金电子(惠州)有限公司
Mpeg音频解码方法
相关推荐
专利名称:一种制作多位相衍射光学元件的工艺的制作方法技术领域:本发明属于领域信息科学与技术领域,具体涉及一种制作多位相衍射光学元件的工艺。由二元光学理论,通过位相台阶数的增加,可以获得更高衍射效率的衍射光学元件。例如当位相数为8时,衍射效率
专利名称:一体式无极灯的制作方法技术领域:本实用新型涉及高频无极灯的改进技术。技术背景 高频无极灯是综合功率电子学、等离子体学、磁性材料学等理论开发出来的新一代照明产品。高频无极灯主要是由高频发生器、功率耦合器和玻璃灯体三部分组成,玻璃灯体
专利名称:一种光纤配线箱的制作方法技术领域:本实用新型涉及电信设备,尤其涉及一种光纤配线箱。背景技术:光纤入户(简称FTTH)是指将光网络单元安装在住家用户或企业用户处,是光接入系列中除光纤到桌面(简称FTTD)外最靠近用户的光接入网应用类
专利名称:激光光强分布和波前的控制装置及控制方法技术领域:本发明涉及激光技术领域,特别是涉及ー种激光光强分布和波前的控制装置及控制方法背景技术:激光自1960年问世至今,得到的了空前的发展,由于其亮度高、単色性好、准直和聚焦性能好,已在科学
专利名称:用于可伸缩声道解码的方法、介质和设备的制作方法用于可伸缩声道解码的方法、介质和设备本申请是向中国知识产权局提交的申请日为2007年I月11日的标题为“用于可伸缩声道解码的方法、介质和设备”的第200780002329. X号申请的
专利名称:一种midi音乐播放装置的制作方法技术领域:本实用新型涉及一种音频数据播放装置,特别是一种MIDI音乐播放的装置。技术背景MIDI是Musical Instrument Digital Interface的首写字母组合词,可译成“