音頻文件的布點實現(xiàn)方法和裝置制造方法
【專利摘要】本發(fā)明提供了一種音頻文件的布點實現(xiàn)方法和裝置。所述方法包括:按照時間的早晚順序從當前播放的音頻文件對應的布點信息中提取預設數(shù)量的事件觸發(fā)時間;讀取所述音頻文件的播放時間;根據(jù)所述播放時間和事件觸發(fā)時間控制音頻文件所在界面中的落點。所述裝置包括:時間提取模塊,用于按照時間的早晚順序從當前播放的音頻文件對應的布點信息中提取預設數(shù)量的事件觸發(fā)時間;播放時間讀取模塊,用于讀取所述音頻文件的播放時間;控制模塊,用于根據(jù)所述播放時間和事件觸發(fā)時間控制音頻文件所在界面中的落點。采用本發(fā)明提高了落點控制的準確性。
【專利說明】音頻文件的布點實現(xiàn)方法和裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及音頻處理技術(shù),特別是涉及一種音頻文件的布點實現(xiàn)方法和裝置。
【背景技術(shù)】
[0002]隨著應用軟件的日益豐富,越來越多的應用軟件配合音頻文件為用戶提供各種功能。應用軟件在運行過程中,常常根據(jù)音頻文件的節(jié)奏在應用軟件界面中布設多個落點,進而通過用戶對落點的點擊觸發(fā)用戶操作,向用戶提供較為豐富的應用軟件使用環(huán)境。
[0003]例如,在配合各種音樂所實現(xiàn)的游戲軟件中,根據(jù)音樂的節(jié)奏在每一幀游戲畫面中布設落點,以根據(jù)用戶對落點所進行的點擊操作實現(xiàn)游戲軟件中的用戶輸入。
[0004]在控制音頻文件中落點下落的過程中,任一幀應用軟件界面是與音頻文件中某些數(shù)據(jù)相對應的,這些數(shù)據(jù)標識了對應的應用軟件界面的節(jié)奏以及與節(jié)奏相匹配的落點,每一個落點的下落是根據(jù)幀的累計使用時間控制的,即判斷幀的累計使用時間是否達到數(shù)據(jù)中記錄的下落時間,若是,則會在當前幀的應用軟件界面下落落點。然而,幀的累計使用時間是對當前幀之前的每一幀進行累計計算得到的,每一幀所存在的微小誤差將導致累計計算得到的累計使用時間和落點的下落存在較大的誤差,進而使得落點將延遲數(shù)秒下落。
【發(fā)明內(nèi)容】
[0005]基于此,有必要針對音頻文件播放中落點延遲的問題,提供一種能提高落點控制的準確性的音頻文件的布點實現(xiàn)方法。
[0006]此外,還有必要提供一種能提高落點控制的準確性的音頻文件的布點實現(xiàn)裝置。
[0007]一種音頻文件的布點實現(xiàn)方法,包括如下步驟:
[0008]按照時間的早晚順序從當前播放的音頻文件對應的布點信息中提取預設數(shù)量的事件觸發(fā)時間;
[0009]讀取所述音頻文件的播放時間;
[0010]根據(jù)所述播放時間和事件觸發(fā)時間控制音頻文件所在界面中的落點。
[0011]一種音頻文件的布點實現(xiàn)裝置,包括:
[0012]時間提取模塊,用于按照時間的早晚順序從當前播放的音頻文件對應的布點信息中提取預設數(shù)量的事件觸發(fā)時間;
[0013]播放時間讀取模塊,用于讀取所述音頻文件的播放時間;
[0014]控制模塊,用于根據(jù)所述播放時間和事件觸發(fā)時間控制音頻文件所在界面中的落點。
[0015]上述音頻文件的布點實現(xiàn)方法和裝置,分別獲取音頻文件中的事件觸發(fā)時間和播放時間,并根據(jù)事件觸發(fā)時間和播放時間來實現(xiàn)音頻文件所在界面中落點的控制,由于播放時間準確地標識了當前音頻文件的播放位置,因此,根據(jù)播放時間和事件觸發(fā)時間落點的控制將避免了落點延遲的問題,進而提高落點控制的準確性?!緦@綀D】
【附圖說明】
[0016]圖1為一個實施例中音頻文件的布點實現(xiàn)方法的流程圖;
[0017]圖2為一個實施例中從音頻文件中讀取標頭數(shù)據(jù)和音軌數(shù)據(jù),并根據(jù)標頭數(shù)據(jù)和音軌數(shù)據(jù)生成音頻文件中事件的布點信息的方法流程圖;
[0018]圖3為一個實施例中音頻文件的布點實現(xiàn)裝置的結(jié)構(gòu)示意圖;
[0019]圖4為另一個實施例中音頻文件的布點實現(xiàn)裝置的結(jié)構(gòu)示意圖;
[0020]圖5為圖4中布點信息生成模塊的結(jié)構(gòu)示意圖。
【具體實施方式】
[0021]如圖1所示,在一個實施例中,一種音頻文件的布點實現(xiàn)方法,包括如下步驟:
[0022]步驟S110,按照時間的早晚順序從當前播放的音頻文件對應的布點信息中提取預設數(shù)量的事件觸發(fā)時間。
[0023]本實施例中,布點信息中記錄了音頻文件中每一事件所對應的事件觸發(fā)時間,每一事件是與音頻文件中的音符對應的,事件觸發(fā)時間將標識了某一音符的起始時間。
[0024]音頻文件播放時,將在音頻文件所對應的布點信息中提取預設數(shù)量的事件觸發(fā)時間。具體的,布點信息中,按照時間的早晚順序?qū)γ恳皇录鶎氖录|發(fā)時間進行排序,進而從排序的事件觸發(fā)時間中提取預設數(shù)量的事件觸發(fā)時間。在優(yōu)選的實施例中,該預設數(shù)量是依據(jù)音頻文件中的音軌數(shù)量確定的。
[0025]在一個實施例中,上述步驟SllO的具體過程為:在當前播放音頻文件的幀循環(huán)中逐幀按照時間的早晚順序從布點信息中提取當前幀所對應的預設數(shù)量的事件觸發(fā)時間。
[0026]本實施例中,音頻文件的播放過程中,音頻文件所在界面也是逐幀循環(huán)播放的。在音頻文件的幀循環(huán)中從按照時間的早晚順序進行排序所得到的事件觸發(fā)時間中提取預設數(shù)量的事件觸發(fā)時間,這些提取的事件觸發(fā)時間將是與當前幀相對應的。
[0027]在音頻文件的幀循環(huán)中,音頻文件所在界面逐幀進行變換,每一幀的界面均配合了相應的音符,并且由于音符是由若干個音軌分別對應的事件形成的,因此,每一幀的界面是與若干個音軌分別對應的事件相對應的,進而事件觸發(fā)時間也應當是與某一幀的界面相對應即可實現(xiàn)音頻文件中的節(jié)奏與音頻文件所在界面的變換相符。
[0028]步驟S130,讀取音頻文件的播放時間。
[0029]本實施例中,播放時間為音頻文件的播放過程中所播放到的時間位置,用于表征音頻文件的已播放時長。
[0030]步驟S150,根據(jù)播放時間和事件觸發(fā)時間控制音頻文件所在界面中的落點。
[0031]本實施例中,落點是根據(jù)事件觸發(fā)時間顯示于音頻文件所在界面的操作點,用戶落點上觸發(fā)的操作事件將使得音頻文件所在界面發(fā)生一定的變換。例如,在游戲軟件中,根據(jù)事件觸發(fā)時間和游戲軟件所加載的音頻文件的播放時間將會在游戲界面中顯示若干個落點,用戶通過點擊某一落點來觸發(fā)音頻文件中相應音符的播放,進而實現(xiàn)用戶彈奏的效果O
[0032]通過播放時間控制音頻文件所在界面中的落點,由于播放時間是音頻文件的播放過程中當前播放到的時間位置,是直接讀取到的,未經(jīng)過任何時間的計算,因此不存在誤差,而事件觸發(fā)時間是與音頻文件中的事件相對應的,因此,播放時間和事件觸發(fā)時間這兩個參數(shù)都不存在誤差,保證了音頻文件所在界面中落點控制的準確性。
[0033]在一個實施例中,上述步驟S150的具體過程為:
[0034]將事件觸發(fā)時間和播放時間進行比對,判斷事件觸發(fā)時間是否大于播放時間,若是,則在音頻文件所在界面中觸發(fā)落點的顯示控制,若否,則結(jié)束。
[0035]本實施例中,若判斷到事件觸發(fā)時間大于播放時間,則說明在當前幀中對相應落點觸發(fā)顯示控制不會出現(xiàn)時間上的延遲,因此,可開始在音頻文件所在界面中觸發(fā)該落點的顯示控制,例如,在游戲界面中,落點是以出現(xiàn)并下落的動畫形式進行顯示的,此時,在當前幀中判斷到事件觸發(fā)時間大于播放時間時,將在游戲界面中出現(xiàn)該落點,并播放下落的動畫效果。
[0036]若判斷到事件觸發(fā)時間小于播放時間時,說明該事件觸發(fā)時間所對應的事件以及落點已經(jīng)跳過或者錯過,將不進行任何處理,不會運行當前幀所對應的事件以及對相應的落點進行控制,以避免發(fā)出與音頻文件所在界面不匹配的音符,此時,將進入下一幀循環(huán)中,繼續(xù)讀取播放時間,并提取事件觸發(fā)時間,以實現(xiàn)下一幀循環(huán)中的落點控制。
[0037]在另一個實施例中,上述步驟SllO之前還包括:從音頻文件中讀取標頭數(shù)據(jù)和音軌數(shù)據(jù),并根據(jù)標頭數(shù)據(jù)和音軌數(shù)據(jù)生成音頻文件中事件的布點信息。
[0038]本實施例中,音頻文件優(yōu)選為Mid (Musical Instrument Digital Interface,樂器數(shù)字接口)文件格式,音頻文件包括了標頭數(shù)據(jù)和音軌數(shù)據(jù),其中,標頭數(shù)據(jù)中記錄了音頻文件的格式以及各種參數(shù),例如BPM (Beats Per Minute,節(jié)拍/分鐘)這一參數(shù)所對應的數(shù)值,以用于表征節(jié)奏速度;音軌數(shù)據(jù)中記錄了用于實現(xiàn)音符播放的事件應用的樂器種類、音調(diào)、伴奏以及該事件的時間片信息等信息,通過將音軌數(shù)據(jù)輸入合成器接口即可實現(xiàn)某一音符的播放。
[0039]具體的,根據(jù)標頭數(shù)據(jù)中記錄的參數(shù)以及音軌數(shù)據(jù)中每一事件的時間片信息進行運算得到音頻文件中每一事件所對應的事件觸發(fā)時間,進而通過每一事件所對應的事件觸發(fā)時間生成布點信息。
[0040]進一步的,音頻文件中事件的布點信息除了記錄了每一事件所對應的事件觸發(fā)時間之外,還記錄了該事件的時長。該事件的時長用于控制事件所對應的音符播放時長以及相應落點在音頻文件所在界面的顯示時長。從音軌數(shù)據(jù)中可以獲知事件終止時間,進而根據(jù)事件觸發(fā)時間和事件終止時間即可得到該事件的時長。
[0041]如圖2所示,在一個實施例中,上述從音頻文件中讀取標頭數(shù)據(jù)和音軌數(shù)據(jù),并根據(jù)標頭數(shù)據(jù)和音軌數(shù)據(jù)生成音頻文件中事件的布點信息的具體過程為:
[0042]步驟S201,從音頻文件中讀取記錄的標頭數(shù)據(jù)和音軌數(shù)據(jù)。
[0043]步驟S203,獲取音軌數(shù)據(jù)中事件的時間片信息,根據(jù)標頭數(shù)據(jù)和事件的時間片信息計算得到事件對應的事件觸發(fā)時間。
[0044]本實施例中,時間片信息為音頻文件中最小時間單位(tick)的次數(shù),用于在某一時間點控制相應事件的執(zhí)行,即經(jīng)歷了一定次數(shù)個最小時間單位之后開始執(zhí)行相應事件。
[0045]分別獲取音軌數(shù)據(jù)中事件的時間片信息和標頭數(shù)據(jù)中記錄的參數(shù)進行計算,通過標頭數(shù)據(jù)中的BPM等參數(shù)計算得到該音頻文件的最小時間單位,進而根據(jù)最小時間單位和時間片信息計算得到事件的觸發(fā)時間。
[0046]步驟S205,通過事件觸發(fā)時間生成事件的布點信息。[0047]本實施例中,音頻文件中每一事件的事件觸發(fā)時間形成了布點信息,進而通過布點信息在音頻文件的播放過程中對落點進行控制。
[0048]在一個實施例中,上述通過事件觸發(fā)時間生成事件的布點信息的具體過程為:根據(jù)事件對應的音軌將事件觸發(fā)時間以二進制的形式置于對應的音軌布點集合中,該音軌布點集合形成音頻文件中事件的布點信息。
[0049]本實施例中,以二進制的形式對得到的事件觸發(fā)時間進行存儲,以最大限度地節(jié)省存儲空間,此時,布點信息是以二進制流的格式存在的。具體的,由于音頻文件中設置了若干個音軌,因此將二進制形式的事件觸發(fā)時間放置于所在音軌對應的音軌布點集合中,并由若干個音軌布點集合形成音頻文件中事件的布點信息,實現(xiàn)了布點信息中的有序存儲和封裝。
[0050]下面結(jié)合一個具體的實施例來詳細闡述上述音頻文件的布點實現(xiàn)方法。該實施例中,音頻文件所在界面為音樂游戲界面,音頻文件為音樂游戲運行過程中提供音樂。在用戶
運行音樂游戲的過程中將按照時間的早晚順序從布點信息中提取預設數(shù)量的事件觸發(fā)時間,并讀取音頻文件的播放時間,進而根據(jù)播放時間和事件觸發(fā)時間來控制音樂游戲顯示相應的落點,進而根據(jù)用戶對落點的點擊發(fā)出相應的首符。
[0051]如圖3所示,在一個實施例中,一種音頻文件的布點實現(xiàn)裝置,包括時間提取模塊110、播放時間讀取模塊130以及控制模塊150。
[0052]時間提取模塊110,用于按照時間的早晚順序從當前播放的音頻文件對應的布點信息中提取預設數(shù)量的事件觸發(fā)時間。
[0053]本實施例中,布點信息中記錄了音頻文件中每一事件所對應的事件觸發(fā)時間,每一事件是與音頻文件中的音符對應的,事件觸發(fā)時間將標識了某一音符的起始時間。
[0054]音頻文件播放時,時間提取模塊110將在音頻文件所對應的布點信息中提取預設數(shù)量的事件觸發(fā)時間。具體的,布點信息中,按照時間的早晚順序?qū)γ恳皇录鶎氖录|發(fā)時間進行排序,時間提取模塊110從排序的事件觸發(fā)時間中提取預設數(shù)量的事件觸發(fā)時間。在優(yōu)選的實施例中,該預設數(shù)量是依據(jù)音頻文件中的音軌數(shù)量確定的。
[0055]在一個實施例中,上述時間提取模塊110還用于在當前播放音頻文件的幀循環(huán)中逐幀按照時間的早晚順序從布點信息中提取當前幀所對應的預設數(shù)量的事件觸發(fā)時間。
[0056]本實施例中,音頻文件的播放過程中,音頻文件所在界面也是逐幀循環(huán)播放的。時間提取模塊110在音頻文件的幀循環(huán)中從按照時間的早晚順序進行排序所得到的事件觸發(fā)時間中提取預設數(shù)量的事件觸發(fā)時間,這些提取的事件觸發(fā)時間將是與當前幀相對應的。
[0057]在音頻文件的幀循環(huán)中,音頻文件所在界面逐幀進行變換,每一幀的界面均配合了相應的音符,并且由于音符是由若干個音軌分別對應的事件形成的,因此,每一幀的界面是與若干個音軌分別對應的事件相對應的,進而事件觸發(fā)時間也應當是與某一幀的界面相對應即可實現(xiàn)音頻文件中的節(jié)奏與音頻文件所在界面的變換相符。
[0058]播放時間讀取模塊130,用于讀取音頻文件的播放時間。
[0059]本實施例中,播放時間為音頻文件的播放過程中所播放到的時間位置,用于表征音頻文件的已播放時長。
[0060]控制模塊150,用于根據(jù)播放時間和事件觸發(fā)時間控制音頻文件所在界面中的落點。
[0061]本實施例中,落點是根據(jù)事件觸發(fā)時間顯示于音頻文件所在界面的操作點,用戶落點上觸發(fā)的操作事件將使得音頻文件所在界面發(fā)生一定的變換。例如,在游戲軟件中,控制模塊150根據(jù)事件觸發(fā)時間和游戲軟件所加載的音頻文件的播放時間將會在游戲界面中顯示若干個落點,用戶通過點擊某一落點來觸發(fā)音頻文件中相應音符的播放,進而實現(xiàn)用戶彈奏的效果。
[0062]控制模塊150通過播放時間控制音頻文件所在界面中的落點,由于播放時間是音頻文件的播放過程中當前播放到的時間位置,是直接讀取到的,未經(jīng)過任何時間的計算,因此不存在誤差,而事件觸發(fā)時間是與音頻文件中的事件相對應的,因此,播放時間和事件觸發(fā)時間這兩個參數(shù)都不存在誤差,保證了音頻文件所在界面中落點控制的準確性。
[0063]在一個實施例中,上述控制模塊150還用于將事件觸發(fā)時間和播放時間進行比對,判斷事件觸發(fā)時間是否大于播放時間,若是,則在音頻文件所在界面中觸發(fā)落點的顯示控制,若否,則停止執(zhí)行。
[0064]本實施例中,若控制模塊150判斷到事件觸發(fā)時間大于播放時間,則說明在當前幀中對相應落點觸發(fā)顯示控制不會出現(xiàn)時間上的延遲,因此,可開始在音頻文件所在界面中觸發(fā)該落點的顯示控制,例如,在游戲界面中,落點是以出現(xiàn)并下落的動畫形式進行顯示的,此時,控制模塊150在當前幀中判斷到事件觸發(fā)時間大于播放時間時,將在游戲界面中出現(xiàn)該落點,并播放下落的動畫效果。
[0065]控制模塊150若判斷到事件觸發(fā)時間小于播放時間時,說明該事件觸發(fā)時間所對應的事件以及落點已經(jīng)跳過或者錯過,將不進行任何處理,不會運行當前幀所對應的事件以及對相應的落點進行控制,以避免發(fā)出與音頻文件所在界面不匹配的音符,此時,將進入下一幀循環(huán)中,繼續(xù)讀取播放時間,并提取事件觸發(fā)時間,以實現(xiàn)下一幀循環(huán)中的落點控制。
[0066]如圖4所示,在另一個實施例中,上述音頻文件的布點實現(xiàn)裝置還包括布點信息生成模塊210。
[0067]布點信息生成模塊210,用于從音頻文件中讀取標頭數(shù)據(jù)和音軌數(shù)據(jù),并根據(jù)標頭數(shù)據(jù)和音軌數(shù)據(jù)生成音頻文件中事件的布點信息。
[0068]本實施例中,音頻文件優(yōu)選為Mid文件格式,音頻文件包括了標頭數(shù)據(jù)和音軌數(shù)據(jù),其中,標頭數(shù)據(jù)中記錄了音頻文件的格式以及各種參數(shù),例如BPM (Beats Per Minute,節(jié)拍/分鐘)這一參數(shù)所對應的數(shù)值,以用于表征節(jié)奏速度;音軌數(shù)據(jù)中記錄了用于實現(xiàn)音符播放的事件應用的樂器種類、音調(diào)、伴奏以及該事件的時間片信息等信息,通過將音軌數(shù)據(jù)輸入合成器接口即可實現(xiàn)某一音符的播放。
[0069]具體的,布點信息生成模塊210根據(jù)標頭數(shù)據(jù)中記錄的參數(shù)以及音軌數(shù)據(jù)中每一事件的時間片信息進行運算得到音頻文件中每一事件所對應的事件觸發(fā)時間,進而通過每一事件所對應的事件觸發(fā)時間生成布點信息。
[0070]進一步的,音頻文件中事件的布點信息除了記錄了每一事件所對應的事件觸發(fā)時間之外,還記錄了該事件的時長。該事件的時長用于控制事件所對應的音符播放時長以及相應落點在音頻文件所在界面的顯示時長。從音軌數(shù)據(jù)中可以獲知事件終止時間,進而根據(jù)事件觸發(fā)時間和事件終止時間即可得到該事件的時長。[0071 ] 如圖5所示,在一個實施例中,上述布點信息生成模塊210包括數(shù)據(jù)讀取單元211、運算單元213和信息生成單元215。
[0072]數(shù)據(jù)讀取單元211,用于從音頻文件中讀取記錄的標頭數(shù)據(jù)和音軌數(shù)據(jù)。
[0073]運算單元213,用于獲取音軌中事件的時間片信息,根據(jù)標頭數(shù)據(jù)和事件的時間片信息計算得到事件對應的事件觸發(fā)時間。
[0074]本實施例中,時間片信息為音頻文件中最小時間單位(tick)的次數(shù),用于在某一時間點控制相應事件的執(zhí)行,即經(jīng)歷了一定次數(shù)個最小時間單位之后開始執(zhí)行相應事件。
[0075]運算單元213分別獲取音軌數(shù)據(jù)中事件的時間片信息和標頭數(shù)據(jù)中記錄的參數(shù)進行計算,通過標頭數(shù)據(jù)中的BPM等參數(shù)計算得到該音頻文件的最小時間單位,進而根據(jù)最小時間單位和時間片彳目息計算得到事件的觸發(fā)時間。
[0076]信息生成單元215,用于通過事件觸發(fā)時間生成事件的布點信息。
[0077]本實施例中,信息生成單元215通過音頻文件中每一事件的事件觸發(fā)時間形成布點信息,進而通過布點信息在音頻文件的播放過程中對落點進行控制。
[0078]在一個實施例中,上述信息生成單元215還用于根據(jù)事件對應的音軌將事件觸發(fā)時間以二進制的形式置于對應的音軌布點集合中,該音軌布點集合形成音頻文件中事件的布點信息。
[0079]本實施例中,信息生成單元215以二進制的形式對得到的事件觸發(fā)時間進行存儲,以最大限度地節(jié)省存儲空間,此時,布點信息是以二進制流的格式存在的。具體的,由于音頻文件中設置了若干個音軌,因此信息生成單元215將二進制形式的事件觸發(fā)時間放置于所在音軌對應的音軌布點集合中,并由若干個音軌布點集合形成音頻文件中事件的布點信息,實現(xiàn)了布點信息中的有序存儲和封裝。
[0080]上述音頻文件的布點實現(xiàn)方法和裝置,分別獲取音頻文件中的事件觸發(fā)時間和播放時間,并根據(jù)事件觸發(fā)時間和播放時間來實現(xiàn)音頻文件所在界面中落點的控制,由于播放時間準確地標識了當前音頻文件的播放位置,因此,根據(jù)播放時間和事件觸發(fā)時間落點的控制將避免了落點延遲的問題,進而提高落點控制的準確性。
[0081]本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述實施例方法中的全部或部分流程,是可以通過計算機程序來指令相關(guān)的硬件來完成,所述的程序可存儲于一計算機可讀取存儲介質(zhì)中,該程序在執(zhí)行時,可包括如上述各方法的實施例的流程。其中,所述的存儲介質(zhì)可為磁碟、光盤、只讀存儲記憶體(Read-Only Memory, ROM)或隨機存儲記憶體(Random AccessMemory, RAM)等。
[0082]以上所述實施例僅表達了本發(fā)明的幾種實施方式,其描述較為具體和詳細,但并不能因此而理解為對本發(fā)明專利范圍的限制。應當指出的是,對于本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進,這些都屬于本發(fā)明的保護范圍。因此,本發(fā)明專利的保護范圍應以所附權(quán)利要求為準。
【權(quán)利要求】
1.一種音頻文件的布點實現(xiàn)方法,包括如下步驟: 按照時間的早晚順序從當前播放的音頻文件對應的布點信息中提取預設數(shù)量的事件觸發(fā)時間; 讀取所述音頻文件的播放時間; 根據(jù)所述播放時間和事件觸發(fā)時間控制音頻文件所在界面中的落點。
2.根據(jù)權(quán)利要求1所述的音頻文件的布點實現(xiàn)方法,其特征在于,所述按照時間的早晚順序從當前播放的音頻文件對應的布點信息中提取預設數(shù)量的事件觸發(fā)時間的步驟為: 在所述當前播放音頻文件的幀循環(huán)中逐幀按照時間的早晚順序從所述布點信息中提取當前幀所對應的預設數(shù)量的事件觸發(fā)時間。
3.根據(jù)權(quán)利要求1所述的音頻文件的布點實現(xiàn)方法,其特征在于,所述根據(jù)所述播放時間和事件觸發(fā)時間控制音頻文件所在界面中的落點的步驟為: 將所述事件觸發(fā)時間和播放時間進行比對,判斷所述事件觸發(fā)時間是否大于播放時間,若是,則在所述音頻文件所在界面中觸發(fā)所述落點的顯示控制。
4.根據(jù)權(quán)利要求1所述的音頻文件的布點實現(xiàn)方法,其特征在于,所述按照時間的早晚順序從當前播放的音頻文件對應的布點信息中提取預設數(shù)量的事件觸發(fā)時間的步驟之前還包括: 從所述音頻文件中讀取標頭數(shù)據(jù)和音軌數(shù)據(jù),并根據(jù)所述標頭數(shù)據(jù)和音軌數(shù)據(jù)生成所述音頻文件中事件的布點信息。
5.根據(jù)權(quán)利要求4所述的音頻文件的布點實現(xiàn)方法,其特征在于,所述從所述音頻文件中讀取標頭數(shù)據(jù)和音軌數(shù)據(jù),并根據(jù)所述標頭數(shù)據(jù)和音軌數(shù)據(jù)生成所述音頻文件中事件的布點信息的步驟為: 從所述音頻文件中讀取記錄的標頭數(shù)據(jù)和音軌數(shù)據(jù); 獲取音軌數(shù)據(jù)中事件的時間片信息,根據(jù)所述標頭數(shù)據(jù)和事件的時間片信息計算得到所述事件對應的事件觸發(fā)時間; 通過所述事件觸發(fā)時間生成事件的布點信息。
6.根據(jù)權(quán)利要求5所述的音頻文件的布點實現(xiàn)方法,其特征在于,所述通過所述事件觸發(fā)時間生成事件的布點信息的具體過程為: 根據(jù)所述事件對應的音軌將所述事件觸發(fā)時間以二進制的形式置于對應的音軌布點集合中,所述音軌布點集合形成音頻文件中事件的布點信息。
7.一種音頻文件的布點實現(xiàn)裝置,其特征在于,包括: 時間提取模塊,用于按照時間的早晚順序從當前播放的音頻文件對應的布點信息中提取預設數(shù)量的事件觸發(fā)時間; 播放時間讀取模塊,用于讀取所述音頻文件的播放時間; 控制模塊,用于根據(jù)所述播放時間和事件觸發(fā)時間控制音頻文件所在界面中的落點。
8.根據(jù)權(quán)利要求7所述的音頻文件的布點實現(xiàn)裝置,其特征在于,所述時間提取模塊還用于在所述當前播放音頻文件的幀循環(huán)中逐幀按照時間的早晚順序從所述布點信息中提取當前幀所對應的預設數(shù)量的事件觸發(fā)時間。
9.根據(jù)權(quán)利7所述的音頻文件的布點實現(xiàn)方法,其特征在于,所述控制模塊還用于將所述事件觸發(fā)時間和播放時間進行比對,判斷所述事件觸發(fā)時間是否大于播放時間,若是,則在所述音頻文件所在界面中觸發(fā)落點的顯示控制。
10.根據(jù)權(quán)利要求7所述的音頻文件的布點實現(xiàn)裝置,其特征在于,還包括: 布點信息生成模塊,用于從所述音頻文件中讀取標頭數(shù)據(jù)和音軌數(shù)據(jù),并根據(jù)所述標頭數(shù)據(jù)和音軌數(shù)據(jù)生成音頻文件中事件的布點信息。
11.根據(jù)權(quán)利要求10所述的音頻文件的布點實現(xiàn)裝置,其特征在于,所述布點信息生成模塊包括: 數(shù)據(jù)讀取單元,用于從所述音頻文件中讀取記錄的標頭數(shù)據(jù)和音軌數(shù)據(jù); 運算單元,用于獲取音軌數(shù)據(jù)中事件的時間片信息,根據(jù)所述標頭數(shù)據(jù)和事件的時間片信息計算得到所述事件對應的事件觸發(fā)時間; 信息生成單元,用于通過所述事件觸發(fā)時間生成事件的布點信息。
12.根據(jù)權(quán)利要求11所述的音頻文件的布點實現(xiàn)裝置,其特征在于,所述信息生成單元還用于根據(jù)所述事件對應的音軌將所述事件觸發(fā)時間以二進制的形式置于對應的音軌布點集合中,所述音軌布點集合形成音頻文件中事件的布點信息。
【文檔編號】G11B27/10GK103680562SQ201210321561
【公開日】2014年3月26日 申請日期:2012年9月3日 優(yōu)先權(quán)日:2012年9月3日
【發(fā)明者】孫煥文, 溫雨凝 申請人:騰訊科技(深圳)有限公司