一種音頻指紋的提取方法及系統的制作方法
【專利摘要】本發明提供了一種音頻指紋的提取方法,包括:音頻客戶端對原始的音頻數據進行降采樣處理,得到低頻帶的音頻數據,并對低頻帶的音頻數據進行量化編碼處理,得到編碼值,將所述編碼值發送到服務器;服務器對收到的編碼值進行逆量化解碼處理,得到重建的音頻數據,從重建的音頻數據中提取音頻指紋;本發明還提供一種音頻指紋的提取系統。據本發明提供的技術方案,在降低音頻數據的傳輸量的同時提高從音頻數據中提取的音頻指紋的準確率。
【專利說明】一種音頻指紋的提取方法及系統
【【技術領域】】
[0001]本發明涉及互聯網應用領域,尤其涉及一種音頻指紋的提取方法及系統。
【【背景技術】】
[0002]當用戶使用音樂播放器播放本地音頻時或當用戶在音樂播放器中輸入一段音頻時,可以利用音頻指紋技術從互聯網的音頻數據庫中獲得歌名、歌手、專輯名等音頻信息,還可以獲得高質量的正版音頻資源。音頻指紋技術中,需要為每一首歌曲編制特征碼,用以實現歌曲的精確匹配和識別,為廣大用戶提供音頻識別服務。
[0003]目前,利用音頻指紋技術從音頻數據庫中獲得音頻或音頻信息時,需要由音頻客戶端(如音樂播放器軟件、MP3播放器等)將壓縮后的音頻數據通過互聯網上傳到服務器,由服務器從音頻數據中提取音頻指紋,再依據提取的音頻指紋在音頻數據庫中進行匹配,識別出音頻或音頻信息;其中,音頻客戶端利用wma編碼器對原始的音頻數據進行編碼,得到wma格式的音頻數據。wma編碼器是基于模型的編碼方式,雖然能夠提高音頻數據的壓縮t匕,降低數據傳輸量,但也會丟失很多音頻數據,使得提取的音頻指紋準確率較低,最終將導致服務器的識別結果的準確率較低;而且,wma編碼器的編碼過程非常復雜,需要進行大量運算,產生大量數據,因此無法在各種移動終端中應用,使得音頻客戶端存在局限性。
【
【發明內容】
】
[0004]本發明提供了一種音頻指紋的提取方法及系統,能夠在降低音頻數據的傳輸量的同時提高從音頻數據中提取的音頻指紋的準確率。
[0005]本發明的具體技術方案如下:
[0006]根據本發明一優選實施例,一種音頻指紋的提取方法,包括:
[0007]音頻客戶端對原始的音頻數據進行降采樣處理,得到低頻帶的音頻數據,并對低頻帶的音頻數據進行量化編碼處理,得到編碼值,將所述編碼值發送到服務器;
[0008]服務器對收到的編碼值進行逆量化解碼處理,得到重建的音頻數據,從重建的音頻數據中提取音頻指紋。
[0009]上述方法中,所述對原始的音頻數據進行降采樣處理具體為:
[0010]將原始的音頻數據通過截止頻率為1/M的低通濾波器,然后每M個樣點抽取一個樣點,得到樣點的采樣值,所述采樣值為低頻帶的音頻數據;其中,M為正整數。
[0011]上述方法中,所述對低頻帶的音頻數據進行量化編碼處理具體為:
[0012]計算當前輸入的采樣值與預設的預測采樣值之間的差值;
[0013]利用存儲的上一個采樣值的量化步長索引查詢預設的步長調整表,得到量化步長,如果所述差值為負數,則4位的編碼值中的第3位的值設置為1,反之,設置為O ;如果所述差值大于量化步長,則4位的編碼值中的第2位的值設置為I,反之,設置為O ;如果差值與量化步長的差值大于二分之一的量化步長,則4位的編碼值中的第I位的值設置為1,反之,設置為O ;如果差值減去量化步長再減去二分之一的量化步長后大于四分之一的量化步長,則4位的編碼值中的第O位的值設置為I,反之,設置為O。
[0014]上述方法中,該方法還包括:
[0015]利用得到的編碼值查詢預設的索引調整表,得到量化步長索引,將所述量化步長索引與存儲的量化步長索引相加,得到新的量化步長索引,存儲新的量化步長索引,所述新的量化步長索引在對下一個采樣值進行量化編碼時用于查詢步長調整表。
[0016]上述方法中,所述對收到的編碼值進行逆量化解碼處理具體為:
[0017]利用預設的量化步長索引查詢步長調整表,得到量化步長;
[0018]依據所述量化步長對當前的編碼值進行逆量化處理,得到差值;
[0019]將預設的預測解碼值與差值相加得到解碼值,所述解碼值為重建的音頻數據。
[0020]上述方法中,該方法還包括:
[0021]存儲所述解碼值,所述解碼值作為新的預測解碼值;
[0022]用當前編碼值調整量化步長索引,存儲新的量化步長索引,所述新的量化步長索引用于進行下一個編碼值的逆量化解碼處理。
[0023]一種音頻指紋的提取系統,包括:音頻客戶端、服務器;其中,
[0024]音頻客戶端,用于對原始的音頻數據進行降采樣處理,得到低頻帶的音頻數據,并對低頻帶的音頻數據進行量化編碼處理,得到編碼值,將所述編碼值發送到服務器;
[0025]服務器,用于對收到的編碼值進行逆量化解碼處理,得到重建的音頻數據,從重建的音頻數據中提取音頻指紋。
[0026]上述系統中,所述音頻客戶端進一步包括:
[0027]重采樣單元,用于將原始的音頻數據通過截止頻率為1/M的低通濾波器,然后每M個樣點抽取一個樣點,得到樣點的采樣值,所述采樣值為低頻帶的音頻數據;其中,M為正整數。
[0028]上述系統中,所述音頻客戶端還包括:
[0029]ADPCM編碼單元,用于計算當前輸入的采樣值與預設的預測采樣值之間的差值;利用存儲的上一個采樣值的量化步長索引查詢預設的步長調整表,得到量化步長,如果所述差值為負數,則4位的編碼值中的第3位的值設置為1,反之,設置為O ;如果所述差值大于量化步長,則4位的編碼值中的第2位的值設置為1,反之,設置為O ;如果差值與量化步長的差值大于二分之一的量化步長,則4位的編碼值中的第I位的值設置為1,反之,設置為O ;如果差值減去量化步長再減去二分之一的量化步長后大于四分之一的量化步長,則4位的編碼值中的第O位的值設置為1,反之,設置為O。
[0030]上述系統中,所述ADPCM編碼單元,還用于利用得到的編碼值查詢預設的索引調整表,得到量化步長索引,將所述量化步長索引與存儲的量化步長索引相加,得到新的量化步長索引,存儲新的量化步長索引,所述新的量化步長索引在對下一個采樣值進行量化編碼時用于查詢步長調整表。
[0031]上述系統中,所述服務器進一步包括:
[0032]ADPCM解碼單元,用于利用預設的量化步長索引查詢步長調整表,得到量化步長;依據所述量化步長對當前的編碼值進行逆量化處理,得到差值;將預設的預測解碼值與差值相加得到解碼值,所述解碼值為重建的音頻數據。
[0033]上述系統中,所述ADPCM解碼單元,還用于存儲所述解碼值,所述解碼值作為新的預測解碼值;用當前編碼值調整量化步長索引,存儲新的量化步長索引,所述新的量化步長索引用于進行下一個編碼值的逆量化解碼處理。
[0034]由以上技術方案可以看出,本發明提供的具有以下有益效果:
[0035]對原始的音頻數據進行降采樣處理,實現在保留了最重要的音頻數據的同時去除了多余的其他頻帶的音頻數據,從而減少音頻客戶端的處理數據量和傳輸數據量,提高音頻客戶端的工作效率,使得更多的移動終端能夠支持這種音頻客戶端,提高音頻客戶端的應用范圍;而且,利用對音頻數據進行量化編碼后發送到服務器,在對音頻數據進行壓縮的同時可以最大程度的保存原始的音頻數據的音頻信息,從而有利于音頻數據中音頻指紋的提取,提聞提取的首頻指紋的準確率,進而提聞服務器的識別準確率。
【【專利附圖】
【附圖說明】】
[0036]圖1是本發明實現音頻指紋的提取系統的優選實施例的結構示意圖;
[0037]圖2是本發明實現音頻指紋的提取方法的優選實施例的流程示意圖;
[0038]圖3是本發明中提取的音頻指紋的示例圖。
【【具體實施方式】】
[0039]本發明的基本思想是:音頻客戶端對原始的音頻數據進行降采樣處理,得到低頻帶的音頻數據,并對低頻帶的音頻數據進行量化編碼處理,得到編碼值,將所述編碼值發送到服務器;服務器對收到的編碼值進行逆量化解碼處理,得到重建的音頻數據,從重建的音頻數據中提取音頻指紋。
[0040]為了使本發明的目的、技術方案和優點更加清楚,下面結合附圖和具體實施例對本發明進行詳細描述。
[0041]本發明提供一種利用音頻指紋的提取系統,圖1是本發明實現音頻指紋的提取系統的優選實施例的結構示意圖,如圖1所示,該系統包括:音頻客戶端10、服務器11。
[0042]音頻客戶端10進一步包括:重采樣單元101、ADPCM編碼單元102、發送單元103。
[0043]服務器11進一步包括:接收單元111、ADPCM解碼單元112、指紋提取單元113、音頻識別單元114。
[0044]基于上述系統,本發明還提供一種音頻指紋的提取方法,圖2是本發明實現音頻指紋的提取方法的優選實施例的流程示意圖,如圖2所示,該優選實施例包括以下步驟:
[0045]步驟S201,音頻客戶端對原始的音頻數據進行降采樣處理,得到低頻帶的音頻數據。
[0046]具體的,在音頻客戶端,重采樣單元對輸入的原始的音頻數據進行降采樣處理,所述原始的音頻數據指的是采樣率為44.1KHz的音頻數據;該降采樣處理為:基于奈奎斯特采樣定律,利用sine函數對原始的音頻數據進行降采樣處理,例如,采樣率降低M倍,用x(k)表示輸入的原始的音頻數據,用y(m)表示降采樣后得到的音頻數據,則降采樣處理后得到的音頻數據為y (m) =w (mM) = Σ k=_ 00 x (k) h (mM-k),其中h (m) =sinc (m/M),表示先將原始的音頻數據通過截止頻率為1/M的低通濾波器,然后每M個樣點抽取一個樣點,得到該樣點的采樣值,從而實現將采樣率降低M倍,得到的采樣值就是低頻帶的音頻數據,重采樣單元將得到的低頻帶的音頻數據發送給ADPCM編碼單元;其中,M為正整數,可以依據需要的采樣率設置M的具體數值。實際應用中,一般將原始的音頻數據的44.1KHz的采樣率降為8KHz或5KHz的采樣率。
[0047]音頻信息在音頻數據的全頻帶都會存在,但是從人耳的感知角度來說,音頻數據中最重要的音頻信息多位于低頻帶,即低頻帶的音頻數據足夠用來表征一個唯一的聲學信號,例如一首歌曲;因此本優選實施例中對原始的音頻數據進行降采樣處理,得到其中的低頻帶的音頻數據,在保留了最重要的音頻數據的同時去除了多余的其他頻帶的音頻數據,從而減少音頻客戶端的處理數據量和傳輸數據量,提高音頻客戶端的工作效率,使得更多的移動終端能夠支持這種音頻客戶端,提高音頻客戶端的應用范圍。
[0048]步驟S202,音頻客戶端對低頻帶的音頻數據進行量化編碼處理,得到編碼值。
[0049]具體的,ADPCM(Adaptive Differential Pulse Code Modulat1n,自適應差分脈沖編碼調制)編碼單元從重采樣單元接收低頻帶的音頻數據,這里,所接收的低頻帶的音頻數據為一系列的采樣值,下面以采樣值是16bit的二進制補碼的音頻數據為例,說明ADPCM編碼單元對低頻帶的音頻數據進行量化編碼處理得到編碼值的方法:
[0050]首先,依據預設的預測采樣值Sp,計算當前輸入的采樣值Si與預測采樣值Sp之間的差值d,其中,預測采樣值Sp是通過對當前輸入的采樣值Si的上一個采樣值進行量化編碼后生成的,可以將預先生成的預測采樣值Sp存儲在預設的結構變量中。
[0051]然后,依據量化步長q對得到的差值d進行量化編碼,得到4位的編碼值I,4位的編碼值I中包括一個符號位和三個幅度位,具體為:預先設置索引調整表和步長調整表,所述索引調整表的輸入為編碼值I,輸出為量化步長索引,所述步長調整表的輸入為量化步長索引,輸出為輸入的量化步長索引對應的量化步長q;量化編碼時,先利用結構變量中存儲的上一個采樣值的量化步長索引查詢步長調整表,得到量化步長q,如果當前輸入的采樣值Si和預測采樣值Sp之間的差值d為負數,則4位的編碼值I中的第3位的值設置為1,反之,設置為O ;如果當前輸入的采樣值Si和預測采樣值Sp之間的差值d大于量化步長q,則4位的編碼值I中的第2位的值設置為1,反之,設置為O ;如果差值d與量化步長q的差值大于q/2,則4位的編碼值I中的第I位的值設置為1,反之,設置為O;如果(d-q-q/2)大于q/4,則4位的編碼值I中的第O位的值設置為1,反之,設置為0,這樣就得到了 4位的編碼值I。
[0052]最后,利用得到的編碼值I查詢索引調整表,得到量化步長索引,將該量化步長索引與結構變量中存儲的量化步長索引相加,得到新的量化步長索引,將新的量化步長索引存儲到結構變量中,替換原先存儲的量化步長索引;在對下一個采樣值進行量化編碼時,利用新的量化步長索引來查詢步長調整表。
[0053]ADPCM編碼單元將對當前輸入的采樣值進行量化編碼后得到的編碼值I提供給發送單元,然后ADPCM編碼單元還需要重復上述過程,繼續對下一個采樣值進行量化編碼處理。
[0054]本優選實施例中,利用基于波形編碼的ADPCM編碼單元對音頻數據進行量化編碼,相對于基于參數編碼的wma編碼技術,在對音頻數據進行壓縮的同時可以最大程度的保存原始的音頻數據的音頻信息,從而有利于音頻數據中音頻指紋的提取;而且,ADPCM編碼單元進行量化編碼時,計算復雜度低,計算量較少,適合各種移動終端;而且,基于參數編碼的wma編碼技術中,利用wma編碼器對原始的音頻數據(如44.1KHz采樣率的mp3音頻數據)進行降采樣處理,得到采樣率為SKHz的音頻數據,然后wma編碼器再對采樣率為SKHz的音頻數據進行編碼處理,將其編碼為20k字節大小的wma格式的文件,本優選實施例中,ADPCM編碼單元對降采樣處理后得到的音頻數據進行編碼處理后,一般會得到1k字節的音頻數據,因此,與現有技術相比,本優選實施例中,音頻客戶端傳輸給服務器的流量減少了一半。
[0055]步驟S203,音頻客戶端將編碼值發送給服務器。
[0056]具體的,發送單元從ADPCM編碼單元接收到編碼值I后,通過網絡將該編碼值I發送到服務器的接收單元,接收單元從音頻客戶端的發送單元接收到音頻數據的編碼值,將所接收的編碼值發送給ADPCM解碼單元進行解碼處理。
[0057]步驟S204,服務器對收到的編碼值進行逆量化解碼處理,得到重建的音頻數據。
[0058]具體的,ADPCM解碼單元對從接收單元得到的編碼值I進行逆量化解碼處理,該過程是步驟202中量化編碼處理的逆過程,逆量化解碼處理的方法為:
[0059]首先,利用預設的量化步長索引查詢步長調整表,得到量化步長q;其中,由于編碼值I的解碼處理是ADPCM編碼單元對音頻數據進行量化處理的逆過程,因此,逆量化解碼時利用的量化步長索引、索引調整表和步長調整表與音頻客戶端中ADPCM編碼單元中的量化步長索引、索引調整表和步長調整表是一致的。
[0060]然后,依據量化步長q對當前編碼值I進行逆量化處理,得到差值d,,其中,ADPCM解碼單元收到的編碼值為 1=0000、1=0001、1=0010、1=0011、1=0100、1=0101、1=0110、1=0111、1=1000、1=1001、1=1010、1=1011、1=1100、1=1101、1=1110、1=1111,例如,對于編碼值 1=0000,dq=8q,對于編碼值 1=0111,dq=q+q/2+q/4+8/q,對于編碼值 1=0110,則dq=q+q/2+8/q ;如此,進行求編碼值I的逆過程。
[0061 ] 最后,將預設的預測解碼值Sp與差值d,相加得到解碼值Sp該解碼值&就是ADPCM解碼單元依據編碼值重建的音頻數據;此外,用解碼值&作為新的預測解碼值Sp保存到預設的結構變量中,用當前編碼值I調整量化步長索引,將新的量化步長索引保存到預設的結構變量中,以便進行下一個編碼值的逆量化解碼處理。
[0062]步驟S205,服務器從重建的音頻數據中提取音頻指紋。
[0063]具體的,指紋提取單元從ADPCM解碼單元接收重建的音頻數據,從該音頻數據的第I幀開始,對于音頻數據中的每一幀,利用如下公式得到音頻指紋:
I if /:'(//,/?)- !:{njn +1)-( /;'(//-1,/?) - /;'(η -1, m + I) j > O
[0064]F(n,m)^\
(0 if /; (n,m) - /: (D,/-- +1) -(/: (〃 _l,m 十 I)) s:(.)
[0065]該公式中,F (n, m)表示音頻數據中的第n巾貞的第m個頻帶對應的數值,E (n, m) -E (n, m+1)表示第η巾貞中第m個頻帶與第m+1個頻帶的能量變化,E(n-1, m) -E (n-1, m+1)表示第n_l巾貞中第m個頻帶與第m+1個頻帶的能量變化,利用該公式,可以得到當前幀的相鄰頻帶的能量變化和當前幀的前一幀的相同的相鄰頻帶的能量變化,如果當前幀的相鄰頻帶的能量變化大于當前幀的前一幀的相同的相鄰頻帶的能量變化,即E (n, m) -E (n, m+1) - (E (n-1, m) -E (n-1, m+1)) >0,則當前巾貞中相鄰頻帶的前一個頻帶對應的數值為1,如果當前幀的相鄰頻帶的能量變化小于等于當前幀的前一幀的相同的相鄰頻帶的能量變化,即E (n, m) -E (n, m+1) - (E (n-1, m) -E (n-1, m+1)) ( 0,則當前巾貞中相鄰頻帶的前一個頻帶對應的數值為O,以此類推,為當前幀中除最后一個頻帶以外的每個頻帶得到一個對應的數值,將每個頻帶對應的數值組合得到該當前幀的音頻指紋;如圖3所示,本優選實施例中有33個頻帶,因此存在32組相鄰頻帶,對應得到32個數值,依據得到32數值組成音頻指紋,該音頻指紋是由I和O組成的32bit的數據;利用該方法對音頻數據中的每一幀都進行處理,對應每一幀都得到一個音頻指紋;本優選實施例中重建的音頻指紋有256幀,將得到255個32bit的音頻指紋;指紋提取單元將得到的音頻指紋發送給音頻識別單元進行匹配。
[0066]步驟S206,服務器依據提取的音頻指紋在音頻數據庫進行匹配,得到匹配的音頻信息。
[0067]具體的,音頻識別單元從指紋提取單元接收到提取出的音頻指紋,將255個32bit的音頻指紋與音頻數據庫中音頻信息的255個32bit的音頻指紋進行匹配,進行匹配時,統計提取出的音頻指紋與音頻數據庫中音頻信息的音頻指紋中,相應的32bit的音頻指紋中數值的不匹配個數,然后每個32bit的音頻指紋中的不匹配個數相加,得到音頻指紋與該音頻信息的音頻指紋的不匹配總數nomatchsum。
[0068]然后利用如下公式計算該音頻信息的音頻指紋的匹配分數:
[0069]score=l-nomatchsum/ (255X32)
[0070]該公式中,score表示音頻信息的音頻指紋與提取的音頻指紋的匹配分數,nomatchsum表示該音頻信息的音頻指紋與提取的音頻指紋的不匹配總數。
[0071]用計算出的匹配分數與預設的匹配門限(如0.275)進行比較,如果計算出的匹配分數大于匹配門限,表示該音頻信息的音頻指紋與提取的音頻指紋相匹配,如果計算出的匹配分數小于等于匹配門限,表示該音頻信息的音頻指紋與提取的音頻指紋不匹配。
[0072]一般的,音頻客戶端將發送給服務器3 X 2 X 8000/4個或3 X 2 X 5000/4個編碼值,其中,3指的是3秒,2指的是雙聲道,8000或5000分別指的是采樣率8KHz和采樣率5KHz,4指的是壓縮比,這些編碼值將包括兩段音頻數據,從這兩段中提取兩個音頻指紋,利用上述方法,將音頻數據庫中的音頻指紋與提取的兩段音頻指紋進行匹配,當匹配結果是兩個音頻指紋都匹配時,表示音頻數據庫中的該音頻指紋對應的音頻信息是提取的音頻指紋的音頻信息;當匹配結果是兩個音頻指紋都不匹配或只有一個匹配時,表示該音頻信息不是提取的音頻指紋對應的音頻信息,繼續在音頻數據庫中進行匹配;如果存在多個音頻信息都是提取的音頻指紋的音頻信息,則取其中匹配分數最高的音頻信息作為最終的識別結果。
[0073]圖1所示的音頻指紋的提取系統中:
[0074]音頻客戶端10,用于對原始的音頻數據進行降采樣處理,得到低頻帶的音頻數據,并對低頻帶的音頻數據進行量化編碼處理,得到編碼值,將所述編碼值發送到服務器11;
[0075]服務器11,用于對收到的編碼值進行逆量化解碼處理,得到重建的音頻數據,從重建的音頻數據中提取音頻指紋。
[0076]其中,重采樣單元101,用于將原始的音頻數據通過截止頻率為1/M的低通濾波器,然后每M個樣點抽取一個樣點,得到樣點的采樣值,所述采樣值為低頻帶的音頻數據;其中,M為正整數。
[0077]ADPCM編碼單元102,用于計算當前輸入的采樣值與預設的預測采樣值之間的差值;利用存儲的上一個采樣值的量化步長索引查詢預設的步長調整表,得到量化步長,如果所述差值為負數,則4位的編碼值中的第3位的值設置為1,反之,設置為O ;如果所述差值大于量化步長,則4位的編碼值中的第2位的值設置為1,反之,設置為O ;如果差值與量化步長的差值大于二分之一的量化步長,則4位的編碼值中的第I位的值設置為I,反之,設置為O ;如果差值減去量化步長再減去二分之一的量化步長后大于四分之一的量化步長,則4位的編碼值中的第O位的值設置為1,反之,設置為O。
[0078]其中,所述ADPCM編碼單元102,還用于利用得到的編碼值查詢預設的索引調整表,得到量化步長索引,將所述量化步長索引與存儲的量化步長索引相加,得到新的量化步長索引,存儲新的量化步長索引,所述新的量化步長索引在對下一個采樣值進行量化編碼時用于查詢步長調整表。
[0079]其中,ADPCM解碼單元112,用于利用預設的量化步長索引查詢步長調整表,得到量化步長;依據所述量化步長對當前的編碼值進行逆量化處理,得到差值;將預設的預測解碼值與差值相加得到解碼值,所述解碼值為重建的音頻數據。
[0080]所述ADPCM解碼單元112,還用于存儲所述解碼值,所述解碼值作為新的預測解碼值;用當前編碼值調整量化步長索引,存儲新的量化步長索引,所述新的量化步長索引用于進行下一個編碼值的逆量化解碼處理。
[0081]本發明的上述技術方案,對原始的音頻數據進行降采樣處理,實現在保留了最重要的音頻數據的同時去除了多余的其他頻帶的音頻數據,從而減少音頻客戶端的處理數據量和傳輸數據量,提高音頻客戶端的工作效率,使得更多的移動終端能夠支持這種音頻客戶端,提高音頻客戶端的應用范圍;而且,利用ADPCM編碼技術對音頻數據進行編碼后發送到服務器,在對音頻數據進行壓縮的同時可以最大程度的保存原始的音頻數據的音頻信息,從而有利于首頻數據中首頻指紋的提取,提聞提取的首頻指紋的準確率,進而提聞服務器的識別準確率;ADPCM編碼方式的計算復雜度低,計算量較少,適合各種移動終端。
[0082]以上所述僅為本發明的較佳實施例而已,并不用以限制本發明,凡在本發明的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本發明保護的范圍之內。
【權利要求】
1.一種音頻指紋的提取方法,其特征在于,該方法包括: 音頻客戶端對原始的音頻數據進行降采樣處理,得到低頻帶的音頻數據,并對低頻帶的音頻數據進行量化編碼處理,得到編碼值,將所述編碼值發送到服務器; 服務器對收到的編碼值進行逆量化解碼處理,得到重建的音頻數據,從重建的音頻數據中提取音頻指紋。
2.根據權利要求1所述的方法,其特征在于,所述對原始的音頻數據進行降采樣處理具體為: 將原始的音頻數據通過截止頻率為1/M的低通濾波器,然后每M個樣點抽取一個樣點,得到樣點的采樣值,所述采樣值為低頻帶的音頻數據;其中,M為正整數。
3.根據權利要求2所述的方法,其特征在于,所述對低頻帶的音頻數據進行量化編碼處理具體為: 計算當前輸入的采樣值與預設的預測采樣值之間的差值; 利用存儲的上一個采樣值的量化步長索引查詢預設的步長調整表,得到量化步長,如果所述差值為負數,則4位的編碼值中的第3位的值設置為1,反之,設置為O ;如果所述差值大于量化步長,則4位的編碼值中的第2位的值設置為1,反之,設置為O ;如果差值與量化步長的差值大于二分之一的量化步長,則4位的編碼值中的第I位的值設置為1,反之,設置為O ;如果差值減去量化步長再減去二分之一的量化步長后大于四分之一的量化步長,則4位的編碼值中的第O位的值設置為1,反之,設置為O。
4.根據權利要求3所述的方法,其特征在于,該方法還包括: 利用得到的編碼值查詢預設的索引調整表,得到量化步長索引,將所述量化步長索引與存儲的量化步長索引相加,得到新的量化步長索引,存儲新的量化步長索引,所述新的量化步長索引在對下一個采樣值進行量化編碼時用于查詢步長調整表。
5.根據權利要求1所述的方法,其特征在于,所述對收到的編碼值進行逆量化解碼處理具體為: 利用預設的量化步長索引查詢步長調整表,得到量化步長; 依據所述量化步長對當前的編碼值進行逆量化處理,得到差值; 將預設的預測解碼值與差值相加得到解碼值,所述解碼值為重建的音頻數據。
6.根據權利要求5所述的方法,其特征在于,該方法還包括: 存儲所述解碼值,所述解碼值作為新的預測解碼值; 用當前編碼值調整量化步長索引,存儲新的量化步長索引,所述新的量化步長索引用于進行下一個編碼值的逆量化解碼處理。
7.一種音頻指紋的提取系統,其特征在于,該系統包括:音頻客戶端、服務器;其中, 音頻客戶端,用于對原始的音頻數據進行降采樣處理,得到低頻帶的音頻數據,并對低頻帶的音頻數據進行量化編碼處理,得到編碼值,將所述編碼值發送到服務器; 服務器,用于對收到的編碼值進行逆量化解碼處理,得到重建的音頻數據,從重建的音頻數據中提取音頻指紋。
8.根據權利要求7所述的系統,其特征在于,所述音頻客戶端進一步包括: 重采樣單元,用于將原始的音頻數據通過截止頻率為1/M的低通濾波器,然后每M個樣點抽取一個樣點,得到樣點的采樣值,所述采樣值為低頻帶的音頻數據;其中,M為正整數。
9.根據權利要求8所述的系統,其特征在于,所述音頻客戶端還包括: ADPCM編碼單元,用于計算當前輸入的采樣值與預設的預測采樣值之間的差值;利用存儲的上一個采樣值的量化步長索引查詢預設的步長調整表,得到量化步長,如果所述差值為負數,則4位的編碼值中的第3位的值設置為1,反之,設置為O ;如果所述差值大于量化步長,則4位的編碼值中的第2位的值設置為I,反之,設置為O ;如果差值與量化步長的差值大于二分之一的量化步長,則4位的編碼值中的第I位的值設置為I,反之,設置為O ;如果差值減去量化步長再減去二分之一的量化步長后大于四分之一的量化步長,則4位的編碼值中的第O位的值設置為1,反之,設置為O。
10.根據權利要求9所述的系統,其特征在于,所述ADPCM編碼單元,還用于利用得到的編碼值查詢預設的索引調整表,得到量化步長索引,將所述量化步長索引與存儲的量化步長索引相加,得到新的量化步長索引,存儲新的量化步長索引,所述新的量化步長索引在對下一個采樣值進行量化編碼時用于查詢步長調整表。
11.根據權利要求7所述的系統,其特征在于,所述服務器進一步包括: ADPCM解碼單元,用于利用預設的量化步長索引查詢步長調整表,得到量化步長;依據所述量化步長對當前的編碼值進行逆量化處理,得到差值;將預設的預測解碼值與差值相加得到解碼值,所述解碼值為重建的音頻數據。
12.根據權利要求11所述的系統,其特征在于,所述ADPCM解碼單元,還用于存儲所述解碼值,所述解碼值作為新的預測解碼值;用當前編碼值調整量化步長索引,存儲新的量化步長索引,所述新的量化步長索引用于進行下一個編碼值的逆量化解碼處理。
【文檔編號】G10L19/035GK104184697SQ201310187677
【公開日】2014年12月3日 申請日期:2013年5月20日 優先權日:2013年5月20日
【發明者】田彪 申請人:百度在線網絡技術(北京)有限公司