CN1467726A - 媒体播放器的录放控制器的输入缓冲器的管理方法 - Google Patents

媒体播放器的录放控制器的输入缓冲器的管理方法 Download PDF

Info

Publication number
CN1467726A
CN1467726A CNA021514461A CN02151446A CN1467726A CN 1467726 A CN1467726 A CN 1467726A CN A021514461 A CNA021514461 A CN A021514461A CN 02151446 A CN02151446 A CN 02151446A CN 1467726 A CN1467726 A CN 1467726A
Authority
CN
China
Prior art keywords
data
main
frame
zone
media
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.)
Granted
Application number
CNA021514461A
Other languages
English (en)
Other versions
CN1279530C (zh
Inventor
林宗瑶
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
MediaTek Beijing Inc
MediaTek Inc
Original Assignee
MediaTek Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by MediaTek Inc filed Critical MediaTek Inc
Publication of CN1467726A publication Critical patent/CN1467726A/zh
Application granted granted Critical
Publication of CN1279530C publication Critical patent/CN1279530C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/439Processing of audio elementary streams
    • H04N21/4392Processing of audio elementary streams involving audio buffer management
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/22Signal processing not specific to the method of recording or reproducing; Circuits therefor for reducing distortions
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/102Programmed access in sequence to addressed parts of tracks of operating record carriers
    • G11B27/105Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/30Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on the same track as the main recording
    • G11B27/3027Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on the same track as the main recording used signal is digitally coded
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4334Recording operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8106Monomedia components thereof involving special audio data, e.g. different tracks for different languages
    • H04N21/8113Monomedia components thereof involving special audio data, e.g. different tracks for different languages comprising music, e.g. song in MP3 format
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/10537Audio or video recording
    • G11B2020/10546Audio or video recording specifically adapted for audio data
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • G11B2020/10675Data buffering arrangements, e.g. recording or playback buffers aspects of buffer control
    • G11B2020/10685Data buffering arrangements, e.g. recording or playback buffers aspects of buffer control input interface, i.e. the way data enter the buffer, e.g. by informing the sender that the buffer is busy
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/60Solid state media

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

一种MP3播放器的录放控制器的输入缓冲器的管理方法,包括:(1)将加法计算器初始化为零;(2)从音频帧中寻找同步字;(3)对帧头进行解码;(4)计算main_data区域的大小;以及(5)对选定的音频数据进行解码。其中如果该加法计算器所记录的值小于该音频帧的main_data_begin区域所记录的值时,则将该main_data区域存储至该输入缓冲器中,并将该main_data区域的大小加入该加法计算器中,并重复上述步骤以开始搜索下一个音频帧的同步字,直到该加法计算器所记录的值大于或等于目前音频帧的main_data_begin区域所记录的值为止。由此可正常地获取解码该音频帧时所需的所有音频数据,使得MP3播放器可正常地解码和进行音频播放。

Description

媒体播放器的录放控制器的输入缓冲器的管理方法
技术领域
本发明是提供一种动态影像压缩标准音频层III(MP3)播放器的录放控制器的输入缓冲器的管理方法,尤指一种预先存储足够的main_data区域的数据以进行解码的方法,而使得该MP3播放器可从任一个音频帧或起始音频帧开始播放MP3文件。
背景技术
动态影像压缩标准音频层III(Motion Picture Experts Group Layer IIIAudio,MP3)是符合国际标准化组织及国际电子技术协会(InternationalOrganization for Standardization and International Electrotechnical Commission,ISO/IEC)的高音质且高解码效能(组译效能)的一种音频标准。
参考图1,图1为MP3播放器10读取MP3文件的示意图。MP3文件是存储于光盘驱动器上的光盘中,而MP3播放器10包括一个语法分析器(parser)101、输入缓冲器(input buffer)102、MP3解码器(decoder)103。其中,MP3解码器103是用来解码经由光盘驱动器、语法分析器101及输入缓冲器102所传送过来的MP3文件中的音频帧(frames)。
请参考图2,图2为MP3文件的数据结构图。每一个MP3文件包括由多个媒体帧所构成的帧串,每一个媒体帧在此定义为一个音频帧,每一个音频帧是MP3文件用来计算数据量的单位,且存储有足够的数据量以供解码(decode)以及产生一定数量的音频取样(audio samples)之用。以图2中音频帧7为例,音频帧7包括帧头71、错误检查码72、取样数据73以及附加数据74。帧头71是32比特(bits)长度的比特串,并包括12比特长度的同步字711。此外,帧头71的32比特的其中2比特是用来记录取样频率,其中4比特用来记录压缩比率,而其它比特则记录一些相关信息。并非每MP3文件都包括错误检查码72,MP3文件制作者在制作MP3文件时,可选择是否要使MP3文件内附有错误检查码72,而错误检查码72是16比特的比特串,用来作为检测错误之用。取样数据73包括了解码此音频帧7的音频取样时所必须的一些数据,而附加数据74则包括一些其它与音频数据无关的数据。取样数据73包括main_data_begin区域731、audio_data区域732以及main_data区域733,其中main_data_begin区域731的作用将在下面说明,audio_data区域732是用来存储一些解码时所应用到的算法的参数数据,而main_data区域733包括一些经过编码的音频取样数据。此外,audio_data区域732以及main_data区域733所存储的数据量可能会因对应于不同的音频帧而有所变化。
需特别说明的是,并非每种音频在被压缩之后都需相同大小的空间来存储。例如,在相同时间间隔内压缩在安静环境下所录制的音源而产生的文件大小会比压缩管弦乐的音源而产生的文件小很多。因此,当编码MP3的音乐时,MP3的标准允许main_data区域733的溢出值记录到音频帧7上游其它音频帧中所未使用到的数据存储空间,以完整地使用到全部的音频。
举例来说,main_data区域733实际的数据容量大小为100字节(bytes),而解码音频帧7时所需的总音频取样是203字节,因此会有103字节的数据存储至位于音频帧7上游其它音频帧中的main_data区域(如音频帧6的main_data区域633)。然而假使main_data区域633的剩余空间仍不足以存储这103字节的数据,则其它所剩下的尚未存储的字节将会存储至音频帧5的main_data区域533中。此外,音频帧7的main_data_begin区域731会记录一个数值为103的数据,以标示出音频帧7的溢出值的大小(103字节)。此外,若main_data区域633的大小只有70个字节,则表示还另有33个字节大小的溢出值,而这33个字节大小的溢出值会被再度存储至音频帧5的main_data区域533中。此外,为避免MP3文件出错,依据MP3的标准,凡MP3文件的第一个音频帧(如图2中的音频帧1)其main_data_begin区域所记录的值必须为零。
为正确地解码MP3文件的音频帧,MP3解码器有时会需要一些位于上游音频帧的数据来解码特定的音频帧,因此,MP3解码器通常会预先读取MP3文件的第一个音频帧的数据以开始解码。然而,在某些播放模式下(例如:循环播放模式、倒带播放模式),语法分析器101会无法从第一个音频帧开始提供数据给MP3解码器以进行解码,且在某些情形下,MP3文件会受到破坏而使得main_data_begin区域无法存储正确的数据,上述的这些情况都会使得MP3解码器无法顺利地读取第一个音频帧。然而,一旦MP3解码器忽略main_data_begin区域所记录的数据而直接将音频帧解码,会使得MP3解码器无法完全正确地解码并使得刚开始所播放出来的音效出现爆音。
发明内容
因此本发明最主要的目的是提供一种MP3播放器的录放控制器的输入缓冲器的管理方法,以解决上述的问题。
简要地说,本发明的方法是用于管理媒体播放器的输入缓冲器以播放媒体文件。其中,该媒体文件包括由多个媒体帧所构成的帧串,而每一个媒体帧包括至少一个main_data区域及一个main_data_begin区域。该main_data区域包括编码取样,而该main_data_begin区域是用来表示该main_data区域的一个溢出值。该媒体播放器包括一个语法分析器、输入缓冲器、一个解码器以及一个加法计算器。该语法分析器可以将该帧串分析后传送至该解码器,并且可以通知该解码器从该媒体文件的始起端或中间点开始解码。本发明的方法包括:(1)如果该解码器被通知从该媒体文件的中间点开始解码时,则(a)从该帧串中定位第一媒体帧,该第一媒体帧包括第一main_data区域及第一main_data_begin区域,如果该加法计算器所记录的值小于该第一main_data_begin区域所记录的值时,则将该第一main_data区域的大小加入该加法计算器中,并将该第一main_data区域存储至该输入缓冲器中;并且,(b)从该帧串中定位第二媒体帧,该第二媒体帧是位于该第一媒体帧的下游,该第二媒体帧包括第二main_data区域及第二main_data_begin区域,如果该加法计算器所记录的值等于或大于该第二main_data_begin区域所记录的值时,则通过存储于该输入缓冲器中的第一main_data区域以及该第二main_data区域由该第二媒体帧开始对该帧串进行解码;以及(2)如果该解码器被通知从该媒体文件的起始点开始解码时,则从该帧串中定位第三媒体帧,该第三媒体帧包括第三main_data区域及第三main_data_begin区域,并由该第三媒体帧开始对该帧串进行解码,而其中该第三main_data_begin区域所记录的值为零。
本发明还提供一种管理媒体播放器的输入缓冲器以播放媒体文件的方法,该媒体文件包括由多个媒体帧所构成的帧串,每一个媒体帧包括至少一个main_data区域及一个main_data_begin区域,其中该main_data区域包括编码取样,而该main_data_begin区域是用来表示该main_data区域的一个溢出值,该媒体播放器包括该输入缓冲器以及一个加法计算器,该方法包括:
从该帧串中定位第一媒体帧,该第一媒体帧包括第一main_data区域及第一main_data_begin区域,如果该加法计算器所记录的值小于该第一main_data_begin区域所记录的值时,则将该第一main_data区域的大小加入该加法计算器中,并将该第一main_data区域存储至该输入缓冲器中;
从该帧串中定位第二媒体帧,该第二媒体帧是位于该第一媒体帧的下游,该第二媒体帧包括第二main_data区域及第二main_data_begin区域,如果该加法计算器所记录的值等于或大于该第二main_data_begin区域所记录的值时,则通过存储于该输入缓冲器中的第一main_data区域以及该第二main_data区域从该第二媒体帧开始对该帧串进行解码。
本发明还提供一种管理MP3录放控制器的输入缓冲器以播放MP3文件的方法,该MP3文件包括由多个音频帧所构成的帧串,每一个音频帧包含数据,该方法包括:
从该帧串中定位位于下游的音频帧,如果一个加法计算器所记录的值小于该音频帧的一个main_data_begin区域所记录的值时,则将该main_data区域的大小加入该加法计算器中,并将该main_data区域存储至该输入缓冲器中,以供后续解码时作为参考之用。
本发明还提供一种用来解码及输出MP3文件的MP3播放器,该MP3播放器包括:
输入缓冲器,用来存储MP3音频帧的一个main_data区域,以供后续解码时作为参考之用;
录放控制器,用来管理该输入缓冲器,该录放控制器可决定是否利用全部存储于该输入缓冲器的main_data区域来对该MP3音频帧进行解码。
通过本发明的方法,不论从媒体文件任何一点开始播放或倒带播放,都不会出现如先前技术中发出爆音的情形,而使得播放品质得到完善地控制。
附图说明
图1为MP3播放器读取MP3文件的示意图。
图2为MP3文件的数据结构图。
图3为根据本发明的某一实施例的流程图。
图示的符号说明
1~8 音频帧       10 MP3播放器
51 帧头           52 错误检查码
53 取样数据       54 附加数据
71 帧头           72 错误检查码
73 取样数据       74 附加数据
101 语法分析器    102 输入缓冲器
103 MP3解码器
531、731 main_data_begin区域
532、732 audio_data区域
533、733 main_data区域
711 同步字
具体实施方式
通过本发明,使用者可以从MP3文件的任何一个音频帧正向地或逆向地开始播放音乐,且不会产生爆音的情况。另外,本发明的方法只需在开始播放MP3文件时或使用者切换到其它的音频帧播放时,才会运用到。解码MP3文件的方式已为熟悉本技术领域者所公知,故以下的说明中不再对此部分多作描述。
参考图3,图3为根据本发明一个实施例的流程图。需要说明的是,实施本发明的方法时所需运用到的相关装置如图1中所示,且其所解码的MP3文件的数据结构如同图2中所示。其中,输入缓冲器102会随着MP3文件解码操作的进行,适时地清除一些本身所存储且已不再使用到的数据。在本实施例中,有两个参数会被用到,更详细的操作方式将于下面的说明中阐述。然而,需特别强调的是,运用其它数据类型的参数以及其它累加器(如:寄存器或计数器)来实施本发明的方法,仍然符合本发明的精神,也应属本发明专利所欲覆盖的范畴。此外,其它具有累加数目功能的装置,都应视为在本发明说明书中所述的加法计算器(totalizer)。
如图3所示,参数W被用来标示是否某一个起始音频帧已经被选定,而使目前所欲播放的音频所对应的音频帧可完整、正确地被解码并加以播放。在本实施例中,参数W可以是用布尔(Boolean)类型的数据,且会被初始化为“否(false)”,而其值为零。另一个参数A则被用来作为一个加法计算器(totalizer),用来记录已经存储至输入缓冲器102的main_data区域的大小的总和值。同样地,参数A开始时也会被初始化为零。当完成初始化参数W及参数A(步骤901)后,解码MP3文件的帧串的操作即可开始进行。
在本实施例中,是在选择音频帧7开始播放MP3文件的情况下所作出的说明。在本发明的下一个步骤902中,MP3播放器会从MP3文件中搜索第一个12比特长度的同步字711。当同步字711被定位后,音频帧7的帧头71将被解码出对应的压缩比及其它各种信息(即步骤903)。帧头71包括用来标示在解码音频帧7时是否需执行相关错误检查操作的一比特长度的数据,如需执行相关错误检查操作时,错误检查码72将被读取出来(即步骤904),但须说明的是,本发明的方法的应用并不局限于是否需读取错误检查码,利用错误检查码只是本发明各种附加的功能之一。接着,取样数据73会被解码,而main_data_begin区域731的数据会被读取,且main_data区域733所存储的数据量会被计算出(即步骤905)。此时,决定一个起始音频帧的操作即可开始,而是否执行此决定的操作是根据参数W的值来决定的(步骤907),进一步说,若参数W的值依然为否,这即表示所欲决定的起始音频帧尚未被发现,然而假使参数W的值为真(true),这即表示所欲决定的起始音频帧已经被发现,且之后不须再执行其它判断步骤而进一步地可象先前技术那样将MP3文件解码并输出(即步骤913)。然而,假使参数W的值依然为否,此即表示目前尚未有足够的数据量来播放音频帧7所对应的音频。
如果参数W的值依然为否,由此可知存在下列两种情况:其中一种情况是,此时所欲决定的起始音频帧尚未被发现;而另一种情况是,目前已存储在输入缓冲器102的数据量可获得。加法计算器A会记录目前已存储在输入缓冲器102的数据量。目前音频帧7的main_datab_egin区域731被用来标示由main_data区域733所存储的相关音频取样是否完整。如果main_data区域733所存储的相关音频取样不完整,而还有其它数据存储在音频帧7上游的其它音频帧之中时,则main_datab_egin区域731会记录音频帧7所溢出的数据量的大小(即前述的溢出值)。举例来说,如果解码音频帧7所需的总音频取样量为203个字节,而main_data区域733可用来存储数据的空间只有100个字节时,则一个数值为103的值会记录到main_data_begin区域731之中,以表示音频帧7尚有103个字节的数据是存储在其上游其它音频帧的main_data区域之中。因此,MP3解码器103必须将存储在上游音频帧中的音频取样定位并加以解码。此外,main_data_begin区域731所记录的值可视为以字节为单位的情况下相对于起始音频帧且数值为负值的位移,而在下面的步骤中将针对加法计算器A所记录的数值大小是否大于或等于目前音频帧7的main_data_begin区域731所记录的值来加以判别。
当语法分析器101分析MP3文件的帧串并将其所分析的结构传送至MP3解码器103时,语法分析器101同时也会通知MP3解码器103需从MP3文件起始点或中间点开始对音频取样进行解码(即步骤908)。当MP3解码器103被通知需从MP3文件的中间点开始对音频取样进行解码时,假使加法计算器A所记录的数值大小已经大于或等于目前音频帧7的main_data_begin区域731所记录的数值时,此即表示目前输入缓冲器102已经存储有足够的音频取样数据,使得MP3解码器103可依据输入缓冲器102所存储的音频取样数据正确地对音频帧7进行解码的操作。因此,参数W的值会变成“真”,以表示MP3文件的帧串至此之后可被正确地解码(即步骤913)。
另一方面,如果加法计算器A所记录的数值大小是小于目前音频帧7的main_data_begin区域731所记录的数值时,此即表示目前输入缓冲器102尚未存储有足够的音频取样数据以使得MP3解码器103可依据输入缓冲器102所存储的音频取样数据正确地对音频帧7进行解码的操作。因此,音频帧7的main_data区域733的大小会被加入到加法计算器A内,而求和后的结果会存储至加法计算器A内(即步骤911)。此外,main_data区域733会被存储至输入缓冲器102内,以作为MP3解码器103进行解码时的参考依据。
在起始音频帧尚未被搜索到的情形下,MP3解码器103会重复上述各步骤(如:定位下一个音频帧的同步字、将帧头及音频取样解码等等)。假使读取下一个音频帧数据并加以判断后,加法计算器A所记录的值仍然小于此音频帧的main_data_begin区域所记录的数值时,即表示此音频帧的main_data区域的大小会累加至加法计算器A,且MP3解码器103会再次开始搜索下一个同步字。以上的步骤会一直重复执行,直到MP3解码器103搜索到符合“其main_data_begin区域所记录的数值大于或等于加法计算器A所记录的值”的条件的音频帧为止。此时,MP3解码器103即拥有足够的数据来对MP3文件进行解码,以输出音频。
当语法分析器101通知MP3解码器103从MP3文件的起始点开始对音频取样进行解码时(步骤908),因为正常的MP3文件的第一个音频帧的main_data_begin区域所记录的数值必定为零,所以此时我们即可将此当作检查错误的标准。进一步讲,若第一个音频帧的main_data_begin区域所记录的数值不为零时,则MP3解码器103会将此音频帧忽略并重新搜索下一个音频帧中的同步字(步骤902),直到找到其main_data_begin区域所记录的数值为零的音频帧为止。
与先前的方法相比较,本发明的方法,一方面,在播放MP3文件之前,不须忽略掉所读取的音频帧的数据,而所读取到的音频帧的取样数据可暂存到输出缓冲器以累积足够的音频取样,进而确保解码时的正确性;另一方面,本发明的方法会搜索一个起始音频帧,其中,次起始音频帧的main_data区域会记录次起始音频帧的所有相关的取样数据。因此,通过本发明的方法可防止播放MP3文件时发生爆音的情形,同时也可增加播放效能。
以上所述仅为本发明的较佳实施例,凡是依照本发明权利要求所做的同等变化与修改,都应属本发明专利的覆盖范围。

Claims (19)

1.一种管理媒体播放器的输入缓冲器以播放媒体文件的方法,该媒体文件包括由多个媒体帧所构成的帧串,每一个媒体帧包括至少一个main_data区域及一个main_data_begin区域,其中该main_data区域包括编码取样,而该main_data_begin区域是用来表示该main_data区域的一个溢出值,该媒体播放器包括一个语法分析器、输入缓冲器、一个解码器以及一个加法计算器,该语法分析器可以将该帧串分析后传送至该解码器,并且可以通知该解码器从该媒体文件的起始点或中间点开始解码,该方法包括:
如果该解码器被通知从该媒体文件的中间点开始解码时,则:
从该帧串中定位第一媒体帧,该第一媒体帧包括第一main_data区域及第一main_data_begin区域,如果该加法计算器所记录的值小于该第一main_data_begin区域所记录的值时,则将该第一main_data区域的大小加入该加法计算器中,并将该第一main_data区域存储至该输入缓冲器中;
从该帧串中定位第二媒体帧,该第二媒体帧是位于该第一媒体帧的下游,该第二媒体帧包括第二main_data区域及第二main_data_begin区域,如果该加法计算器所记录的值等于或大于该第二main_data_begin区域所记录的值时,则通过存储于该输入缓冲器中的第一main_data区域以及第二main_data区域由该第二媒体帧开始对该帧串进行解码;以及
如果该解码器被通知从该媒体文件的起始点开始解码时,则从该帧串中定位第三媒体帧,该第三媒体帧包括第三main_data区域及第三main_data_begin区域,并由该第三媒体帧开始对该帧串进行解码,而其中该第三main_data_begin区域所记录的值为零。
2.如权利要求1所述的方法,其中该媒体文件为MP3文件。
3.如权利要求1所述的方法,其中该加法计算器被初始化为零。
4.一种管理媒体播放器的输入缓冲器以播放媒体文件的方法,该媒体文件包括由多个媒体帧所构成的帧串,每一个媒体帧包括至少一个main_data区域及一个main_data_begin区域,其中该main_data区域包括编码取样,而该main_data_begin区域是用来表示该main_data区域的一个溢出值,该媒体播放器包括该输入缓冲器以及一个加法计算器,该方法包括:
从该帧串中定位第一媒体帧,该第一媒体帧包括第一main_data区域及第一main_data_begin区域,如果该加法计算器所记录的值小于该第一main_data_begin区域所记录的值时,则将该第一main_data区域的大小加入该加法计算器中,并将该第一main_data区域存储至该输入缓冲器中;
从该帧串中定位第二媒体帧,该第二媒体帧是位于该第一媒体帧的下游,该第二媒体帧包括第二main_data区域及第二main_data_begin区域,如果该加法计算器所记录的值等于或大于该第二main_data_begin区域所记录的值时,则通过存储于该输入缓冲器中的第一main_data区域以及该第二main_data区域从该第二媒体帧开始对该帧串进行解码。
5.如权利要求4所述的方法,其中该媒体文件为MP3文件。
6.如权利要求4所述的方法,其中该加法计算器被初始化为零。
7.一种管理MP3录放控制器的输入缓冲器以播放MP3文件的方法,该MP3文件包括由多个音频帧所构成的帧串,每一个音频帧包含数据,该方法包括:
从该帧串中定位位于下游的音频帧,如果一个加法计算器所记录的值小于该音频帧的一个main_data_begin区域所记录的值时,则将该main_data区域的大小加入该加法计算器中,并将该main_data区域存储至该输入缓冲器中,以供后续解码时作为参考之用。
8.如权利要求7所述的方法,还包括:
若该音频帧包含错误检查码,则读取该错误检查码,并通过该错误检查码校验该音频帧的数据的完整性。
9.如权利要求7所述的方法,其中该输入缓冲器可供该录放控制器存取存储器的数据。
10.如权利要求7所述的方法,其中该录放控制器选择一个语法分析器或选择该输入缓冲器作为音频数据的来源以进行解码及播放的操作。
11.如权利要求7所述的方法,其中该加法计算器被初始化为零。
12.如权利要求7所述的方法,还包括:
利用一个参数来表示一个起始音频帧是否已从该帧串中定位。
13.如权利要求12所述的方法,其中该参数为布尔数据类型。
14.如权利要求7所述的方法,还包括:
对该音频帧的帧头进行解码。
15.如权利要求7所述的方法,还包括:
对该音频帧的音频数据进行解码。
16.如权利要求7所述的方法,还包括:
对该音频帧的同步字进行定位。
17.一种用来解码及输出MP3文件的MP3播放器,该MP3播放器包括:
输入缓冲器,用来存储MP3音频帧的一个main_data区域,以供后续解码时作为参考之用;
录放控制器,用来管理该输入缓冲器,该录放控制器可决定是否利用全部存储于该输入缓冲器的main_data区域来对该MP3音频帧进行解码。
18.如权利要求17所述的MP3播放器,还包括一个加法计算器,该加法计算器可被该录放控制器所使用,以分别决定该输入缓冲器中及该音频帧的main_data区域的大小。
19.如权利要求17所述的MP3播放器,其中是利用霍夫曼解码方法对该音频帧的main_data区域进行解码。
CN02151446.1A 2002-07-11 2002-11-19 媒体播放器的录放控制器的输入缓冲器的管理方法 Expired - Lifetime CN1279530C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/064,410 US7317867B2 (en) 2002-07-11 2002-07-11 Input buffer management for the playback control for MP3 players
US10/064,410 2002-07-11

Publications (2)

Publication Number Publication Date
CN1467726A true CN1467726A (zh) 2004-01-14
CN1279530C CN1279530C (zh) 2006-10-11

Family

ID=29998848

Family Applications (1)

Application Number Title Priority Date Filing Date
CN02151446.1A Expired - Lifetime CN1279530C (zh) 2002-07-11 2002-11-19 媒体播放器的录放控制器的输入缓冲器的管理方法

Country Status (3)

Country Link
US (1) US7317867B2 (zh)
CN (1) CN1279530C (zh)
TW (1) TW583581B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1304955C (zh) * 2004-02-16 2007-03-14 联发科技股份有限公司 内存控制方法及相关装置
US7477643B2 (en) 2004-01-20 2009-01-13 Mediatek Incorporation Memory control method and related device
CN101030381B (zh) * 2007-03-19 2010-12-08 北京中星微电子有限公司 一种提取mp3文件采样率的方法及装置
CN102238393A (zh) * 2010-04-30 2011-11-09 北京中星微电子有限公司 一种音频码流的重同步方法及重同步装置
CN102522088A (zh) * 2011-11-25 2012-06-27 展讯通信(上海)有限公司 音频的解码方法及装置
CN102768834A (zh) * 2012-03-21 2012-11-07 新奥特(北京)视频技术有限公司 一种实现音频帧解码的方法
CN101506797B (zh) * 2006-09-06 2013-05-08 英特尔公司 用于具有多个媒体播放模型的媒体播放工具的方法和装置
US8626323B2 (en) 2007-08-17 2014-01-07 Huawei Technologies Co,, Ltd. Method and apparatus for playing audio files
WO2016041507A1 (en) * 2014-09-17 2016-03-24 Mediatek Inc. Syntax parsing apparatus with multiple syntax parsing circuits for processing multiple image regions within same frame or processing multiple frames and related syntax parsing method

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101395559A (zh) * 2006-03-01 2009-03-25 Tivo有限公司 推荐的记录和下载引导
TW200741537A (en) * 2006-04-26 2007-11-01 Quanta Comp Inc Method and apparatus for managing input data buffer of MP3 decoder
JP2009157272A (ja) * 2007-12-27 2009-07-16 Roland Corp 音声再生装置
JP5814802B2 (ja) * 2012-01-12 2015-11-17 ルネサスエレクトロニクス株式会社 オーディオ符号化装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3397152B2 (ja) 1998-12-15 2003-04-14 松下電器産業株式会社 マルチトラックディスク再生装置及びその再生方法
DE19857886A1 (de) * 1998-12-15 2000-06-29 Johann W Grond Verfahren und Lagersystem zum Ein- und Auslagern von Lasten
US6721710B1 (en) * 1999-12-13 2004-04-13 Texas Instruments Incorporated Method and apparatus for audible fast-forward or reverse of compressed audio content
JP2001318535A (ja) * 2000-05-10 2001-11-16 Nec Niigata Ltd 液体回収方法および装置
US6466476B1 (en) * 2001-01-18 2002-10-15 Multi Level Memory Technology Data coding for multi-bit-per-cell memories having variable numbers of bits per memory cell
US7069208B2 (en) * 2001-01-24 2006-06-27 Nokia, Corp. System and method for concealment of data loss in digital audio transmission
EP1428215A1 (en) * 2001-04-20 2004-06-16 Koninklijke Philips Electronics N.V. Method and apparatus for editing data streams

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7477643B2 (en) 2004-01-20 2009-01-13 Mediatek Incorporation Memory control method and related device
CN1304955C (zh) * 2004-02-16 2007-03-14 联发科技股份有限公司 内存控制方法及相关装置
CN101506797B (zh) * 2006-09-06 2013-05-08 英特尔公司 用于具有多个媒体播放模型的媒体播放工具的方法和装置
CN101030381B (zh) * 2007-03-19 2010-12-08 北京中星微电子有限公司 一种提取mp3文件采样率的方法及装置
US8626323B2 (en) 2007-08-17 2014-01-07 Huawei Technologies Co,, Ltd. Method and apparatus for playing audio files
CN102238393A (zh) * 2010-04-30 2011-11-09 北京中星微电子有限公司 一种音频码流的重同步方法及重同步装置
CN102522088A (zh) * 2011-11-25 2012-06-27 展讯通信(上海)有限公司 音频的解码方法及装置
CN102522088B (zh) * 2011-11-25 2013-10-23 展讯通信(上海)有限公司 音频的解码方法及装置
CN102768834A (zh) * 2012-03-21 2012-11-07 新奥特(北京)视频技术有限公司 一种实现音频帧解码的方法
WO2016041507A1 (en) * 2014-09-17 2016-03-24 Mediatek Inc. Syntax parsing apparatus with multiple syntax parsing circuits for processing multiple image regions within same frame or processing multiple frames and related syntax parsing method
CN105874800A (zh) * 2014-09-17 2016-08-17 联发科技股份有限公司 在相同帧中处理多个图像区域或处理多个帧的多个句法解析电路的句法解析装置和相关句法解析方法
US10123028B2 (en) 2014-09-17 2018-11-06 Mediatek Inc. Syntax parsing apparatus with multiple syntax parsing circuits for processing multiple image regions within same frame or processing multiple frames and related syntax parsing method

Also Published As

Publication number Publication date
US20040008975A1 (en) 2004-01-15
TW583581B (en) 2004-04-11
US7317867B2 (en) 2008-01-08
CN1279530C (zh) 2006-10-11

Similar Documents

Publication Publication Date Title
CN1279530C (zh) 媒体播放器的录放控制器的输入缓冲器的管理方法
CN1045676C (zh) 存储卡及其记录、再现和擦除方法
US8626323B2 (en) Method and apparatus for playing audio files
US7507894B2 (en) Sound data encoding apparatus and sound data decoding apparatus
US11750784B2 (en) Automatic video file repair method and system
US7479594B2 (en) Sound data encoding apparatus and sound decoding apparatus
CN1455408A (zh) 控制音频流缓冲的方法和装置
CN102522088B (zh) 音频的解码方法及装置
JP2013528823A5 (zh)
JP4860140B2 (ja) 圧縮されたオーディオビットストリームでシンクワードを探す方法及び回路、並びに前記方法を記録した記録媒体
US6904540B2 (en) Targeted data protection
CN114125469B (zh) Mp4文件修复方法、装置、电子设备及存储介质
CN1463442A (zh) 编辑数据流的方法和装置
US6765513B2 (en) Decoding bit streams compressed with compression techniques employing variable length codes
KR100874023B1 (ko) Mp3 디코더의 입력 데이터 버퍼를 관리하는 방법 및 장치
CN1327236A (zh) 音频记录介质,记录和再现数据的方法及记录和再现设备
JP2001202089A (ja) 音声データに透かし情報を埋め込む方法、透かし情報埋め込み装置、透かし情報検出装置、透かし情報が埋め込まれた記録媒体、及び透かし情報を埋め込む方法を記録した記録媒体
US6963886B2 (en) Storing data items on a data carrier
US20050197830A1 (en) Method for calculating a frame in audio decoding
JP4211356B2 (ja) データ読み出し装置および方法
CN101075458A (zh) 控制mp3解码器的输入数据缓冲器的方法及装置
CN1269110C (zh) 源音频轨迹的书签设置方法
Yap Voice/Digital and Digital/Voice Conversion on a Microcomputer (Apple II)
US20030185129A1 (en) Encoding method for recording data on compack disk
JP4103693B2 (ja) 情報処理装置、情報処理方法、再生装置及び再生方法

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
ASS Succession or assignment of patent right

Owner name: LIANFABODONG SCIENCE + TECHNOLOGY (BEIJING) CO., L

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20110511

Address after: Hsinchu, Hsinchu, China Science and Technology Industrial Park, Taiwan

Co-patentee after: MEDIATEK (BEIJING) Inc.

Patentee after: MEDIATEK Inc.

Address before: Hsinchu, Hsinchu, China Science and Technology Industrial Park, Taiwan

Patentee before: MEDIATEK Inc.

CX01 Expiry of patent term
CX01 Expiry of patent term

Granted publication date: 20061011