本發(fā)明涉及噪聲處理技術(shù)領(lǐng)域,尤其涉及一種抑制芯片音頻處理中Pop噪聲的方法。
背景技術(shù):
對于多媒體產(chǎn)品,音頻是很重要的一部分,雖然在音頻文件的播放過程中,可以添加各種調(diào)整和優(yōu)化,但是在音頻文件的播放開始和結(jié)束的時候,會產(chǎn)生對于用戶體驗不好的pop noise(噪聲),該pop噪聲不是音頻數(shù)據(jù)的一部分,而是音頻設(shè)備在開啟和關(guān)閉PA(功率放大器,PowerAmplifier)時,電位等產(chǎn)生一定的跳變所產(chǎn)生的。
目前,現(xiàn)有技術(shù)中還沒有一種有效地抑制音頻文件播放過程中的Pop噪聲的方法。
技術(shù)實現(xiàn)要素:
本發(fā)明的實施例提供了一種抑制芯片音頻處理中Pop噪聲的方法,以實現(xiàn)有效地抑制音頻文件播放過程中的Pop噪聲。
為了實現(xiàn)上述目的,本發(fā)明采取了如下技術(shù)方案。
一種抑制芯片音頻處理中Pop噪聲的方法,包括:
打開被測芯片的DAC的功率放大器,通過采集所述被測芯片的DAC播放的音頻數(shù)據(jù),獲取所述被測芯片的DAC補償值;
構(gòu)造所述被測芯片的DAC補償值對應(yīng)的補償音頻數(shù)據(jù),在所述被測芯片的DAC上電打開PA前或者DAC下電關(guān)閉PA前,讓所述被測芯片的DAC播放所述補償音頻數(shù)據(jù)。
進一步地,所述的打開被測芯片的DAC的功率放大器,通過采集所述被測芯片的DAC播放的音頻數(shù)據(jù),獲取所述被測芯片的DAC補償值,包括:
打開被測芯片的DAC的PA,所述被測芯片在當前的DAC增益下連續(xù)輸出測試音頻數(shù)據(jù);
打開標準測芯片的ADC的PA,所述標準芯片的ADC連續(xù)采集N個所述被測芯片的DAC輸出的采樣點數(shù)據(jù),計算出每個采樣點數(shù)據(jù)的峰值Mi,i=1-N,設(shè)測試音頻數(shù)據(jù)的峰值為M0,標準芯片的ADC補償值為P,則被測芯片在當前的DAC增益下對應(yīng)的DAC補償值T的計算公式如下:
進一步地,所述的方法還包括:
依次調(diào)整被測芯片的DAC增益,按照上述處理過程依次計算出被測芯片在各個DAC增益下對應(yīng)的DAC補償值,將被測芯片的各個DAC增益與對應(yīng)的DAC補償值關(guān)聯(lián)存儲在補償數(shù)據(jù)庫中。
進一步地,所述的構(gòu)造所述被測芯片的DAC補償值對應(yīng)的補償音頻數(shù)據(jù),包括:
在計算出被測芯片的DAC補償值后,根據(jù)測試規(guī)則構(gòu)造出所述被測芯片的DAC補償值對應(yīng)的補償音頻數(shù)據(jù),所述補償音頻數(shù)據(jù)包括DAC上電打開PA前播放的上電補償音頻數(shù)據(jù)和DAC下電關(guān)閉PA前播放的下電補償音頻數(shù)據(jù),所述上電補償音頻數(shù)據(jù)和所述下電補償音頻數(shù)據(jù)互不相同,將所述上電補償音頻數(shù)據(jù)、所述下電補償音頻數(shù)據(jù)與對應(yīng)的被測芯片的DAC增益、DAC補償值一起關(guān)聯(lián)存儲在所述補償數(shù)據(jù)庫中。
進一步地,所述的下電補償音頻數(shù)據(jù)為從“0”漸變到DAC補償值的音頻數(shù)據(jù),所述上電補償音頻數(shù)據(jù)為從DAC補償值漸變到“0”的音頻數(shù)據(jù)。
進一步地,所述的在所述被測芯片的DAC上電打開PA前或者DAC下電關(guān)閉PA前,讓所述被測芯片的DAC播放所述補償音頻數(shù)據(jù),包括:
在芯片的DAC上電打開PA前,先根據(jù)芯片的當前DAC增益查詢所述補償數(shù)據(jù)庫,獲取當前DAC增益對應(yīng)的上電補償音頻數(shù)據(jù);
讓芯片的DAC播放所述上電補償音頻數(shù)據(jù)一段時間,在播放所述上電補償音頻數(shù)據(jù)的過程中打開的DAC的PA,把實際要播放的音頻數(shù)據(jù)給DAC正常播放。
進一步地,所述的在所述被測芯片的DAC上電打開PA前或者DAC下電關(guān)閉PA前,讓所述被測芯片的DAC播放所述補償音頻數(shù)據(jù),包括:
在芯片的DAC下電關(guān)閉PA前,先根據(jù)芯片的當前DAC增益查詢所述補償數(shù)據(jù)庫,獲取當前DAC增益對應(yīng)的下電補償音頻數(shù)據(jù);
在播放完正常的音頻數(shù)據(jù)后,先讓被測芯片的DAC播放所述下電補償音頻數(shù)據(jù)一段時間,在播放所述下電補償音頻數(shù)據(jù)的過程中關(guān)閉DAC的PA。
由上述本發(fā)明的實施例提供的技術(shù)方案可以看出,本發(fā)明實施例的方法通過采集芯片的DAC補償值,構(gòu)造補償音頻數(shù)據(jù),在芯片的DAC上電打開PA前或者DAC下電關(guān)閉PA前,讓芯片的DAC播放補償音頻數(shù)據(jù),可以有效地抑制或者消除芯片的DAC的PA開關(guān)時產(chǎn)生的不友好pop噪聲,可明顯地提高芯片在音頻開關(guān)時的用戶體驗,提高系統(tǒng)和芯片的音頻性能,爭取更多的客戶和市場占有率。
本發(fā)明附加的方面和優(yōu)點將在下面的描述中部分給出,這些將從下面的描述中變得明顯,或通過本發(fā)明的實踐了解到。
附圖說明
為了更清楚地說明本發(fā)明實施例的技術(shù)方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實施例提供的一種抑制芯片音頻處理中Pop噪聲的方法的處理流程圖。
具體實施方式
下面詳細描述本發(fā)明的實施方式,所述實施方式的示例在附圖中示出,其中自始至終相同或類似的標號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實施方式是示例性的,僅用于解釋本發(fā)明,而不能解釋為對本發(fā)明的限制。
本技術(shù)領(lǐng)域技術(shù)人員可以理解,除非特意聲明,這里使用的單數(shù)形式“一”、“一個”、“所述”和“該”也可包括復(fù)數(shù)形式。應(yīng)該進一步理解的是,本發(fā)明的說明書中使用的措辭“包括”是指存在所述特征、整數(shù)、步驟、操作、元件和/或組件,但是并不排除存在或添加一個或多個其他特征、整數(shù)、步驟、操作、元件、組件和/或它們的組。應(yīng)該理解,當我們稱元件被“連接”或“耦接”到另一元件時,它可以直接連接或耦接到其他元件,或者也可以存在中間元件。此外,這里使用的“連接”或“耦接”可以包括無線連接或耦接。這里使用的措辭“和/或”包括一個或更多個相關(guān)聯(lián)的列出項的任一單元和全部組合。
本技術(shù)領(lǐng)域技術(shù)人員可以理解,除非另外定義,這里使用的所有術(shù)語(包括技術(shù)術(shù)語和科學術(shù)語)具有與本發(fā)明所屬領(lǐng)域中的普通技術(shù)人員的一般理解相同的意義。還應(yīng)該理解的是,諸如通用字典中定義的那些術(shù)語應(yīng)該被理解為具有與現(xiàn)有技術(shù)的上下文中的意義一致的意義,并且除非像這里一樣定義,不會用理想化或過于正式的含義來解釋。
為便于對本發(fā)明實施例的理解,下面將結(jié)合附圖以幾個具體實施例為例做進一步的解釋說明,且各個實施例并不構(gòu)成對本發(fā)明實施例的限定。
基于對問題的分析,在上下電過程中的pop noise(噪聲)實際是audio部分電位變化時產(chǎn)生的“毛刺”,那么我們可以通過一定的方法使在上下電時,電位的變化差別很小,這樣產(chǎn)生的POP噪聲將得到很大的優(yōu)化,甚至將POP噪聲消除;另外,每個芯片因為制造過程等不會完全一樣,則其DAC(Digital to analog converter,數(shù)字模擬轉(zhuǎn)換器)輸出的offset(補償)也是不同的,那么需要在量產(chǎn)測試中針對每個芯片來測量其自身DAC offset并記錄下來,并且參考該DAC offset生成一段補償音頻數(shù)據(jù),在芯片的DAC正式播放音頻文件之前,讓所述被測芯片的DAC播放所述補償音頻數(shù)據(jù),同時配合對DAC的PA進行操作來消除pop噪聲。
本發(fā)明實施例提供的一種抑制芯片音頻處理中Pop噪聲的方法的處理流程如圖1所示,該方法是一種軟件解決方案,包括如下的處理步驟:
步驟S110。打開被測芯片的DAC的功率放大器,通過采集所述被測芯片的DAC播放的音頻數(shù)據(jù),獲取所述被測芯片的DAC補償值。
在芯片的量產(chǎn)測試階段需要測試得到該芯片對應(yīng)的DAC offset(補償值)。該部分需要在啟動測試時,給被測芯片發(fā)送一條指令,讓其打開DAC的PA,并按照設(shè)定的數(shù)據(jù)間隔重復(fù)播放指定的測試音頻數(shù)據(jù),該測試音頻數(shù)據(jù)可以為“0”或者“1”等。
還需要設(shè)置一個標準芯片,該標準芯片的DAC補償值已知。給標準芯片發(fā)送一條指令,讓標準芯片打開ADC(Analog-to-Digital Converte,模數(shù)轉(zhuǎn)換器)并采集被測芯片DAC播放的測試音頻數(shù)據(jù)。然后根據(jù)標準芯片自身的ADC補償值以及當前增益值等信息進行計算,得到被測芯片的各個DAC增益下分別對應(yīng)的DAC補償值。將被測芯片的各個DAC增益與對應(yīng)的DAC補償值關(guān)聯(lián)存儲在補償數(shù)據(jù)庫中。
被測芯片在當前的DAC增益下,連續(xù)輸出測試音頻數(shù)據(jù),比如輸出“0”,同時標準芯片已開ADC進行數(shù)據(jù)采集,連續(xù)采集N個被測芯片的DAC輸出的采樣點數(shù)據(jù),計算出每個采樣點數(shù)據(jù)的峰值Mi,i=1-N,設(shè)測試音頻數(shù)據(jù)的峰值為M0,標準芯片的ADC補償值為P,則被測芯片在當前的DAC增益下對應(yīng)的DAC補償值T的計算公式如下:
比如采樣點數(shù)據(jù)峰值為“47,48,48,49,47…”后,做平均計算,得到被測芯片在當前增益下的DAC補償值(比如平均后為48)。
然后,依次調(diào)整被測芯片的DAC增益,按照上述處理過程依次計算出被測芯片在各個DAC增益下對應(yīng)的DAC補償值。然后,將被測芯片的DAC增益與DAC補償值之間的對應(yīng)關(guān)系存儲在補償數(shù)據(jù)庫中。
步驟S120。構(gòu)造被測芯片的DAC補償值對應(yīng)的補償音頻數(shù)據(jù)。
在計算出被測芯片的DAC補償值后,需要根據(jù)測試規(guī)則將上述DAC補償值轉(zhuǎn)換為音頻數(shù)據(jù)的參數(shù)信息,根據(jù)該參數(shù)信息構(gòu)造出所述被測芯片的DAC補償值對應(yīng)的補償音頻數(shù)據(jù)。
上述補償音頻數(shù)據(jù)包括DAC上電打開PA前播放的上電補償音頻數(shù)據(jù)和DAC下電關(guān)閉PA前播放的下電補償音頻數(shù)據(jù),上電補償音頻數(shù)據(jù)和下電補償音頻數(shù)據(jù)互不相同。將所述上電補償音頻數(shù)據(jù)、所述下電補償音頻數(shù)據(jù)與對應(yīng)的被測芯片的DAC增益、DAC補償值一起關(guān)聯(lián)存儲在所述補償數(shù)據(jù)庫中。
下電補償音頻數(shù)據(jù)可以為從“0”漸變到對應(yīng)DAC補償值的音頻數(shù)據(jù),上電補償音頻數(shù)據(jù)從DAC補償值漸變到“0”的音頻數(shù)據(jù)。
比如當前增益下對應(yīng)的DAC補償值為48,構(gòu)造的下電補償音頻數(shù)據(jù)可以為“0,0,1,1…47,47,48,48”,上電補償音頻數(shù)據(jù)可以為“48,48,47,47…,1,1,0,0”。
步驟S130。在被測芯片的DAC上電打開PA前或者DAC下電關(guān)閉PA前,讓被測芯片的DAC播放補償音頻數(shù)據(jù)。
在芯片的實際工作中使用補償音頻數(shù)據(jù)來消除芯片的DAC上下電時產(chǎn)生的pop噪聲。在芯片的DAC上電打開PA前,先根據(jù)芯片的當前DAC增益查詢上述補償數(shù)據(jù)庫,獲取當前DAC增益對應(yīng)的上電補償音頻數(shù)據(jù)。
然后,讓芯片的DAC播放上電補償音頻數(shù)據(jù),并保持一段時間等待電路穩(wěn)定,在播放所述上電補償音頻數(shù)據(jù)的過程中打開的DAC的PA,則上電的pop噪聲就會得到很好的抑制而聽不到,再把實際要播放的音頻數(shù)據(jù)給DAC正常播放即可。
相應(yīng)的,在DAC下電關(guān)閉PA前,在播放完正常的音頻數(shù)據(jù)后,先根據(jù)芯片的當前DAC增益查詢上述補償數(shù)據(jù)庫,獲取當前DAC增益對應(yīng)的下電補償音頻數(shù)據(jù)。先讓被測芯片的DAC播放下電補償音頻數(shù)據(jù),并保持一段時間后,在播放所述下電補償音頻數(shù)據(jù)的過程中關(guān)閉PA,則下電的pop噪聲也被優(yōu)化而聽不到,然后可以完全關(guān)閉DAC了。
本發(fā)明中的補償音頻數(shù)據(jù)是為消pop噪聲服務(wù)的,理論上說,如果補償音頻數(shù)據(jù)與當前芯片DAC自身的offset一致的話,就是會沒有pop噪聲,但是由于測量的誤差,所以會產(chǎn)生非常小但幾乎不會被人耳聽到的pop噪聲,也有可能正好一點pop噪聲都沒有的。pop噪聲是在打開或者關(guān)閉PA時產(chǎn)生的,需要在播放補償音頻數(shù)據(jù)處于DAC的補償值時操作PA。
綜上所述,本發(fā)明實施例的方法通過采集芯片的DAC補償值,構(gòu)造補償音頻數(shù)據(jù),在芯片的DAC上電打開PA前或者DAC下電關(guān)閉PA前,讓芯片的DAC播放補償音頻數(shù)據(jù),可以有效地抑制或者消除芯片的DAC的PA開關(guān)時產(chǎn)生的不友好pop噪聲,可明顯地提高芯片在音頻開關(guān)時的用戶體驗,提高系統(tǒng)和芯片的音頻性能,爭取更多的客戶和市場占有率。
本發(fā)明實施例的方法的實現(xiàn)成本相對較低,應(yīng)用前景廣泛。
本領(lǐng)域普通技術(shù)人員可以理解:附圖只是一個實施例的示意圖,附圖中的模塊或流程并不一定是實施本發(fā)明所必須的。
通過以上的實施方式的描述可知,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件平臺的方式來實現(xiàn)。基于這樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品可以存儲在存儲介質(zhì)中,如ROM/RAM、磁碟、光盤等,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例或者實施例的某些部分所述的方法。
本說明書中的各個實施例均采用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對于裝置或系統(tǒng)實施例而言,由于其基本相似于方法實施例,所以描述得比較簡單,相關(guān)之處參見方法實施例的部分說明即可。以上所描述的裝置及系統(tǒng)實施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部模塊來實現(xiàn)本實施例方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動的情況下,即可以理解并實施。
以上所述,僅為本發(fā)明較佳的具體實施方式,但本發(fā)明的保護范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護范圍之內(nèi)。因此,本發(fā)明的保護范圍應(yīng)該以權(quán)利要求的保護范圍為準。