CN102402509A - 一种变码率音频文件的寻址方法和装置 - Google Patents
一种变码率音频文件的寻址方法和装置 Download PDFInfo
- Publication number
- CN102402509A CN102402509A CN2010102759615A CN201010275961A CN102402509A CN 102402509 A CN102402509 A CN 102402509A CN 2010102759615 A CN2010102759615 A CN 2010102759615A CN 201010275961 A CN201010275961 A CN 201010275961A CN 102402509 A CN102402509 A CN 102402509A
- Authority
- CN
- China
- Prior art keywords
- addressing
- frame
- time
- play time
- audio file
- 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
Links
Images
Landscapes
- Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本发明提供了一种变码率音频文件的寻址方法和装置,所述方法包括:依据音频文件的文件头信息和帧头信息生成寻址表格,所述寻址表格记录有播放时间点及其对应的绝对地址;其中,每隔n帧记录一个播放时间点;按照寻址的目标时间在所述寻址表格中查找播放时间点,将其对应的绝对地址作为寻址的目标位置。通过本发明,能够尽量准确的、快速的实现对VBR音频文件的寻址功能。
Description
技术领域
本发明涉及音频处理技术领域,特别是涉及一种变码率音频文件的寻址方法和一种变码率音频文件的寻址装置。
背景技术
变码率(Variable Bit Rate,VBR,也称动态比特率)编码指的是编码器的输出码率(或者解码器的输入码率)可以根据编码器的输入源信号的自适应的调整,目的是达到保持输出质量保持不变,而不是保持输出码率保持不变,是一种以质量为前提兼顾文件大小的编码方式。VBR适用于存储,不太适用于流式传输,它可以更好的利用有限的存储空间:用比较多的码字对复杂度高的段进行编码,用比较少的码字对复杂度低的段进行编码。现在主流的音频压缩格式都是变码率的,例如,使用MP3格式的音频编解码器,音频文件可以以8~320kbps的可变码率进行压缩,得到相对小的文件来节约存储空间。变码率的广泛使用,在保证音频质量的前提下,使音频文件越来越小,提高了存储器的存储效率。
在固定码率的情况下,时间和码流是线性对应的关系。因此,要寻址(seek)到某一位置时,只须将目标位置时间与一个常数相乘即可得到。但VBR的音频文件,想要寻址到目标位置相对就比较复杂。目前常用的方法:
1、计算出平均码率R,寻址的目标时间是T秒,则寻址的文件位置为:其中,channel为音频的声道数,samplerate为音频的采样频率。由于文件的码率变化有高有低,对于码率变化较大的文件,按照平均码率进行寻址,seek的位置不准确。
2、从文件头开始搜索,遍历文件帧头(对于没有帧头的文件,则需要解码文件),直到寻址到目标时间T,该位置即为seek文件的目标位置。这种方法的主要缺点是:通过遍历帧头计算目标位置,其算法复杂度太高,寻址的时间延时较长。
总之,需要本领域技术人员迫切解决的一个技术问题就是:如何能够提供一种寻址方法,能够尽量准确的、快速的实现对VBR音频文件的寻址功能。
发明内容
本发明所要解决的技术问题是提供一种变码率音频文件的寻址方法,能够准确的、快速的实现对VBR音频文件的寻址功能。
为了解决上述问题,本发明公开了一种变码率音频文件的寻址方法,包括:
依据音频文件的文件头信息和帧头信息生成寻址表格,所述寻址表格记录有播放时间点及其对应的绝对地址;其中,每隔n帧记录一个播放时间点;
按照寻址的目标时间在所述寻址表格中查找播放时间点,将其对应的绝对地址作为寻址的目标位置。
进一步,所述文件头信息包括:采样率、声道数、位宽、帧长;所述帧头信息包括:帧头标识和该帧的字节数。
优选的,所述依据音频文件的文件头信息生成寻址表格,具体包括:
计算每帧数据的时间长度Tframe,其中,S为采样率、C为声道数、W为位宽、L为帧长;
按照每帧数据的时间长度计算所记录的各个播放时间点的时间间隔T′,T′=n*Tframe;
记录第mn帧的播放时间点为mT′,以及记录第mn帧对应的绝对地址为第1帧到第mn帧的字节数之和加上文件头的长度;其中,m=1,2,3......,mn小于等于该音频文件的总帧数。
优选的,所述按照寻址的目标时间在所述寻址表格中查找播放时间点,将其对应的绝对地址作为寻址的目标位置,具体包括:
将寻址的目标时间T除以T′,将得到的数值取整数k;
在寻址表格中查询第k个T′对应的绝对地址,将其作为寻址的目标位置。
优选的,当打开所述音频文件时,遍历整个文件,生成所述寻址表格。
优选的,所述依据音频文件的文件头信息生成寻址表格,还包括:
记录截止播放时间点为(N/n)T′;记录截止播放时间点对应的绝对地址为第1帧到第N帧的字节数之和加上文件头的长度;其中,N为该音频文件总帧数;所述截止播放时间点对应该音频文件最后一帧对应的播放时间。
优选的,在播放所述音频文件的过程中,动态生成并更新所述寻址表格。
优选的,所述依据音频文件的文件头信息生成寻址表格,还包括:
每隔n帧更新并记录一次截止播放时间点为(N’/n)T′;每隔n帧更新并记录截止播放时间点对应的绝对地址为第1帧到第N’帧的字节数之和加上文件头的长度;其中,N’为当前播放的帧数;所述截止播放时间点对应当前的播放时间。
优选的,当寻址的目标时间大于寻址表格记录的截止播放时间点时,依次识别当前播放帧的后续帧头;在截止播放时间点上累加每帧数据的时间长度,直到累积到目标时间,此时对应的位置为寻址的目标位置。
优选的,当寻址的目标时间大于寻址表格记录的截止播放时间点时,利用平均码率计算目标时间与截止播放时间点之间的字节数;将截止播放时间点对应的绝对地址加上所述字节数作为寻址的目标位置。
此外,本发明还公开了一种变码率音频文件的寻址装置,包括:
寻址表格生成单元,用于依据音频文件的文件头信息和帧头信息生成寻址表格,所述寻址表格记录有播放时间点及其对应的绝对地址;其中,每隔n帧记录一个播放时间点;
目标地址查找单元,用于按照寻址的目标时间在所述寻址表格中查找播放时间点,将其对应的绝对地址作为寻址的目标位置。
进一步,所述寻址表格生成单元包括:
第一计算子单元,用于计算每帧数据的时间长度Tframe,其中,S为采样率、C为声道数、W为位宽、L为帧长;以及,按照每帧数据的时间长度计算所记录的各个播放时间点的时间间隔T′,T′=n×Tframe;
记录子单元,用于记录第mn帧的播放时间点为mT′,以及记录第mn帧对应的绝对地址为第1帧到第mn帧的字节数之和加上文件头的长度;其中,m=1,2,3......,mn小于等于该音频文件的总帧数。
进一步,所述目标地址查找单元包括:
第二计算子单元,用于将寻址的目标时间T除以T′,将得到的数值取整数k;
地址查找子单元,用于在寻址表格中查询第k个T′对应的绝对地址,将其作为寻址的目标位置。
优选的,当打开所述音频文件时,所述寻址表格生成单元遍历整个文件,生成所述寻址表格。
优选的,所述记录子单元还用于记录截止播放时间点为(N/n)T′;以及记录截止播放时间点对应的绝对地址为第1帧到第N帧的字节数之和加上文件头的长度;其中,N为该音频文件总帧数;所述截止播放时间点对应该音频文件最后一帧对应的播放时间。
优选的,在播放所述音频文件的过程中,所述寻址表格生成单元动态生成并更新所述寻址表格。
优选的,所述记录子单元还用于每隔n帧更新并记录一次截止播放时间点为(N’/n)T′;每隔n帧更新并记录截止播放时间点对应的绝对地址为第1帧到第N’帧的字节数之和加上文件头的长度;其中,N’为当前播放的帧数;所述截止播放时间点对应当前的播放时间。
优选的,所述目标地址查找单元还包括:
帧头识别子单元,用于当寻址的目标时间大于寻址表格记录的截止播放时间点时,依次识别当前播放帧的后续帧头;
则所述地址查找子单元在截止播放时间点上累加每帧数据的时间长度,直到累积到目标时间,此时对应的位置为寻址的目标位置。
优选的,所述目标地址查找单元还包括:
字节计算子单元,用于当寻址的目标时间大于寻址表格记录的截止播放时间点时,利用平均码率计算目标时间与截止播放时间点之间的字节数;
则所述地址查找子单元将截止播放时间点对应的绝对地址加上所述字节数作为寻址的目标位置。
与现有技术相比,本发明具有以下优点:
本发明通过分析文件头信息和帧头信息,按照一定的时间间隔(每隔n帧),制作时间与文件的绝对地址一一对应的寻址表格,在寻址时,通过查表,得到具体的绝对文件的地址。通过本发明,在寻址操作时可以直接查询寻址表格,无需遍历文件帧头,避免了复杂计算而浪费的时间,保证了寻址的及时性;此外,由于记录了播放时间点及其对应的绝对地址,保证了寻址的准确度。并且,准确度能够通过记录的时间间隔进行调整,可适用于多种寻址的质量要求。
进一步,本发明可以在打开所述音频文件时遍历整个文件,生成寻址表格,并在以后的寻址操作中,直接查询。还可以在播放所述音频文件的过程中,动态生成并更新所述寻址表格,减少了打开文件时的等待时间;并且,在利用表格准确寻址的基础上,通过识别帧头或者平均码率寻址相结合的方法进行寻址,能够兼顾效率和准确度。
附图说明
图1是VBR音频文件的一般文件结构示意图;
图2是本发明一种变码率音频文件的寻址方法实施例一的流程图;
图3是本发明一种变码率音频文件的寻址方法实施例二的流程图;
图4是本发明一种变码率音频文件的寻址方法实施例三的流程图;
图5是本发明一种变码率音频文件的寻址装置实施例的结构图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
VBR音频文件的一般文件结构如图1所示,其文件头包含了音频的编码格式、采样率、声道数,帧长等解码必须的信息,而每帧的帧头通常包含一帧的开始标志(帧头标志)及该帧的长度。这种文件的组织构架,在VBR音频文件中最为常见,通常遇到的aac/mp3/wma等音频格式文件都满足这一文件架构方式。本发明所设计的寻址方法都是基本这种文件组织架构的。
本发明的核心构思之一在于:通过分析文件头信息和帧头信息,按照一定的时间刻度,制作时间与文件的绝对位置一一对应的临时寻址表格,在寻址时,通过查表,得到具体的绝对文件的地址,可以迅速的完成寻址操作,并且寻址的准确度较高。
参照图2,示出了本发明一种变码率音频文件的寻址方法实施例一的流程图,包括:
步骤201,依据音频文件的文件头信息和帧头信息生成寻址表格,所述寻址表格记录有播放时间点及其对应的绝对地址;其中,每隔n帧记录一个播放时间点;
通过音频头文件可是得到:采样率S(samples per second)、声道数C、位宽(bit)、帧长(bytes);其中,帧长是指解码后,每帧PCM数据的长度。则所述依据音频文件的文件头信息生成寻址表格,具体包括如下子步骤:
子步骤2012,按照每帧数据的时间长度计算所记录的各个播放时间点的时间间隔T′,T′=n×Tframe;
每隔n帧记录一个播放时间点,即相当于每隔时间间隔T′记录一个播放时间点。
子步骤2013,记录第mn帧的播放时间点为mT′,以及通过分析帧头记录第mn帧对应的绝对地址为第1帧到第mn帧的字节数之和加上文件头的长度;其中,m=1,2,3......,mn小于等于该音频文件的总帧数。
通常的,每一帧数据的帧头信息中都记录有了该帧包含的字节数Bi,i=1,2,3......,也即,第一帧数据包含的字节数为B1,第二帧数据包含的字节数为B2,第三帧数据包含的字节数为B3,以此类推。所以,每n帧的绝对地址D可以通过这n帧的字节数B累加得到。此外,由于文件头包含一部分数据,并占用一定的长度,因此,计算绝对地址时还需要加上文件头的长度。
则在播放时间点为零时,其对应的绝对地址为Ltitle;第n帧的播放时间点为T′时,其对应的绝对地址为第2n帧的播放时间点为2T′时,其对应的绝对地址为依此类推。在本发明实施例中,所生成的寻址表格如下所示:
表1
需要说明的是,本发明实施例还可以不按照间隔的帧数记录各个播放时间点,而是通过设置时间间隔记录各个播放时间点,方式与上面所述类似:
步骤202,按照寻址的目标时间在所述寻址表格中查找播放时间点,将其对应的绝对地址作为寻址的目标位置。
具体的,该步骤包括如下子步骤:
子步骤2021,将寻址的目标时间T除以T′,将得到的数值取整数k;
其中,对于T除以T′得到的数值,可以四舍五入取整,或者直接去其余数取整。
子步骤2022,在寻址表格中查询第k个T′对应的绝对地址,将其作为寻址的目标位置。
设需要seek到的目标时间为T,则在寻址表格中只需要寻找第k个T′所对应的绝对地址,其中,k为T/T′得到的整数,可以四舍五入取整,或者直接去其余数取整。使用文件操作的file seek即可以找到需要seek到的时刻。例如,每帧数据的时间长度Tframe=20ms,每隔100帧记录一个播放时间点,T′=2s,若seek的目标时间为21s,k=10,则在寻址表格中查询10T′对应的绝对地址,得到寻址的目标位置。由于各个播放时间点的间隔为T′,所以seek到的时刻和实际所查询时刻的误差不会超过T′。因此,T′越小,所对应的seek的准确度越高。
通过本法明实施例,直接通过查询表格得到对应的绝对文件的地址。无需在每次寻址时,从文件头开始搜索,遍历文件帧头,避免了复杂计算而浪费的时间,能够迅速的完成seek的操作;并且,由于不是通过计算出平均码率寻址,其准确度能够通过时间刻度进行调整。在准确度要求不高的情况下,播放时间点的间隔可以较大,这样临时表格较小。反之,对seek的准确度要求很高时,播放时间点的间隔较小,这样制作的临时表格这较大。通常情况下,播放时间点的间隔约为1~2秒。
参照图3,示出了本发明一种变码率音频文件的寻址方法实施例二的流程图,包括:
步骤301,当打开所述音频文件时,遍历整个文件,依据音频文件的文件头信息和帧头信息生成寻址表格;
所述寻址表格记录有播放时间点及其对应的绝对地址;其中,每隔n帧记录一个播放时间点。也就是说,该寻址表格覆盖了整个音频文件,知道寻址的目标时间就可以直接从该表格中查到目标位置。所述依据音频文件的文件头信息生成寻址表格,还包括:
记录截止播放时间点为(N/n)T′;以及记录截止播放时间点对应的绝对地址为第1帧到第N帧的字节数之和加上文件头的长度;其中,N为该音频文件总帧数,即第N帧就是文件的最后一帧。所述寻址表格记录的截止播放时间点(N/n)T′对应该音频文件最后一帧对应的播放时间,
则寻址表格的最后一条记录为:
例如,某一音频文件总共有320帧,每隔50帧做一条记录,则前6条记录分别对应第50帧(T′)、100帧(2T′)、150帧(3T′)、200帧(4T′)、250帧(6T′)、300帧(6T′)的播放时间点及其对应的绝对地址。剩余20帧不够50的倍数,最后一帧的时间对应的绝对地址为:
需要说明的是,本发明实施例中所举例的数据仅为说明理解。
步骤302,按照寻址的目标时间在所述寻址表格中查找播放时间点,将其对应的绝对地址作为寻址的目标位置。
在本发明实施例二中,打开一个音频文件时,就生成该文件对应的寻址表格,也就是说,寻址表格的生成需要遍历整个音频文件一次。在系统资源允许的情况下,可以在打开文件后就将整个文件遍历一次,制作出临时表格,操作过程中需要seek功能时,直接按上述方法寻址,完成操作。需要说明的是,当关闭当前视频文件时,可以释放临时生成的寻址表格,或者,还可以存储该寻址表格,以供下次打开该文件进行seek时使用。
通过本发明实施例二,无论用户需要seek到该文件的哪一位置,均可以直接从寻址表格中查询出来。但是,在系统资源有限的情况时,按照实施例二提供的方式,就会发现需要很长时间才能打开文件,然后才能播放,出现延迟的现象。这样的情况下,针对寻址表格的生成时机,本发明提出了另一种寻址方法。
参照图4,示出了本发明一种变码率音频文件的寻址方法实施例三的流程图,包括:
步骤401,在播放所述音频文件的过程中,依据文件头信息、播放数据的帧头信息动态生成并更新寻址表格;
所述寻址表格记录有播放时间点及其对应的绝对地址;其中,每隔n帧记录一个播放时间点。其中,该寻址表格没有全部覆盖了整个音频文件,只是记录有已经并播放的音频信息。则所述依据音频文件的文件头信息生成寻址表格,还包括:
每隔n帧更新记录一次截止播放时间点为(N’/n)T′;每隔n帧更新记录截止播放时间点对应的绝对地址为第1帧到第N’帧的字节数之和加上文件头的长度;其中,N’为当前播放的帧数。也就是说,在播放过程中,每隔时间T′添加一条记录,并将新添加的最后一条记录更新为截止播放时间点相对应的记录。所述寻址表格记录的截止播放时间点(N’/n)T′对应当前的播放时间。
步骤402,按照寻址的目标时间在所述寻址表格中查找播放时间点;
步骤403,当寻址的目标时间小于等于寻址表格记录的截止播放时间点时,直接查找播放时间点,将其对应的绝对地址作为寻址的目标位置;
如果寻址的目标时间小于等于截止播放时间点,则寻址过程与实施例二相同,直接在寻址表格中查询。
步骤404,当寻址的目标时间大于寻址表格记录的截止播放时间点时,通过依次识别当前播放帧的后续帧头或者利用利用平均码率计算寻址的目标位置。
如果寻址的目标时间大于截止播放时间点,则可以分两种方式进行寻址:
a、依次识别当前播放帧的后续帧头;在截止播放时间点上累加每帧数据的时间长度,直到累积到目标时间,此时对应的位置为寻址的目标位置。
帧头信息中包含帧头标识,通过该标识可以识别后续的帧头,由于生成寻址表格时,已经计算出每帧数据的时间长度Tframe,并且截止播放时间点(N’/n)T′对应当前的播放时间,在此基础上,每识别一个帧头,累加一个Tframe,即:(N’/n)T′+Tframe+Tframe+Tframe+......
当累积到目标时间T时,暂停识别,此处的帧所在的位置即为寻址的目标位置。
b、利用平均码率计算目标时间与截止播放时间点之间的字节数;将截止播放时间点对应的绝对地址加上所述字节数作为寻址的目标位置。
记(N’/n)=q,则截止播放时间点对应第q个T′,对应的绝对地址为Lq,利用平均码率R计算目标时间与截止播放时间点之间的字节数为:
将截止播放时间点对应的绝对地址加上所述字节数作为寻址的目标位置,则目标时刻T对应的位置为:
需要说明的是,平均码率R可以直接从文件属性信息中读取,或者通过size/t进行计算,其中size为该音频文件的大小,t为该音频文件的播放时间。
在本发明实施例三中,由于建立的寻址表格的截止位置就是播放的当前位置,即不能建立一个覆盖整首音乐的表格。因此,在利用表格准确寻址的基础上,通过识别帧头或者平均码率寻址相结合的方法进行寻址,兼顾效率和准确度。
具体实施时,由于播放音乐的过程就是一个从头到尾遍历的过程,在这个过程中,可以生成临时的表格,这样,至少向前seek可以利用已经制作的表格来寻址,快速而准确。当seek的位置是还没有播放到的位置,即还没有做入到表格中,采用不同的方法寻址:当seek的时间离当前播放时间的偏移不大,可以直接通过向后继续解析帧头,时间累计,直到找到目标时刻为止。这种方法的限制是seek的时间间隔不能太大,否则seek就会花费的时间很长。当seek的时间距离当前播放时间较大时,如两秒以上时,可以采用平均码率寻址的技术。
参照图5,示出了本发明一种变码率音频文件的寻址装置实施例的结构图,包括:
寻址表格生成单元501,用于依据音频文件的文件头信息和帧头信息生成寻址表格,所述寻址表格记录有播放时间点及其对应的绝对地址;其中,每隔n帧记录一个播放时间点;
目标地址查找单元502,用于按照寻址的目标时间在所述寻址表格中查找播放时间点,将其对应的绝对地址作为寻址的目标位置。
其中,所述文件头信息包括:采样率、声道数、位宽、帧长;所述帧头信息包括:帧头标识和该帧的字节数。
进一步,所述寻址表格生成单元501包括:
第一计算子单元5011,用于计算每帧数据的时间长度Tframe,其中,S为采样率、C为声道数、W为位宽、L为帧长;以及,按照每帧数据的时间长度计算所记录的各个播放时间点的时间间隔T′,T′=n×Tframe;
记录子单元5012,用于记录第mn帧的播放时间点为mT′,以及记录第mn帧对应的绝对地址为第1帧到第mn帧的字节数之和加上文件头的长度;其中,m=1,2,3......,mn小于等于该音频文件的总帧数。
进一步,所述目标地址查找单元502包括:
第二计算子单元5021,用于将寻址的目标时间T除以T′,将得到的数值取整数k;
地址查找子单元5022,用于在寻址表格中查询第k个T′对应的绝对地址,将其作为寻址的目标位置。
在本发明的一个优选实施例中,当打开所述音频文件时,所述寻址表格生成单元501遍历整个文件,生成所述寻址表格。
优选的,所述记录子单元5012还用于记录截止播放时间点为(N/n)T′;以及记录截止播放时间点对应的绝对地址为第1帧到第N帧的字节数之和加上文件头的长度;其中,N为该音频文件总帧数;所述截止播放时间点对应该音频文件最后一帧对应的播放时间。
在本发明的另一个优选实施例中,在播放所述音频文件的过程中,所述寻址表格生成单元501动态生成并更新所述寻址表格。
优选的,所述记录子单元5012还用于每隔n帧更新并记录一次截止播放时间点为(N’/n)T′;每隔n帧更新并记录截止播放时间点对应的绝对地址为第1帧到第N’帧的字节数之和加上文件头的长度;其中,N’为当前播放的帧数;所述截止播放时间点对应当前的播放时间。
优选的,所述目标地址查找单元502还包括:
帧头识别子单元,用于当寻址的目标时间大于寻址表格记录的截止播放时间点时,依次识别当前播放帧的后续帧头;则所述地址查找子单元在截止播放时间点上累加每帧数据的时间长度,直到累积到目标时间,此时对应的位置为寻址的目标位置。
优选的,所述目标地址查找单元502还包括:
字节计算子单元,用于当寻址的目标时间大于寻址表格记录的截止播放时间点时,利用平均码率计算目标时间与截止播放时间点之间的字节数;则所述地址查找子单元将截止播放时间点对应的绝对地址加上所述字节数作为寻址的目标位置。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上对本发明所提供的一种变码率音频文件的寻址方法和装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (19)
1.一种变码率音频文件的寻址方法,其特征在于,包括:
依据音频文件的文件头信息和帧头信息生成寻址表格,所述寻址表格记录有播放时间点及其对应的绝对地址;其中,每隔n帧记录一个播放时间点;
按照寻址的目标时间在所述寻址表格中查找播放时间点,将其对应的绝对地址作为寻址的目标位置。
2.如权利要求1所述的方法,其特征在于,
所述文件头信息包括:采样率、声道数、位宽、帧长;
所述帧头信息包括:帧头标识和该帧的字节数。
3.如权利要求2所述的方法,其特征在于,所述依据音频文件的文件头信息生成寻址表格,具体包括:
计算每帧数据的时间长度Tframe,其中,S为采样率、C为声道数、W为位宽、L为帧长;
按照每帧数据的时间长度计算所记录的各个播放时间点的时间间隔T′,T′=n*Tframe;
记录第mn帧的播放时间点为mT′,以及记录第mn帧对应的绝对地址为第1帧到第mn帧的字节数之和加上文件头的长度;其中,m=1,2,3......,mn小于等于该音频文件的总帧数。
4.如权利要求3所述的方法,其特征在于,所述按照寻址的目标时间在所述寻址表格中查找播放时间点,将其对应的绝对地址作为寻址的目标位置,具体包括:
将寻址的目标时间T除以T′,将得到的数值取整数k;
在寻址表格中查询第k个T′对应的绝对地址,将其作为寻址的目标位置。
5.如权利要求4所述的方法,其特征在于,
当打开所述音频文件时,遍历整个文件,生成所述寻址表格。
6.如权利要求5所述的方法,其特征在于,所述依据音频文件的文件头信息生成寻址表格,还包括:
记录截止播放时间点为(N/n)T′;记录截止播放时间点对应的绝对地址为第1帧到第N帧的字节数之和加上文件头的长度;
其中,N为该音频文件总帧数;所述截止播放时间点对应该音频文件最后一帧对应的播放时间。
7.如权利要求4所述的方法,其特征在于,
在播放所述音频文件的过程中,动态生成并更新所述寻址表格。
8.如权利要求7所述的方法,其特征在于,所述依据音频文件的文件头信息生成寻址表格,还包括:
每隔n帧更新并记录一次截止播放时间点为(N’/n)T′;
每隔n帧更新并记录截止播放时间点对应的绝对地址为第1帧到第N’帧的字节数之和加上文件头的长度;
其中,N’为当前播放的帧数;所述截止播放时间点对应当前的播放时间。
9.如权利要求8所述的方法,其特征在于,
当寻址的目标时间大于寻址表格记录的截止播放时间点时,依次识别当前播放帧的后续帧头;
在截止播放时间点上累加每帧数据的时间长度,直到累积到目标时间,此时对应的位置为寻址的目标位置。
10.如权利要求8所述的方法,其特征在于,
当寻址的目标时间大于寻址表格记录的截止播放时间点时,利用平均码率计算目标时间与截止播放时间点之间的字节数;
将截止播放时间点对应的绝对地址加上所述字节数作为寻址的目标位置。
11.一种变码率音频文件的寻址装置,其特征在于,包括:
寻址表格生成单元,用于依据音频文件的文件头信息和帧头信息生成寻址表格,所述寻址表格记录有播放时间点及其对应的绝对地址;其中,每隔n帧记录一个播放时间点;
目标地址查找单元,用于按照寻址的目标时间在所述寻址表格中查找播放时间点,将其对应的绝对地址作为寻址的目标位置。
13.如权利要求12所述的装置,其特征在于,所述目标地址查找单元包括:
第二计算子单元,用于将寻址的目标时间T除以T′,将得到的数值取整数k;
地址查找子单元,用于在寻址表格中查询第k个T′对应的绝对地址,将其作为寻址的目标位置。
14.如权利要求13所述的装置,其特征在于,
当打开所述音频文件时,所述寻址表格生成单元遍历整个文件,生成所述寻址表格。
15.如权利要求14所述的装置,其特征在于,
所述记录子单元还用于记录截止播放时间点为(N/n)T′;以及记录截止播放时间点对应的绝对地址为第1帧到第N帧的字节数之和加上文件头的长度;
其中,N为该音频文件总帧数;所述截止播放时间点对应该音频文件最后一帧对应的播放时间。
16.如权利要求13所述的装置,其特征在于,
在播放所述音频文件的过程中,所述寻址表格生成单元动态生成并更新所述寻址表格。
17.如权利要求16所述的装置,其特征在于,
所述记录子单元还用于每隔n帧更新并记录一次截止播放时间点为(N’/n)T′;每隔n帧更新并记录截止播放时间点对应的绝对地址为第1帧到第N’帧的字节数之和加上文件头的长度;
其中,N’为当前播放的帧数;所述截止播放时间点对应当前的播放时间。
18.如权利要求17所述的装置,其特征在于,所述目标地址查找单元还包括:
帧头识别子单元,用于当寻址的目标时间大于寻址表格记录的截止播放时间点时,依次识别当前播放帧的后续帧头;
则所述地址查找子单元在截止播放时间点上累加每帧数据的时间长度,直到累积到目标时间,此时对应的位置为寻址的目标位置。
19.如权利要求17所述的装置,其特征在于,所述目标地址查找单元还包括:
字节计算子单元,用于当寻址的目标时间大于寻址表格记录的截止播放时间点时,利用平均码率计算目标时间与截止播放时间点之间的字节数;
则所述地址查找子单元将截止播放时间点对应的绝对地址加上所述字节数作为寻址的目标位置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010275961.5A CN102402509B (zh) | 2010-09-07 | 2010-09-07 | 一种变码率音频文件的寻址方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010275961.5A CN102402509B (zh) | 2010-09-07 | 2010-09-07 | 一种变码率音频文件的寻址方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102402509A true CN102402509A (zh) | 2012-04-04 |
CN102402509B CN102402509B (zh) | 2017-01-18 |
Family
ID=45884727
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010275961.5A Active CN102402509B (zh) | 2010-09-07 | 2010-09-07 | 一种变码率音频文件的寻址方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102402509B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103474073A (zh) * | 2012-06-07 | 2013-12-25 | 晨星软件研发(深圳)有限公司 | 音频解码方法及音频解码装置 |
CN104934049A (zh) * | 2015-06-24 | 2015-09-23 | 深圳市九洲电器有限公司 | 一种变比特率mp3播放时间获取方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020196714A1 (en) * | 2001-06-26 | 2002-12-26 | Pioneer Corporation | Method and apparatus for reproducing information |
US20040249862A1 (en) * | 2003-04-17 | 2004-12-09 | Seung-Won Shin | Sync signal insertion/detection method and apparatus for synchronization between audio file and text |
CN1804788A (zh) * | 2005-11-25 | 2006-07-19 | 北京中星微电子有限公司 | 在可变比特率格式的mp3文件中实现定位的方法 |
CN1971742A (zh) * | 2006-12-08 | 2007-05-30 | 北京中星微电子有限公司 | 一种针对变化比特率mp3文件的定位播放方法 |
CN101110247A (zh) * | 2007-08-17 | 2008-01-23 | 华为技术有限公司 | 音频文件的播放方法及装置 |
-
2010
- 2010-09-07 CN CN201010275961.5A patent/CN102402509B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020196714A1 (en) * | 2001-06-26 | 2002-12-26 | Pioneer Corporation | Method and apparatus for reproducing information |
US20040249862A1 (en) * | 2003-04-17 | 2004-12-09 | Seung-Won Shin | Sync signal insertion/detection method and apparatus for synchronization between audio file and text |
CN1804788A (zh) * | 2005-11-25 | 2006-07-19 | 北京中星微电子有限公司 | 在可变比特率格式的mp3文件中实现定位的方法 |
CN1971742A (zh) * | 2006-12-08 | 2007-05-30 | 北京中星微电子有限公司 | 一种针对变化比特率mp3文件的定位播放方法 |
CN101110247A (zh) * | 2007-08-17 | 2008-01-23 | 华为技术有限公司 | 音频文件的播放方法及装置 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103474073A (zh) * | 2012-06-07 | 2013-12-25 | 晨星软件研发(深圳)有限公司 | 音频解码方法及音频解码装置 |
CN103474073B (zh) * | 2012-06-07 | 2016-08-24 | 晨星软件研发(深圳)有限公司 | 音频解码方法及音频解码装置 |
CN104934049A (zh) * | 2015-06-24 | 2015-09-23 | 深圳市九洲电器有限公司 | 一种变比特率mp3播放时间获取方法及系统 |
WO2016206606A1 (zh) * | 2015-06-24 | 2016-12-29 | 深圳市九洲电器有限公司 | 一种变比特率mp3播放时间获取方法及系统 |
CN104934049B (zh) * | 2015-06-24 | 2018-03-16 | 深圳市九洲电器有限公司 | 一种变比特率mp3播放时间获取方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN102402509B (zh) | 2017-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8626323B2 (en) | Method and apparatus for playing audio files | |
KR100717600B1 (ko) | 오디오 파일 포맷 변환 | |
US7424333B2 (en) | Audio fidelity meter | |
US8090458B2 (en) | Method of calculating temporal information of frame-based audio stream data | |
CN101682515A (zh) | 用于确定多媒体序列的帧尺寸的方法 | |
CN1463441A (zh) | Mp3的特技播放 | |
CN101164103B (zh) | 复用器和复用方法 | |
CN103843064A (zh) | 在特技模式中播放音频 | |
CN102208208B (zh) | 无损音频播放方法以及音频播放器 | |
CN102402509A (zh) | 一种变码率音频文件的寻址方法和装置 | |
CN102169684B (zh) | 一种面向工尺谱乐谱的midi文件产生装置 | |
CN202102715U (zh) | 音频媒体多载体实时播控系统 | |
US7043440B2 (en) | Play back apparatus | |
WO2004109660A1 (ja) | 音声データを選択するための装置、方法およびプログラム | |
JP4357852B2 (ja) | 時系列信号の圧縮解析装置および変換装置 | |
CN108399921B (zh) | 一种音频竖线波形图的生成方法 | |
CN102074233A (zh) | 乐曲辨识系统及方法 | |
CN100538853C (zh) | 控制mp3解码器的输入数据缓冲器的方法及装置 | |
JP6181920B2 (ja) | 音声再生装置およびそのプログラム | |
Drott | Music and the Cybernetic Mundane | |
CN108984621A (zh) | 信息存储、读取方法 | |
CN101256775B (zh) | 一种mp3位串排列方法与装置 | |
JP2005242126A (ja) | 音響信号の再生装置 | |
JPH0679239B2 (ja) | 音声合成器 | |
JP2007141378A (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 | ||
CB02 | Change of applicant information |
Address after: 214000 Jiangsu province Wuxi District Qingyuan Road No. 18 Taihu International Science Park sensor network university science and Technology Park 530 building A1001 Applicant after: WUXI ZHONGGAN MICROELECTRONIC CO., LTD. Address before: 214028 national integrated circuit design (21-1), Changjiang Road, New District, Jiangsu, Wuxi, China, China (610) Applicant before: Wuxi Vimicro Co., Ltd. |
|
COR | Change of bibliographic data | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |