本發(fā)明涉及一種音頻數(shù)據(jù)的傳輸方法,尤其是針對(duì)連接智能設(shè)備時(shí)采用的基于USB通用串行總線的音頻數(shù)據(jù)傳輸方法。
背景技術(shù):
1 聲卡是多媒體技術(shù)中最基本的組成部分,是實(shí)現(xiàn)模擬/數(shù)字信號(hào)相互轉(zhuǎn)換的一種硬件。USB聲卡,即以USB為接口的聲卡。
2 USB,是英文Universal Serial Bus(通用串行總線)的縮寫,USB協(xié)議現(xiàn)在已經(jīng)發(fā)展到3.0版本。USB是智能設(shè)備上常見的接口,其補(bǔ)充標(biāo)準(zhǔn)On-The-Go( OTG)使其能夠用于在便攜裝置之間直接交換數(shù)據(jù)。
USB具有四種傳輸方式,分別是控制傳輸,中斷傳輸,等時(shí)傳輸和批量傳輸, 音頻類設(shè)備普遍采用等時(shí)傳輸?shù)姆绞絺魉鸵纛l數(shù)據(jù)。等時(shí)傳輸保證了傳送數(shù)據(jù)的時(shí)效性,但不保證內(nèi)容的正確性;批量傳輸會(huì)對(duì)每個(gè)數(shù)據(jù)包進(jìn)行校驗(yàn),保證了數(shù)據(jù)傳輸?shù)耐暾?。等時(shí)傳輸在一些智能設(shè)備上的兼容性不如批量傳輸,例如已知的三星NOTE系列在進(jìn)行等時(shí)傳輸時(shí)會(huì)出現(xiàn)上下行互相干擾的現(xiàn)象,而批量傳輸不會(huì)出現(xiàn)這種現(xiàn)象。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明公開了一種基于USB接口的音頻數(shù)據(jù)傳輸方法,該方法利用不同與常用的USB音頻設(shè)備所采用的等式傳輸(ISO)方式傳輸音頻數(shù)據(jù),改為使用批量傳輸(BULK)方式傳輸音頻數(shù)據(jù),可以避免有些智能設(shè)備對(duì)USB等時(shí)傳輸方式的不兼容,從而實(shí)現(xiàn)USB聲卡能連接在大多數(shù)智能設(shè)備上錄音或者放音。
該方法包括以下步驟:
配置USB聲卡的設(shè)備端點(diǎn),一個(gè)端點(diǎn)是批量傳輸輸入(Bulk in)端點(diǎn),一個(gè)端點(diǎn)是批量傳輸輸出(Bulk out)端點(diǎn)。在連接到智能設(shè)備上時(shí),音頻數(shù)據(jù)的輸入輸出通過這兩個(gè)端點(diǎn)分別建立相應(yīng)的數(shù)據(jù)傳輸管道;
在智能設(shè)備播放音頻的情況下,通過批量輸入端點(diǎn),將數(shù)據(jù)下發(fā)到聲卡設(shè)備,設(shè)備通過該端點(diǎn)將數(shù)據(jù)接收到,經(jīng)過USB聲卡控制芯片的處理,通過I2S總線輸出到解碼芯片,實(shí)現(xiàn)音頻的輸出;
在智能設(shè)備錄音的情況下,通過批量輸出端點(diǎn),USB聲卡的控制芯片將采集到的音頻數(shù)據(jù)放入批量輸出端點(diǎn),智能設(shè)備通過該端點(diǎn)獲取音頻數(shù)據(jù),并且可以存儲(chǔ)起來,實(shí)現(xiàn)音頻的錄制。
本發(fā)明所述方法的顯著意義在于,使用USB批量傳輸方式,可以完全支持音頻數(shù)據(jù)的傳輸,而且沒有等時(shí)傳輸所不可避免的數(shù)據(jù)丟失或者數(shù)據(jù)錯(cuò)誤的缺陷。在連接智能設(shè)備時(shí),批量傳輸也比等時(shí)傳輸具有更廣泛的兼容性。使用本方法進(jìn)行音頻數(shù)據(jù)傳輸?shù)腢SB聲卡,可以支持多種智能設(shè)備,可以充分利用USB總線的帶寬。
【附圖說明】
圖1是數(shù)據(jù)流動(dòng)框架圖
圖中:
1 智能設(shè)備 2 數(shù)據(jù)輸出通道 3 數(shù)據(jù)輸入通道
4 批量輸入端點(diǎn) 5 批量輸出端點(diǎn) 6 音頻解碼模塊
7 模擬電路
【具體實(shí)施方式】
如圖所示,USB聲卡在智能設(shè)備上枚舉出兩個(gè)批量傳輸端點(diǎn),智能設(shè)備即可通過這兩個(gè)端點(diǎn)與USB聲卡通信。
具體分為放音和錄音兩個(gè)部分:
(1)放音,即智能設(shè)備 1將音頻數(shù)據(jù)輸出到USB聲卡。USB聲卡枚舉出一個(gè)批量輸出端點(diǎn) 5,該端點(diǎn)包含一個(gè)數(shù)據(jù)緩沖區(qū)(buffer),用來存儲(chǔ)單次傳輸?shù)臄?shù)據(jù)。USB聲卡與智能設(shè)備連接時(shí),智能設(shè)備根據(jù)USB設(shè)備枚舉出的信息,與該端點(diǎn)建立數(shù)據(jù)輸出通道 2。
智能設(shè)備開始播放音樂時(shí),將音頻數(shù)據(jù)發(fā)送到輸出端點(diǎn) 5的buffer,通過USB聲卡的控制芯片將buffer中的數(shù)據(jù)傳送到音頻解碼 6部分進(jìn)行處理并轉(zhuǎn)化成模擬信號(hào),通過模擬電路 7放大后,就可以播放出來。循環(huán)這個(gè)過程,就達(dá)到了放音的效果。
(2)錄音方面,音頻數(shù)據(jù)從USB聲卡輸入到智能設(shè)備 1,USB聲卡枚舉出一個(gè)批量輸入端點(diǎn) 4,該端點(diǎn)包含一個(gè)數(shù)據(jù)緩沖區(qū)(buffer)。USB聲卡與智能設(shè)備 1連接時(shí),智能設(shè)備 1根據(jù)USB設(shè)聲卡枚舉出的信息,與該端點(diǎn)建立數(shù)據(jù)輸入通道 3。
智能設(shè)備 1開始錄音時(shí),USB聲卡采集話筒輸入的模擬信號(hào),通過編碼器轉(zhuǎn)換成數(shù)字信號(hào),傳送給USB聲卡的控制芯片,控制芯片將采集到的音頻數(shù)據(jù)放入批量輸入端點(diǎn) 4的緩沖區(qū)中,智能設(shè)備 1從該端點(diǎn)拿取數(shù)據(jù),并存儲(chǔ)起來。循環(huán)這個(gè)過程,就可以達(dá)到錄音的效果。
在執(zhí)行錄音和放音時(shí),數(shù)據(jù)輸入通道 3和輸出通道 2之間相互不沖突,可以分別進(jìn)行,也可以同時(shí)進(jìn)行。