專利名稱:一種實現(xiàn)嵌入端與基于Linux操作系統(tǒng)的計算機之間的語音輸入輸出系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種嵌入端與計算機(基于 Linux操作系統(tǒng))之間進行語音輸入輸出的系統(tǒng)。
背景技術(shù):
USB接口的AC8700等產(chǎn)品對外形及便攜性有較高的要求,這類產(chǎn) 品除了完成數(shù)據(jù)業(yè)務(wù)功能外還需要提供語音的功能。 一般來說,這類產(chǎn) 品的語音通路都是通過隨產(chǎn)品附帶 一個耳麥來實現(xiàn)的。
這種通過耳麥提供語音輸入輸出有如下幾個缺點
1、 必須增加一個耳機及耳機座的成本;
2、 必須在結(jié)構(gòu)上給出耳機座的空間,這對產(chǎn)品的小型化是一個很 不利的因素;
3、 用戶必須將耳麥隨產(chǎn)品一起攜帶著,大大降低了產(chǎn)品的便攜性。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是提供實現(xiàn)嵌入端與基于Linux操作系統(tǒng)的計算機之間的語音輸入輸出系統(tǒng),本發(fā)明利用計算機上現(xiàn)有的聲音 輸入輸出設(shè)備,通過USB接口實現(xiàn)語音的輸入輸出,簡單方便,且能 降低成本。
具體地說,本發(fā)明是這樣實現(xiàn)的
一種實現(xiàn)嵌入端與基于Linux操作系統(tǒng)的計算機之間的語音輸入輸 出系統(tǒng),其包括嵌入端和基于Linux操作系統(tǒng)的計算機;所述嵌入端包 括USB接口 、脈沖編碼調(diào)制的PCM輸出中斷模塊、PCM輸入中斷模 塊;所述計算機包括Linux USB Serial驅(qū)動模塊、PCM語音工具模塊、 聲卡、麥克風(fēng);
所述PCM輸出中斷模塊用于通過USB接口向所述計算機輸出其接 收到的語音PCM碼流,所述PCM輸入中斷模塊用于向嵌入端輸入由計 算機通過USB接口發(fā)送過來的語音PCM碼流;
所述Linux USB Serial驅(qū)動才莫塊用于允許嵌入端與基于Linux才喿作 系統(tǒng)的計算機通過USB接口進行通信;所述PCM語音工具模塊用于接 收來自嵌入端的語音PCM碼流并通過聲卡播放出來、將麥克風(fēng)上的聲 音采集成PCM碼流并將其通過USB接口發(fā)送給嵌入端。
所述PCM語音工具模塊包括串口收發(fā)模塊、音頻播放模塊、音頻 采集模塊;
所述串口收發(fā)模塊用于接收嵌入端通過USB接口傳送過來的語音 PCM碼流并傳給音頻播放模塊輸出到聲卡上播放出來、和將音頻采集 模塊從麥克風(fēng)上采集成的PCM碼流通過USB接口發(fā)送給嵌入端。
所述PCM語音工具模塊還包括回聲抑制模塊,該模塊通過參考音頻播放模塊的PCM輸出碼流對音頻采集模塊發(fā)送給串口收發(fā)模塊的語 音數(shù)據(jù)進行回聲抑制處理,用于降低通話中的回音。
所述PCM語音工具模塊還包括音量控制模塊,用于控制麥克風(fēng)輸 入及聲卡輸出聲音的大小,音量控制模塊直接與所述計算機進行通訊。
所述嵌入端還包括回聲抑制模塊,用于抵消通話中的回音。 本發(fā)明具有如下有益效果
現(xiàn)有的PC與筆記本的用戶由于多々某體的需求,絕大多數(shù)都配置現(xiàn) 成的音響系統(tǒng)(外置的音箱或集成的喇p八,或者外置的耳麥),本發(fā)明 借用了計算機上現(xiàn)有的聲音輸入輸出設(shè)備來為嵌入端服務(wù),因而嵌入端 不需要再附帶耳麥,降低了成本,增強了其便攜性,使其結(jié)構(gòu)設(shè)計更加 簡單方便。
圖1為本發(fā)明的系統(tǒng)結(jié)構(gòu)圖。
具體實施例方式
下面結(jié)合圖1和具體實施例對本發(fā)明作進一步詳細的描述 高通的音頻體系是由兩個大部分組成的 一部分是用來完成模擬語 音數(shù)字化的工作,并提供音頻放大的功能;另一部分則是對數(shù)字化的語 音進行空中傳輸?shù)恼Z音編解碼,并提供音量控制,噪聲抑制及回聲抵消等功能。在兩個大部分之間傳輸?shù)臄?shù)據(jù)就是語音的PCM編碼,高通在
此處提供了兩種PCM的接口, 一個是硬件的PCM輸入輸出接口,另一 個是軟件的PCM的輸入輸出接口。 PCM的軟件接口的工作原理是當(dāng) PCM軟件接口啟動后,會有兩個頻率為1次/20ms的中斷產(chǎn)生,在其中 一個中斷中從嵌入端輸出接收到的語音PCM碼流;在另一個中斷中則 要向嵌入端輸入外界發(fā)送過來的語音PCM碼流。本發(fā)明利用了軟件的 PCM輸入輸出接口 ,將PCM輸入輸出接口與USB接口連接起來,通 過USB接口與計算機進行通信,利用計算機自帶的聲音輸入輸出設(shè)備 來播放或采集聲音。
圖l所示,整個系統(tǒng)包括嵌入端和基于Linux操作系統(tǒng)的計算機。
其中嵌入端包括
1. USB接口;
2. 脈沖編碼調(diào)制PCM輸出中斷模塊用于通過USB接口向計算 機輸出其接收到的語音PCM碼流;
3. PCM輸入中斷模塊用于向嵌入端輸入由計算機通過USB接口 發(fā)送過來的語音PCM碼流。
計算機包括
1. Linux基于2.6系列版本內(nèi)核的操作系統(tǒng);
2. Linux USB Serial驅(qū)動才莫塊通過該才莫塊,嵌入端的USB通道 在Linux里表現(xiàn)為三個串口設(shè)備文件(/dev/ttyUSBO 、 /dev/ttyUSBl和/dev/ttyUSB2 ),操作系統(tǒng)通過讀寫不同的設(shè)備 文件來操作不同的業(yè)務(wù)功能。其中/dev/ttyUSB2為嵌入端與Linux才喿作系統(tǒng)進4亍語音PCM碼流傳輸4是供支持讀 /dev/ttyUSB2即接收從嵌入端輸出的語音PCM碼流,寫 /dev/ttyUSB2即向嵌入端傳輸計算才幾采集到的語音PCM碼流
(通常是由麥克風(fēng)采集到的); 3. PCM語音工具模塊包括串口收發(fā)模塊、音頻播放模塊、音頻 采集模塊、回聲抑制模塊和音量控制模塊。
串口收發(fā)模塊用于讀寫上述的/dev/ttyUSB2設(shè)備文件,提 供音頻播放模塊、音頻采集模塊與嵌入端的通信功能。
音頻播放模塊、音頻采集模塊和音量控制模塊的實現(xiàn)使用 了 ALSA提供的用戶空間的alsa-lib庫。ALSA是JdvawcW 5bw"t/ i/r/z/feCwre , 萄斂Zi"t/x , #^^々的簡稱,它在Linux才喿 作系統(tǒng)上4是供了音頻和MIDI的支持。在2.6系列內(nèi)核中,ALSA 已經(jīng)成為默認(rèn)的聲音子系統(tǒng),用來替換2.4系列內(nèi)核中的OSS
((9pe" 5b柳d S"fem,開放聲音系統(tǒng))。音頻播》欠模塊把從嵌 入端通過USB 4妄口傳送過來的語音PCM碼流在聲卡上進4亍回 放。音頻采集模塊把從麥克風(fēng)上采集成的PCM碼流通過串口收 發(fā)才莫塊發(fā)送給嵌入端。
回聲抑制模塊設(shè)置與音頻采集模塊和音頻播放模塊之間, 當(dāng)用戶使用音箱將通話中接收到的聲音播放出來時,這種情況 下很容易產(chǎn)生較強的聲學(xué)回聲。該模塊對音頻采集模塊發(fā)送給
串口收發(fā)模塊的語音數(shù)據(jù)進行回聲抑制處理,用于降低通話中 的回音。音量控制模塊用于控制麥克風(fēng)輸入及聲卡輸出聲音的大小。
4. 聲卡(圖中未示);
5. 麥克風(fēng)(圖中未示)。
回放流程如圖l從左至右,嵌入端從空中接收到的語音數(shù)據(jù)后會產(chǎn) 生PCM輸出中斷,通知Linux操作系統(tǒng),然后音頻播放模塊通過串口 收發(fā)模塊把PCM語音數(shù)據(jù)讀入到用戶空間再在聲卡上進行回放。采集 流程如圖l從右至左,對于需要發(fā)送的語音,計算機通過音頻采集模塊 將麥克風(fēng)上的聲音采集成PCM碼流,并將碼流傳輸給串口收發(fā)模塊, 再由該串口模塊通過USB接口發(fā)送給嵌入端,最后由嵌入端發(fā)射到空中。
另作為附加功能,計算機對于接收到的嵌入端通過USB接口傳來 的語音PCM碼流,為其增加一個WAV文件頭,可在々某體播》欠器里作 為WAV文件播放,也可用 一個可以播放WAV文件的命令行播放器播 放出來,該命令行播放器通過一個緩沖接口與串口收發(fā)模塊的后極相連 接,即可連續(xù)播放語音PCM碼流。
以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡 在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進等,均應(yīng) 包含在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
1、一種實現(xiàn)嵌入端與基于Linux操作系統(tǒng)的計算機之間的語音輸入輸出系統(tǒng),其特征在于該系統(tǒng)包括嵌入端和基于Linux操作系統(tǒng)的計算機;所述嵌入端包括USB接口、PCM輸出中斷模塊、PCM輸入中斷模塊;所述計算機包括Linux USB Serial驅(qū)動模塊、PCM語音工具模塊、聲卡、麥克風(fēng);所述PCM輸出中斷模塊用于通過USB接口向計算機輸出其接收到的語音PCM碼流,所述PCM輸入中斷模塊用于向嵌入端輸入由計算機通過USB接口發(fā)送過來的語音PCM碼流;所述Linux USB Serial驅(qū)動模塊用于允許嵌入端與所述計算機通過USB接口進行通信;所述PCM語音工具模塊用于接收來自嵌入端的語音PCM碼流并通過聲卡播放出來、和將麥克風(fēng)上的聲音采集成PCM碼流并將其通過USB接口發(fā)送給嵌入端。
2、 如權(quán)利要求1所述的實現(xiàn)嵌入端與基于Linux操作系統(tǒng)的計 算機之間的語音輸入輸出系統(tǒng),其特征在于,所述PCM語音工具模 塊包括串口收發(fā)模塊、音頻播放模塊、音頻采集模塊;所述串口收發(fā)模塊用于接收嵌入端通過USB接口傳送過來的 語音PCM碼流并通過音頻播》i^莫塊輸出到聲卡上插-;改出來,和將音 頻采集模塊從麥克風(fēng)上采集成的PCM碼流通過USB接口發(fā)送給嵌入 端。
3、 如權(quán)利要求2所述的實現(xiàn)嵌入端與基于Linux操作系統(tǒng)的計 算機之間的語音輸入輸出系統(tǒng),其特征在于,所述PCM語音工具模塊還包括音量控制模塊,用于控制麥克風(fēng)輸入及聲卡輸出聲音的大 小。
4、如權(quán)利要求l、 2或3任一所述的實現(xiàn)嵌入端與基于Linux操 作系統(tǒng)的計算機之間的語音輸入輸出系統(tǒng),其特征在于,所述計算機 包括回聲抑制模塊,該回聲抑制模塊設(shè)置于音頻播放模塊和音頻采集 模塊之間,用于抵消通話中的回音。
全文摘要
本發(fā)明是一種實現(xiàn)嵌入端與基于Linux操作系統(tǒng)的計算機之間的語音輸入輸出系統(tǒng),其包括嵌入端和基于Linux操作系統(tǒng)的計算機;所述嵌入端包括USB接口、脈沖編碼調(diào)制的PCM輸出中斷模塊、PCM輸入中斷模塊;所述計算機包括Linux USB Serial驅(qū)動模塊、PCM語音工具模塊、聲卡、麥克風(fēng);本發(fā)明使嵌入端不需要再附帶耳麥,降低了成本,增強了其便攜性,使計算機結(jié)構(gòu)設(shè)計更加簡單方便。
文檔編號G06F3/16GK101464787SQ20081014164
公開日2009年6月24日 申請日期2008年7月18日 優(yōu)先權(quán)日2008年7月18日
發(fā)明者振 鄧 申請人:深圳市中興移動通信有限公司