CN101675473B - 用于处理编码的音频数据的方法和装置 - Google Patents
用于处理编码的音频数据的方法和装置 Download PDFInfo
- Publication number
- CN101675473B CN101675473B CN2008800136447A CN200880013644A CN101675473B CN 101675473 B CN101675473 B CN 101675473B CN 2008800136447 A CN2008800136447 A CN 2008800136447A CN 200880013644 A CN200880013644 A CN 200880013644A CN 101675473 B CN101675473 B CN 101675473B
- Authority
- CN
- China
- Prior art keywords
- frame
- audio
- frame boundary
- data stream
- header
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 27
- 238000012545 processing Methods 0.000 title claims description 16
- 238000001514 detection method Methods 0.000 claims description 24
- 230000008034 disappearance Effects 0.000 claims description 7
- 238000011156 evaluation Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 claims description 4
- 230000008878 coupling Effects 0.000 description 11
- 238000010168 coupling process Methods 0.000 description 11
- 238000005859 coupling reaction Methods 0.000 description 11
- 230000008859 change Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000005538 encapsulation Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 239000012634 fragment Substances 0.000 description 2
- 230000013011 mating Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000013497 data interchange Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/16—Vocoder architecture
- G10L19/167—Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/005—Correction of errors induced by the transmission channel, if related to the coding algorithm
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
为了定位编码的音频帧分界(74)并在对应于该帧分界(74)的点处开始解码音频,音频解码器(50)生成包含同步字(62)和与编码的音频帧(72)的报头(80)相关的附加位(64)的匹配模式(60)、通过在编码的音频帧(72)的数据流(70)中搜索该匹配模式(60)的实例来检测音频帧分界(74)、并且在数据流(70)中对应于所检测到的帧分界(74)的点处开始解码音频帧(72)。
Description
背景技术
本发明总体涉及音频解码器,比如可以在便携式音乐播放器或其他多媒体设备中使用的音频解码器。音频解码器可以用于解码存储的音频文件,或解码通过网络提供的数据流。
用于编码音频的多种标准是公知的。此外,用于将编码的音频数据封装成数据流(其可以包括数据文件或通过网络提供的数据流)的多种标准也是公知的。用于将编码的音频数据封装成数据流的标准的一个例子是音频数据传输流(ADTS)格式,其一般用于封装并传输根据广泛使用的高级音频编码(AAC)标准编码的音频数据。
ADTS和其他格式将数据流组织成音频数据帧,每个帧包括报头。在一些应用中,可能必需的是,扫描数据流的一部分而寻找编码的音频帧的开端。所谓的同步字一般包括在帧报头中以方便该扫描。同步字是固定长度、固定值的数据字段,其通常被放置在报头内一致的位置处,比如报头的开端。
尽管扫描数据流以检测同步字的出现通常对定位帧报头是有效的,但是可能出现误差。因为同步字通常因为实际原因而被限于相对较短的长度(比如12位),所以明显的同步字可以偶尔地在音频有效载荷数据中(即帧报头的外部)出现。这种情况的发生将导致帧的误检测。尽管用于从这种误检测中恢复的各种技术是可能的,但是误检测导致使用宝贵的处理时间和周期。
因此,需要一种用于有效定位编码的音频帧的数据流中的帧分界同时减少误检测的方法。
发明内容
提供一种用于解码数据流中的音频帧的音频解码器,其中每个帧包括报头。该音频解码器包括一个或多个电路,这些电路被配置为生成匹配模式(matching pattern),该匹配模式包括同步字和对应于有效编码的音频帧中报头字段的至少一个预期值的一个或多个附加位;通过在数据流的一部分中搜索该匹配模式的一个或多个实例(instance)来检测帧分界;以及解码在数据流中对应于所检测到的帧分界的点处开始的一个或多个音频帧。
附图说明
图1示出具有编码的音频帧的数据流。
图2示出用于编码的音频帧的示范性报头结构。
图3示出用于本发明的实施例中的示范性匹配模式。
图4示出用于处理编码的音频帧的示范性方法。
图5是用于处理音频帧的示范性音频解码器的框图。
具体实施方式
本发明提供用于处理包括编码的音频数据的数据流的方法,其中该数据流被组织成多个帧。本文所描述的方法减少了帧分界的误检测,从而在音频解码器设备中实现了改进的误差恢复和增强的音频处理特征。本发明适用于处理被组织成文件并被存储在非易失性存储器中的音频数据或在音频或多媒体“流”中由网络化设备接收的音频数据。
图1示出数据流70,其包括多个编码的音频帧72。每一个编码的音频帧72包括报头80;每个报头的开端对应于帧分界74。
数据流70可以包括根据一种或多种已知的音频编码方案(例如MP3(MPEG层3)编码方案或高级音频编码(AAC)编码方案)编码的音频数据。AAC已经被标准化为MPEG-2标准(被正式称为ISO/IEC13818-7:1997)的第7部分以及MPEG-4标准(被正式称为ISO/IEC14496-3:1999)的第3部分。本领域技术人员将认识到许多其他的音频编码方案已经存在或者可能将来会被开发,并且这些方案中的每一个都可以包括用于压缩并编码音频数据的多种技术。事实上,AAC标准本身实际上包括许多不同的编码方案,其被组织成“类(profile)”和/或“目标类型”。
编码的音频数据(比如用AAC编码的)典型地由一系列数据块组成。已经设计出多种用于封装数据的方法。在这些方法中最简单的是那些旨在用于编码的数据被组织成文件并被作为完整的文件存储在存储器中的情况中的方法。在这种情况中,音频的封装可以简单地由在数据文件的开端处插入单个报头组成。该报头可以包括指示音频数据格式的数据以及各种其他数据。例如,音频数据交换格式(ADIF)通常与AAC数据一起使用以创建AAC文件。ADIF报头包括标识文件格式的字段以及与版权管理和特定于用于产生音频数据的音频编码方案的一些细节有关的其他数据。
已经开发了用于封装编码的音频数据的更复杂的方案以处理比如在网络环境中传输音频或多媒体流的情况。在网络流环境(例如可以结合因特网广播或在移动通信中找到)中,比如可以用因特网收音机或在移动通信中找到,音频解码器可能不能在任何给定的时间访问完整的音频数据文件。此外,为了数据传输目的,音频数据可以与其他多媒体数据(比如视频数据)交织。为了适应这些情况,已经设计了多种方案以用于封装音频数据,其中音频数据被组织成帧,比如图1中描绘的编码的音频帧72。这样的被设计为与AAC数据一起使用的方案的一个例子是音频数据传输流(ADTS)格式。该格式在MPEG-2的部分7和MPEG-4的部分3连同AAC中被标准化。ADTS格式化的数据通常被组织成数据流70,该数据流被组织成编码的音频帧72,其中每个编码的音频帧72包括报头80,如图1所示。
无论是否使用ADTS,本领域的技术人员也会认识到数据流可以包括除编码的音频之外的其他数据,例如视频数据。因此,一种使用格式化为一系列编码的音频帧72的音频数据的传输方案对于在数据流70中将音频数据与其他数据隔离开是有用的。因此,编码的音频帧72不需要被组织成连续的块。此外,ADTS和使用音频帧的其他传输方案不被限制于涉及数据网络中音频流的应用。尽管与较简单的格式(比如ADIF)相比,基于帧的格式(比如ADTS)使用更多的开销,然而这些基于帧的格式适合用于下列情况:其中音频数据被组织成文件并被存储在存储器中以用于取回和重放。因此,本公开所使用的术语“数据流”可以被组织成文件并被存储在存储器中的数据,或在流应用中(比如因特网广播(Internet radio))以下面的方式传输的数据:音频解码器不能在给定时间访问全部音频数据。
图2示出可以在数据流70的每个编码的音频帧72中找到的示范性报头80。报头80包括同步字82,其是用于指示帧报头存在的位的固定序列。在图2中,同步字82由12个“1”位的序列组成,其出现在帧报头的开端。ADTS格式使用如图2所描绘的报头,但是应当清楚,其他格式可以使用不同长度的同步字,这些同步字具有不同的数据,和/或与报头80一起出现在不同位置处。然而,同步字82的一致特征是,其结构和内容相对于给定的传输格式是固定的。因此,例如,每个针对ADTS格式化的数据流将包括报头80,其中每个报头包括相同的同步字82。
相反地,报头80内的其他字段可以根据数据流的不同而变化。例如,图2中的报头80包括ID字段,其包括单个位。该字段在ADTS中用于指示数据流70中的音频数据是否已经根据MPEG-2标准(ID字段=1)或MPEG-4标准(ID字段=0)编码。因此,该字段可以在不同的数据流之间变化。图2还示出层字段86(其在ADTS中固定为“00”),以及保护缺失字段(protection absent field)88(在ADTS中,为指示报头是否包括校验和的1位字段)和类字段(profile field)(90)(在ADTS中,为指示若干AAC编码方案中的哪一个已经用于编码音频数据的2位字段)。最后,图2中的报头80包括CRC(循环冗余码校验)校验和字段92,其在ADTS中是可选的并且可以用于验证报头的完整性。
本领域技术人员应当清楚,图2示出仅仅一个示范性报头结构。各种可替代方案是可能的,但是报头80典型地将包括同步字以及其他字段,其中同步字对于给定类型的所有数据流来说是固定值,而所述其他字段中的一些可以在给定类型的不同数据流70之间变化,并且一些可以在单个数据流70的不同报头80之间变化。例如,对于ADTS,在给定的数据流70内,ID字段84、层字段86、保护缺失字段88以及类字段90典型地将是固定的,但是对于不同的数据流70,这些字段中的一个或多个也不同。另一方面,从一个报头80到下一个报头,CRC字段92可以变化。因为一个或多个字段在数据流内可以是固定的,所以通常不仅可以预期在任意给定报头80中的同步字的值,还可以预期一个或多个其他字段的值,假设预先知道有效报头80的内容。
当处理数据流70时,可能必需的是,定位与帧报头80的开端相关联的帧分界74。尽管典型地以线性方式(即逐位或逐字)处理数据流70,但是数据流70中被破坏的数据(corrupted data)的存在可能使标识并定位随后的报头80成为必要,根据该定位可以继续数据流70的处理。此外,音频重放设备的更复杂的功能可能使重复标识报头成为必要,使得可以跳过一个或多个编码的音频帧72。例如,快进功能可能要求数据处理在数据流70中的任意位置处暂停,并且以位于沿着数据流70中更远处的编码的音频帧72重新开始。这样的功能可能要求,跳过编码的音频帧72直到发送了终止信号为止。可替代地,这样的功能可能要求,跳过预定数量的编码的音频帧72,并且在随后的编码的音频帧72处重新开始重放(即解码)。
典型地,可以顺序地扫描数据流70,并且可以搜索与同步字82匹配的位的序列的存在。因此,前进到下一个编码的音频帧72通常是简单的事情:在数据流70中前向扫描直到找到与同步字82匹配的一系列位为止,并且随后处理在匹配的位的位置处开始的编码的音频帧72。
然而,在给定任意实际长度的同步字82的情况下,匹配同步字82的位序列可以不被限制于报头80的同步字位置。这些序列可以在编码的音频数据内的随机位置处出现。在实践中,例如在ADTS格式化的数据中经常观察到这些序列的随机出现。
结果,依赖于前述用于定位帧分界74的技术的对编码的音频的任何处理可能经受不可接受频率的误检测。用于从这样的误检测中恢复的一种方法是,一旦检测到与同步字的匹配,便解析应当通常对应于报头80余下部分的一系列数据位,并且如果这些位解析正确,则继续处理随后的音频数据。该解析可以包括CRC校验和字段92的评价,其验证了报头80的完整性,并且因此隐含地验证有效报头80已经被定位。
然而,解析完整的报头80是耗时的。因此,在处理周期受限的处理环境中,从频繁的帧分界误检测中恢复可能是非常不希望的,甚至在帧分界的误检测的频率相对较低时也是如此。
图3示出可以用在本发明的某些实施例的匹配模式60的结构。匹配模式60包括与在目标数据流70的有效编码的音频帧72中找到的同步字82相同的同步字62。匹配模式60还包括对应于在数据流70中的有效编码的音频帧72的报头80中找到的一个或多个字段的期望值的附加位64。附加数据位64的内容将在下面进一步讨论。所述附加数据位可以用于有效地扩展同步字。因为误检测的频率直接与同步字的长度有关,所以同步字的扩展降低了误检测的频率。
图4示出在本发明的一个或多个实施例中用于处理数据流70中的编码的音频帧72的示范性方法。首先,使用已知的对应于数据流70的信息生成匹配模式60(方框100)。特别地,匹配模式包括对应于在目标数据流70的所有有效报头80中找到的同步字82的同步字62。例如,如果目标数据流70是ADTS格式化的数据流,则同步字62将由12个“1”的序列组成。
方框100中生成的匹配模式60还包括一个或多个附加位64。这些附加位64包括在特定数据流70的有效报头80中找到的一个或多个字段的期望值。如上所述,报头80的某些字段的值在特定数据流70内将是固定的,即使这些字段的值可以在相同类型的不同数据流70之间变化。因此,如果这些字段的值对于给定数据流70的一个报头80是已知的,则可以期望这些值在该数据流70的所有其他报头80中出现。
回到图2,可以看到ADTS报头例如包括ID字段84、层字段86、保护缺失字段88和类字段90。如果特定数据流70是针对ADTS而被格式化的,那么所有这些字段在该特定数据流70内通常是固定的。相反,CRC校验和字段92将从一个ADTS格式报头80到下一个而变化。
因此,音频解码器可以产生与ADTS格式的数据流70一起使用的匹配模式60,该匹配模式60包括12位的同步字62和对应于ID字段84、层字段86、保护缺失字段88和类字段90中一个或多个的期望值的附加位64。在该非限制性例子中,所得的匹配模式60的长度为18位。可替代地,匹配模式60可以包括12位同步字62,加上对应于仅ID字段84、层字段86和保护缺失字段88的期望值的附加位64。在这种情况下,匹配模式60的长度是16位或2个字节。该长度在本发明的一些实施例中可能更加适宜。
图4的方框100示出匹配模式60的生成。匹配模式60可以从同步字62和附加位64的各种组合来构建。如前面所述,这些附加位对应于包含在特定数据流70中的有效编码的音频帧72中的一个或多个报头字段的期望值。可以基于关于目标数据流70的先验信息预期那些报头字段的值。该先验信息可以从解析包含在目标数据流70中的一个报头80的内容获得,或者从单独提供的、并与特定目标数据流70有关的信息获得。例如,在流环境中,作为音频流的来源的计算机服务器可以提供描述分别来自数据流70本身的音频流的参数。这些参数可以指示例如数据流70包含按照MPEG-2标准进行AAC编码的数据,以及数据流70不包含报头80中的CRC校验和字段92。因此,不管这些参数如何被格式化,可以确定包含在报头80内的若干报头字段的期望值,且不用首先解码报头80。因此,音频解码器可以使用由解码报头80获得的信息来生成匹配模式60,或者使用源自单独提供的信息的数据来生成匹配模式60。
图4进一步示出通过在数据流70的一部分中搜索匹配模式60的一个实例来检测帧分界74(方框102)。该搜索可以以与上述同步字搜索相似的方式进行,即通过顺序地扫描数据流70而寻找匹配所述匹配模式60的位的序列来进行搜索。这可以例如通过顺序地经由长度等于匹配模式的长度的移位寄存器移位数据流来完成。在每个周期中,可以将移位寄存器的内容与匹配模式60进行比较;匹配将指示检测到了帧分界。可替代地,数据流70的片段可以由配置为将匹配模式60与该片段中每个可能的位置进行比较的处理器从存储器取回,于是,匹配指示检测到了帧分界。上面的例子是说明性的,且不是限制性的。数据处理领域的技术人员将认识到,各种用于在数据流70的一部分中搜索匹配模式60的一个实例的技术是可能的。
无论如何,因为匹配模式60比同步字62长,所以匹配模式60与数据流70之间随机匹配的可能性低于单独使用同步字62来完成匹配的情况。根据包括在匹配模式60中的附加位64的数量,可以大大降低误检测的概率。例如,假设编码的音频数据一般是随机的,那么使用16位的匹配模式60将使误检测率降低超过93%。当然,在实践中,所述改进可能会变化,然而甚至对于相对较少数量的附加位64,误检测率将显著降低。
方框102中所示的检测步骤可以可选地包括在数据流70中搜索匹配模式60的多次出现。在一个示范性方法中,顺序地在数据流70的一部分中搜索预定数量的匹配模式60的实例,并且所检测到的帧分界74对应于最后一个实例。例如,该方法的应用可能要求跳过5个帧。在这种情况下,检测步骤将包括在数据流70中搜索匹配模式60的5个连续的实例;所检测到的帧分界74将对应于上述5个连续的实例中的最后一个。
在本发明的可替代实施例中,可以顺序地在数据流70中搜索匹配模式60的多个实例,直到接收到终止信号为止。在该实施例中,在接收到终止信号之前,所检测到的帧分界74可以对应于所检测到的匹配模式60的最后一个实例。
在本发明的又一个实施例中,数据流70中匹配模式60的实例的每个检测可能触发指示匹配已经出现的信号,使得该信号可以用于生成终止信号。例如,可以在数据流70中快速地搜索匹配模式60的多个实例。每个匹配可以导致信号产生脉冲,从而可以计数该脉冲,产生指示所检测的匹配的数量的参数。给定的应用可能要求例如跳过6个帧,并且因此使得搜索继续直到计数了60个匹配,这时该应用生成终止信号。因此,在该例子中,所检测到的帧分界74可以对应于在接收到终止信号之前检测的匹配模式60的最后一个实例。
在已经检测到帧分界74之后,可以继续处理随后的编码的音频帧72。在本发明的一些实施例中,在音频数据被解码之前,可以使得包含在对应于所检测到的帧分界74的编码的音频帧72中的报头80生效,如方框104所示。例如,可以评价CRC校验和字段92以证实报头80被正确地接收。万一发生帧误检测(利用本发明的实施例,发生的可能性不大,但仍然可能发生),对CRC校验和字段92的评价将几乎必定失败,这指示:或者数据被破坏,或者帧分界74的检测失败。因此,对CRC校验和字段92的评价用于验证所检测到的帧分界74对应于有效报头80。
用于验证所检测到的帧分界74对应于有效报头的其他技术也是可能的。例如,如果报头80包含指示帧长度的信息,则处理器可以在数据流中预测未来以验证有效同步字是存在的,其中期望随后的报头80。然而,应当注意,用于验证所检测到的帧分界74对应于有效报头的任何处理通常将需要附加的处理步骤。因此,根据本公开的教导减少误检测也将减少专用于验证帧分界检测的处理步骤。
如果所检测到的帧报头是有效的,则在数据流中对应于所检测到的帧分界74的点处开始对编码的音频帧72进行解码,如方框106所示。根据适用的编码方案实施对编码的音频帧72的解码。因此,例如使用AAC解码器来对由AAC编码器编码的编码的音频帧72进行解码。
图5示出根据本发明的一个或多个实施例的示范性音频解码器的简化框图。解码器50至少包括控制逻辑块52、匹配模式发生器54、帧分界检测器56和帧解码器58。示出了解码器50具有到存储器40的接口,并且产生解码的音频输出。
控制逻辑块52提供对解码器50的整体控制。它可以提供用于启动和/或终止音频解码的触发器。它还可以包括用于用户接口的逻辑,比如键区或触摸屏,以允许用户对解码器50进行控制。可替代地或附加地,控制逻辑52可以包括应用程序接口(API)的实现以用于与单独的软件程序或程序模块进行通信。
匹配模式发生器54被配置为生成与目标数据流70一起使用的匹配模式60,如上所述。匹配模式发生器54设有与数据流70相关的信息,数据流70包括用在目标类型的数据流中的同步字82。此外,匹配模式发生器54设有与目标数据流70中有效报头80中的至少一个报头字段的期望值相关的信息。如上所述,该信息可以从实际地阅读在目标数据流70中的报头80获得,或者可以从单独提供的关于数据流70的信息中获得。在这两种情况中的任意一种情况下,匹配模式发生器54构建匹配模式60,其包括同步字62(其等同于同步字82)和对应于有效报头80中的一个或多个报头字段的期望值或多个期望值的附加字段64。
帧分界检测器56使用匹配模式60来在数据流的一部分中搜索匹配模式60的一个实例。匹配模式60的每个实例通常将对应于帧分界74。在本发明的一些实施例中,帧分界检测器74将在匹配模式60的第一实例处停止其搜索,从而产生对应的所检测到的帧分界74。在其他实施例中,帧分界检测器56可以被配置为继续对数据流70进行搜索,以检测匹配模式60的多个实例,直到它从控制逻辑52接收到终止信号为止。在该例子中,所检测到的帧分界74可以对应于在接收到终止信号之前最后检测到的匹配模式60的实例。
可替代地,如上所述,帧分界检测器56可以被配置为在数据流70中搜索预定数量的匹配模式60的实例;在这种情况下,所检测到的帧分界74可以对应于最后检测到的实例。
无论如何,帧分界检测器56将与所检测到的帧分界74有关的信息传递到帧解码器58。帧解码器58使用合适的解码器算法对一个或多个编码的音频帧72进行解码。帧解码器58产生解码的音频输出,其可以包括未被压缩的数字音频流,例如脉冲码调制(PCM)音频流,以供音频应用使用并且/或者用于转换为模拟音频。
解码器50可以与存储器40接口以访问数据流70。数据流70可以被组织成文件并且存储在存储器40中,在这种情况下存储器40可以是随机存取存储器或非易失性存储器,比如闪存或磁盘驱动器。数据流70还可以从数据网络上的多媒体源或流音频获得,在这种情况下,存储器40最有可能为缓冲数据流70的一部分的随机存取存储器。
控制逻辑块52、匹配模式发生器54、帧分界检测器56和帧解码器58可以使用数字逻辑硬件或运行在微处理器上的软件或二者的组合来实现。任何块可以通过专用处理器实现,或者若干块可以通过单个处理器实现。特别地,帧解码器58可以使用专用数字信号处理器(DSP)实现,但是所述块中的任意一个可以整体地或部分地使用通用微处理器或DSP实现。此外,任何块的功能都可以在两个或更多处理器或硬件块之间分割,而不脱离本发明的精神。
本领域技术人员应当理解,本发明宽泛地提供了用于快速有效地检测用在音频解码器中的编码的音频数据流中的帧分界的方法和设备。当然,在不脱离本发明的范围和本质特征的情况下,可以通过除本文所提出方法之外的其他特定方法来实施本发明。因此,本发明不限于上面详细描述的特征和优点,而且不受附图的限制。事实上,本发明仅仅由所附权利要求及其法律等价物限定。
Claims (18)
1.一种用于解码数据流(70)中的编码的音频帧(72)的方法,每个帧(72)包括报头(80),该方法包括下列步骤:
生成匹配模式(60),该匹配模式包括同步字(62)和对应于有效编码的音频帧(72)中的报头(80)字段的至少一个期望值的一个或多个附加位(64);
通过在所述数据流(70)的一部分中搜索所述匹配模式(60)的实例来检测帧分界(74);以及
解码在所述数据流(70)中对应于所检测到的帧分界(74)的点处开始的一个或多个编码的音频帧(72)。
2.权利要求1的方法,其中检测帧分界(74)包括搜索预定数量的所述匹配模式(60)的实例,并且其中所检测到的帧分界(74)对应于搜索到的预定数量的实例的最后一个。
3.权利要求1的方法,进一步包括接收终止信号,其中检测帧分界(74)包括在所述数据流(70)的一部分中搜索所述匹配模式(60)的实例,直到接收到终止信号为止。
4.权利要求3的方法,其中检测帧分界(74)包括检测对应于在收到所述终止信号之前所检测到的所述匹配模式(60)的最后实例的帧分界(74)。
5.权利要求4的方法,进一步包括提供用于生成所述终止信号的帧检测信号,该帧检测信号指示多个检测到的所述匹配模式(60)的实例。
6.权利要求1的方法,其中所述编码的音频帧(72)包括高级音频编解码器原始数据块。
7.权利要求6的方法,其中所述帧报头(80)包括音频数据传输流(ADTS)报头,并且其中所述匹配模式(60)包括12位的同步字(62)和对应于1位ID字段(84)、2位层字段(86)和1位保护缺失字段(88)的期望值的附加位(64)。
8.权利要求1的方法,进一步包括检测音频处理误差并标识所述数据流(70)中对应于所述音频处理误差的误差位置;其中在所述数据流(70)的一部分中搜索所述匹配模式(60)的实例开始于所述误差位置。
9.权利要求1的方法,其中检测帧分界(74)包括验证所检测到的帧分界(74)对应于有效报头(80)。
10.权利要求9的方法,其中验证所检测到的帧分界(74)对应于有效报头(80)包括评价循环冗余校验和位以证实所检测到的帧分界(74)对应于有效报头(80)。
11.一种用于解码数据流(70)中的编码的音频帧(72)的音频解码器(50),包括:
匹配模式发生器(54),其被配置为生成匹配模式(60),该匹配模式包括同步字(62)和对应于有效编码的音频帧(72)中的报头字段的至少一个期望值的一个或多个附加位(64);
帧分界检测器(56),其被配置为在所述数据流(70)的一部分中搜索所述匹配模式(60)的实例以检测帧分界(74);以及
帧解码器(58),其被配置为解码在所述数据流(70)中对应于所检测到的帧分界(74)的点处开始的一个或多个编码的音频帧(72)。
12.权利要求11的音频解码器(50),其中所述帧分界检测器(56)被配置为搜索预定数量的所述匹配模式(60)的实例,并且其中所检测到的帧分界(74)对应于搜索到的预定数量的实例中的最后一个。
13.权利要求11的音频解码器(50),其中所述帧分界检测器(56)被配置为接收终止信号,并且其中所述帧分界检测器(56)被进一步配置为搜索所述匹配模式(60)的实例,直到接收到终止信号为止。
14.权利要求13的音频解码器(50),其中所述帧分界检测器(56)被进一步配置为提供用于生成所述终止信号的帧检测信号,该帧检测信号指示多个检测到的所述匹配模式(60)的实例。
15.权利要求11的音频解码器(50),其中所述编码的音频帧(72)包括音频数据传输流(ADTS)报头,并且其中所述匹配模式发生器(54)被配置为生成包括12位的同步字(62)和对应于1位ID字段(84)、2位层字段(86)和1位保护缺失字段(88)的期望值的附加位(64)的匹配模式(60)。
16.权利要求11的音频解码器(50),进一步包括被配置为检测音频处理误差并标识所述数据流中对应于所述音频处理误差的误差位置的解码误差检测器;其中所述帧分界检测器(56)被进一步配置为在所述误差位置处开始搜索。
17.权利要求11的音频解码器(50),其中所述帧分界检测器(56)被进一步配置为验证所检测到的帧分界(74)对应于有效报头(80)。
18.权利要求17的音频解码器(50),其中所述帧分界检测器(56)被配置为通过评价所述数据流(70)中的循环冗余校验和位以证实所检测到的帧分界(74)对应于有效报头(80)来验证所检测到的帧分界(74)对应于有效报头(80)。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/741,297 US7778839B2 (en) | 2007-04-27 | 2007-04-27 | Method and apparatus for processing encoded audio data |
US11/741,297 | 2007-04-27 | ||
PCT/US2008/052581 WO2008134103A1 (en) | 2007-04-27 | 2008-01-31 | Method and apparatus for processing encoded audio data |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101675473A CN101675473A (zh) | 2010-03-17 |
CN101675473B true CN101675473B (zh) | 2012-07-11 |
Family
ID=39563226
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008800136447A Expired - Fee Related CN101675473B (zh) | 2007-04-27 | 2008-01-31 | 用于处理编码的音频数据的方法和装置 |
Country Status (7)
Country | Link |
---|---|
US (1) | US7778839B2 (zh) |
EP (1) | EP2149138B1 (zh) |
JP (1) | JP4875204B2 (zh) |
CN (1) | CN101675473B (zh) |
AT (1) | ATE478417T1 (zh) |
DE (1) | DE602008002254D1 (zh) |
WO (1) | WO2008134103A1 (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8700823B2 (en) * | 2007-03-15 | 2014-04-15 | Broadcom Corporation | Software driver interconnect framework |
EP2131590A1 (en) * | 2008-06-02 | 2009-12-09 | Deutsche Thomson OHG | Method and apparatus for generating or cutting or changing a frame based bit stream format file including at least one header section, and a corresponding data structure |
US8527267B2 (en) * | 2008-12-04 | 2013-09-03 | Linear Accoustic, Inc. | Adding additional data to encoded bit streams |
TWI384459B (zh) * | 2009-07-22 | 2013-02-01 | Mstar Semiconductor Inc | 音框檔頭之自動偵測方法 |
US9031850B2 (en) * | 2009-08-20 | 2015-05-12 | Gvbb Holdings S.A.R.L. | Audio stream combining apparatus, method and program |
AU2011240024B2 (en) * | 2010-04-13 | 2014-09-25 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Method and encoder and decoder for gap - less playback of an audio signal |
US20120185604A1 (en) * | 2011-01-14 | 2012-07-19 | Alexander Shatsky | System and method for indicating callee preferences |
TWI480860B (zh) * | 2011-03-18 | 2015-04-11 | Fraunhofer Ges Forschung | 音訊編碼中之訊框元件長度傳輸技術 |
US20170099119A1 (en) * | 2015-10-02 | 2017-04-06 | Samsung Electronics Co., Ltd. | Signalling of checksum for 802.11 mac headers |
US11258576B2 (en) * | 2017-05-26 | 2022-02-22 | Harbin Hytera Technology Corp., Ltd. | Method, device, transmitter, and receiver for detecting syncwords |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1110891A (zh) * | 1993-06-10 | 1995-10-25 | 诺基亚电信公司 | 语音译码方法和语音译码器 |
US6421646B1 (en) * | 1999-01-12 | 2002-07-16 | Texas Instruments Incorporated | Probabilistic method and system for verifying synchronization words |
CN1450738A (zh) * | 2002-04-08 | 2003-10-22 | 松下电器产业株式会社 | 多媒体数据解码装置 |
US6721710B1 (en) * | 1999-12-13 | 2004-04-13 | Texas Instruments Incorporated | Method and apparatus for audible fast-forward or reverse of compressed audio content |
CN1575491A (zh) * | 2001-10-23 | 2005-02-02 | 汤姆森许可贸易公司 | 用于解码帧中所设置的编码数字音频信号的方法和设备 |
CN1649293A (zh) * | 2004-01-27 | 2005-08-03 | 松下电器产业株式会社 | 流解码系统 |
EP1587063A2 (en) * | 2004-04-14 | 2005-10-19 | Microsoft Corporation | Digital media universal elementary stream |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2343778B (en) * | 1998-11-13 | 2003-03-05 | Motorola Ltd | Processing received data in a distributed speech recognition process |
US20020027845A1 (en) | 2000-09-05 | 2002-03-07 | Tomoko Sogabe | Reproduction apparatus, reproduction method, program, and recording medium |
CN100583239C (zh) * | 2003-02-28 | 2010-01-20 | 松下电器产业株式会社 | 再生装置及再生方法 |
TWI268666B (en) * | 2004-03-02 | 2006-12-11 | Ali Corp | Frame calculation method of decoded audio a frame calculation method of decoded audio obtaining a true frame length by referring to no padding bit |
JP2006317575A (ja) * | 2005-05-11 | 2006-11-24 | Matsushita Electric Ind Co Ltd | オーディオ復号装置 |
JP2008084382A (ja) * | 2006-09-26 | 2008-04-10 | Oki Electric Ind Co Ltd | 圧縮データ再生方法 |
-
2007
- 2007-04-27 US US11/741,297 patent/US7778839B2/en not_active Expired - Fee Related
-
2008
- 2008-01-31 CN CN2008800136447A patent/CN101675473B/zh not_active Expired - Fee Related
- 2008-01-31 WO PCT/US2008/052581 patent/WO2008134103A1/en active Application Filing
- 2008-01-31 DE DE602008002254T patent/DE602008002254D1/de active Active
- 2008-01-31 EP EP08728650A patent/EP2149138B1/en not_active Not-in-force
- 2008-01-31 AT AT08728650T patent/ATE478417T1/de not_active IP Right Cessation
- 2008-01-31 JP JP2010506343A patent/JP4875204B2/ja not_active Expired - Fee Related
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1110891A (zh) * | 1993-06-10 | 1995-10-25 | 诺基亚电信公司 | 语音译码方法和语音译码器 |
US6421646B1 (en) * | 1999-01-12 | 2002-07-16 | Texas Instruments Incorporated | Probabilistic method and system for verifying synchronization words |
US6721710B1 (en) * | 1999-12-13 | 2004-04-13 | Texas Instruments Incorporated | Method and apparatus for audible fast-forward or reverse of compressed audio content |
CN1575491A (zh) * | 2001-10-23 | 2005-02-02 | 汤姆森许可贸易公司 | 用于解码帧中所设置的编码数字音频信号的方法和设备 |
CN1450738A (zh) * | 2002-04-08 | 2003-10-22 | 松下电器产业株式会社 | 多媒体数据解码装置 |
CN1649293A (zh) * | 2004-01-27 | 2005-08-03 | 松下电器产业株式会社 | 流解码系统 |
EP1587063A2 (en) * | 2004-04-14 | 2005-10-19 | Microsoft Corporation | Digital media universal elementary stream |
Also Published As
Publication number | Publication date |
---|---|
US20080270143A1 (en) | 2008-10-30 |
WO2008134103A1 (en) | 2008-11-06 |
EP2149138B1 (en) | 2010-08-18 |
CN101675473A (zh) | 2010-03-17 |
EP2149138A1 (en) | 2010-02-03 |
US7778839B2 (en) | 2010-08-17 |
JP4875204B2 (ja) | 2012-02-15 |
JP2010525414A (ja) | 2010-07-22 |
DE602008002254D1 (de) | 2010-09-30 |
ATE478417T1 (de) | 2010-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101675473B (zh) | 用于处理编码的音频数据的方法和装置 | |
CN102160378B (zh) | 对被高度压缩的增强层数据进行同步的方法和装置 | |
CN101321279B (zh) | 处理数据的方法和系统 | |
KR100946057B1 (ko) | 데이터 프레임에 코딩된 부가 데이터의 존재 결정 | |
US20010005385A1 (en) | Multimedia information communication apparatus and method | |
JP2004507147A (ja) | 低時間遅れデータエンコーダ | |
CN101506837B (zh) | 用于时间同步的方法及系统 | |
US20010033237A1 (en) | Decoding device and method | |
US7940807B2 (en) | Methods, decoder circuits and computer program products for processing MPEG audio frames | |
CN109743581B (zh) | 编码端处理方法、解码端处理方法及防止伪起始码的方法 | |
Sharma et al. | Watermark synchronization: Perspectives and a new paradigm | |
KR100500196B1 (ko) | 멀티미디어 메타데이터의 오류 내성 부호화/복호화 장치및 방법 | |
US20110022399A1 (en) | Auto Detection Method for Frame Header | |
CN100449950C (zh) | 鲁棒性信号编码 | |
TW201349879A (zh) | 音訊解碼方法及音訊解碼裝置 | |
US6879635B2 (en) | Method of decoding time information of video image | |
CN109997310A (zh) | 通过用修改后的有效载荷校验和加扰有效载荷来避免错误同步的记录和回放设备 | |
KR101438387B1 (ko) | 서라운드 확장 데이터 부호화 및 복호화 방법 및 장치 | |
US20050100122A1 (en) | Method and related apparatus for searching the syncword of a next frame in an encoded digital signal | |
RU2793832C2 (ru) | Способ аудиокодирования и способ аудиодекодирования | |
US8767832B2 (en) | Method and apparatus for processing a multimedia bitstream | |
JP2005130352A (ja) | 復号化装置 | |
KR101182851B1 (ko) | 멀티미디어 컨텐츠 처리 방법 및 장치 | |
KR100632532B1 (ko) | 오디오 프레임 인식방법 | |
WO2010102444A1 (en) | Method and apparatus for processing a multimedia bitstream |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120711 Termination date: 20170131 |
|
CF01 | Termination of patent right due to non-payment of annual fee |