專利名稱:一種變碼率音頻文件的尋址方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及音頻處理技術(shù)領(lǐng)域,特別是涉及一種變碼率音頻文件的尋址方法和一種變碼率音頻文件的尋址裝置。
背景技術(shù):
變碼率(Variable Bit Rate,VBR,也稱動(dòng)態(tài)比特率)編碼指的是編碼器的輸出碼率(或者解碼器的輸入碼率)可以根據(jù)編碼器的輸入源信號(hào)的自適應(yīng)的調(diào)整,目的是達(dá)到保持輸出質(zhì)量保持不變,而不是保持輸出碼率保持不變,是一種以質(zhì)量為前提兼顧文件大小的編碼方式。VBR適用于存儲(chǔ),不太適用于流式傳輸,它可以更好的利用有限的存儲(chǔ)空間 用比較多的碼字對(duì)復(fù)雜度高的段進(jìn)行編碼,用比較少的碼字對(duì)復(fù)雜度低的段進(jìn)行編碼。現(xiàn)在主流的音頻壓縮格式都是變碼率的,例如,使用MP3格式的音頻編解碼器,音頻文件可以以8 3201ApS的可變碼率進(jìn)行壓縮,得到相對(duì)小的文件來(lái)節(jié)約存儲(chǔ)空間。變碼率的廣泛使用,在保證音頻質(zhì)量的前提下,使音頻文件越來(lái)越小,提高了存儲(chǔ)器的存儲(chǔ)效率。在固定碼率的情況下,時(shí)間和碼流是線性對(duì)應(yīng)的關(guān)系。因此,要尋址(seek)到某一位置時(shí),只須將目標(biāo)位置時(shí)間與一個(gè)常數(shù)相乘即可得到。但VBR的音頻文件,想要尋址到目標(biāo)位置相對(duì)就比較復(fù)雜。目前常用的方法1、計(jì)算出平均碼率R,尋址的目標(biāo)時(shí)間是T秒,則尋址的文件位置為
R
L = 8xchannelxsamplerateT,其中,皿為音頻的聲道數(shù),-mplerate為音頻的采樣
頻率。由于文件的碼率變化有高有低,對(duì)于碼率變化較大的文件,按照平均碼率進(jìn)行尋址, seek的位置不準(zhǔn)確。2、從文件頭開(kāi)始搜索,遍歷文件幀頭(對(duì)于沒(méi)有幀頭的文件,則需要解碼文件), 直到尋址到目標(biāo)時(shí)間T,該位置即為seek文件的目標(biāo)位置。這種方法的主要缺點(diǎn)是通過(guò)遍歷幀頭計(jì)算目標(biāo)位置,其算法復(fù)雜度太高,尋址的時(shí)間延時(shí)較長(zhǎng)。總之,需要本領(lǐng)域技術(shù)人員迫切解決的一個(gè)技術(shù)問(wèn)題就是如何能夠提供一種尋址方法,能夠盡量準(zhǔn)確的、快速的實(shí)現(xiàn)對(duì)VBR音頻文件的尋址功能。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問(wèn)題是提供一種變碼率音頻文件的尋址方法,能夠準(zhǔn)確的、快速的實(shí)現(xiàn)對(duì)VBR音頻文件的尋址功能。為了解決上述問(wèn)題,本發(fā)明公開(kāi)了一種變碼率音頻文件的尋址方法,包括依據(jù)音頻文件的文件頭信息和幀頭信息生成尋址表格,所述尋址表格記錄有播放時(shí)間點(diǎn)及其對(duì)應(yīng)的絕對(duì)地址;其中,每隔η幀記錄一個(gè)播放時(shí)間點(diǎn);按照尋址的目標(biāo)時(shí)間在所述尋址表格中查找播放時(shí)間點(diǎn),將其對(duì)應(yīng)的絕對(duì)地址作為尋址的目標(biāo)位置。進(jìn)一步,所述文件頭信息包括采樣率、聲道數(shù)、位寬、幀長(zhǎng);所述幀頭信息包括
5幀頭標(biāo)識(shí)和該幀的字節(jié)數(shù)。優(yōu)選的,所述依據(jù)音頻文件的文件頭信息生成尋址表格,具體包括計(jì)算每幀數(shù)據(jù)的時(shí)間長(zhǎng)度
權(quán)利要求
1.一種變碼率音頻文件的尋址方法,其特征在于,包括依據(jù)音頻文件的文件頭信息和幀頭信息生成尋址表格,所述尋址表格記錄有播放時(shí)間點(diǎn)及其對(duì)應(yīng)的絕對(duì)地址;其中,每隔η幀記錄一個(gè)播放時(shí)間點(diǎn);按照尋址的目標(biāo)時(shí)間在所述尋址表格中查找播放時(shí)間點(diǎn),將其對(duì)應(yīng)的絕對(duì)地址作為尋址的目標(biāo)位置。
2.如權(quán)利要求1所述的方法,其特征在于, 所述文件頭信息包括采樣率、聲道數(shù)、位寬、幀長(zhǎng); 所述幀頭信息包括幀頭標(biāo)識(shí)和該幀的字節(jié)數(shù)。
3.如權(quán)利要求2所述的方法,其特征在于,所述依據(jù)音頻文件的文件頭信息生成尋址表格,具體包括 計(jì)算每幀數(shù)據(jù)的時(shí)間長(zhǎng)度
4.如權(quán)利要求3所述的方法,其特征在于,所述按照尋址的目標(biāo)時(shí)間在所述尋址表格中查找播放時(shí)間點(diǎn),將其對(duì)應(yīng)的絕對(duì)地址作為尋址的目標(biāo)位置,具體包括將尋址的目標(biāo)時(shí)間T除以T',將得到的數(shù)值取整數(shù)k ;在尋址表格中查詢第k個(gè)T'對(duì)應(yīng)的絕對(duì)地址,將其作為尋址的目標(biāo)位置。
5.如權(quán)利要求4所述的方法,其特征在于,當(dāng)打開(kāi)所述音頻文件時(shí),遍歷整個(gè)文件,生成所述尋址表格。
6.如權(quán)利要求5所述的方法,其特征在于,所述依據(jù)音頻文件的文件頭信息生成尋址表格,還包括記錄截止播放時(shí)間點(diǎn)為(N/n)T';記錄截止播放時(shí)間點(diǎn)對(duì)應(yīng)的絕對(duì)地址為第1幀到第 N幀的字節(jié)數(shù)之和加上文件頭的長(zhǎng)度;其中,N為該音頻文件總幀數(shù);所述截止播放時(shí)間點(diǎn)對(duì)應(yīng)該音頻文件最后一幀對(duì)應(yīng)的播放時(shí)間。
7.如權(quán)利要求4所述的方法,其特征在于,在播放所述音頻文件的過(guò)程中,動(dòng)態(tài)生成并更新所述尋址表格。
8.如權(quán)利要求7所述的方法,其特征在于,所述依據(jù)音頻文件的文件頭信息生成尋址表格,還包括每隔η幀更新并記錄一次截止播放時(shí)間點(diǎn)為(Ν’/η)Τ';每隔η幀更新并記錄截止播放時(shí)間點(diǎn)對(duì)應(yīng)的絕對(duì)地址為第1幀到第N’幀的字節(jié)數(shù)之和加上文件頭的長(zhǎng)度;其中,N’為當(dāng)前播放的幀數(shù);所述截止播放時(shí)間點(diǎn)對(duì)應(yīng)當(dāng)前的播放時(shí)間。
9.如權(quán)利要求8所述的方法,其特征在于,當(dāng)尋址的目標(biāo)時(shí)間大于尋址表格記錄的截止播放時(shí)間點(diǎn)時(shí),依次識(shí)別當(dāng)前播放幀的后續(xù)幀頭;在截止播放時(shí)間點(diǎn)上累加每幀數(shù)據(jù)的時(shí)間長(zhǎng)度,直到累積到目標(biāo)時(shí)間,此時(shí)對(duì)應(yīng)的位置為尋址的目標(biāo)位置。
10.如權(quán)利要求8所述的方法,其特征在于,當(dāng)尋址的目標(biāo)時(shí)間大于尋址表格記錄的截止播放時(shí)間點(diǎn)時(shí),利用平均碼率計(jì)算目標(biāo)時(shí)間與截止播放時(shí)間點(diǎn)之間的字節(jié)數(shù);將截止播放時(shí)間點(diǎn)對(duì)應(yīng)的絕對(duì)地址加上所述字節(jié)數(shù)作為尋址的目標(biāo)位置。
11.一種變碼率音頻文件的尋址裝置,其特征在于,包括尋址表格生成單元,用于依據(jù)音頻文件的文件頭信息和幀頭信息生成尋址表格,所述尋址表格記錄有播放時(shí)間點(diǎn)及其對(duì)應(yīng)的絕對(duì)地址;其中,每隔η幀記錄一個(gè)播放時(shí)間點(diǎn);目標(biāo)地址查找單元,用于按照尋址的目標(biāo)時(shí)間在所述尋址表格中查找播放時(shí)間點(diǎn),將其對(duì)應(yīng)的絕對(duì)地址作為尋址的目標(biāo)位置。
12.如權(quán)利要求11所述的裝置,其特征在于,所述尋址表格生成單元包括第一計(jì)算子單元,用于計(jì)算每幀數(shù)據(jù)的時(shí)間長(zhǎng)度TfMre,
13.如權(quán)利要求12所述的裝置,其特征在于,所述目標(biāo)地址查找單元包括 第二計(jì)算子單元,用于將尋址的目標(biāo)時(shí)間T除以T',將得到的數(shù)值取整數(shù)k ;地址查找子單元,用于在尋址表格中查詢第k個(gè)T'對(duì)應(yīng)的絕對(duì)地址,將其作為尋址的目標(biāo)位置。
14.如權(quán)利要求13所述的裝置,其特征在于,當(dāng)打開(kāi)所述音頻文件時(shí),所述尋址表格生成單元遍歷整個(gè)文件,生成所述尋址表格。
15.如權(quán)利要求14所述的裝置,其特征在于,所述記錄子單元還用于記錄截止播放時(shí)間點(diǎn)為(N/n)T';以及記錄截止播放時(shí)間點(diǎn)對(duì)應(yīng)的絕對(duì)地址為第1幀到第N幀的字節(jié)數(shù)之和加上文件頭的長(zhǎng)度;其中,N為該音頻文件總幀數(shù);所述截止播放時(shí)間點(diǎn)對(duì)應(yīng)該音頻文件最后一幀對(duì)應(yīng)的播放時(shí)間。
16.如權(quán)利要求13所述的裝置,其特征在于,在播放所述音頻文件的過(guò)程中,所述尋址表格生成單元?jiǎng)討B(tài)生成并更新所述尋址表格。
17.如權(quán)利要求16所述的裝置,其特征在于,所述記錄子單元還用于每隔η幀更新并記錄一次截止播放時(shí)間點(diǎn)為(N’ /η)Τ';每隔 η幀更新并記錄截止播放時(shí)間點(diǎn)對(duì)應(yīng)的絕對(duì)地址為第1幀到第N’幀的字節(jié)數(shù)之和加上文件頭的長(zhǎng)度;其中,N’為當(dāng)前播放的幀數(shù);所述截止播放時(shí)間點(diǎn)對(duì)應(yīng)當(dāng)前的播放時(shí)間。
18.如權(quán)利要求17所述的裝置,其特征在于,所述目標(biāo)地址查找單元還包括幀頭識(shí)別子單元,用于當(dāng)尋址的目標(biāo)時(shí)間大于尋址表格記錄的截止播放時(shí)間點(diǎn)時(shí),依次識(shí)別當(dāng)前播放幀的后續(xù)幀頭;則所述地址查找子單元在截止播放時(shí)間點(diǎn)上累加每幀數(shù)據(jù)的時(shí)間長(zhǎng)度,直到累積到目標(biāo)時(shí)間,此時(shí)對(duì)應(yīng)的位置為尋址的目標(biāo)位置。
19.如權(quán)利要求17所述的裝置,其特征在于,所述目標(biāo)地址查找單元還包括字節(jié)計(jì)算子單元,用于當(dāng)尋址的目標(biāo)時(shí)間大于尋址表格記錄的截止播放時(shí)間點(diǎn)時(shí),利用平均碼率計(jì)算目標(biāo)時(shí)間與截止播放時(shí)間點(diǎn)之間的字節(jié)數(shù);則所述地址查找子單元將截止播放時(shí)間點(diǎn)對(duì)應(yīng)的絕對(duì)地址加上所述字節(jié)數(shù)作為尋址的目標(biāo)位置。
全文摘要
本發(fā)明提供了一種變碼率音頻文件的尋址方法和裝置,所述方法包括依據(jù)音頻文件的文件頭信息和幀頭信息生成尋址表格,所述尋址表格記錄有播放時(shí)間點(diǎn)及其對(duì)應(yīng)的絕對(duì)地址;其中,每隔n幀記錄一個(gè)播放時(shí)間點(diǎn);按照尋址的目標(biāo)時(shí)間在所述尋址表格中查找播放時(shí)間點(diǎn),將其對(duì)應(yīng)的絕對(duì)地址作為尋址的目標(biāo)位置。通過(guò)本發(fā)明,能夠盡量準(zhǔn)確的、快速的實(shí)現(xiàn)對(duì)VBR音頻文件的尋址功能。
文檔編號(hào)G06F17/30GK102402509SQ20101027596
公開(kāi)日2012年4月4日 申請(qǐng)日期2010年9月7日 優(yōu)先權(quán)日2010年9月7日
發(fā)明者徐磊 申請(qǐng)人:無(wú)錫中星微電子有限公司