亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

音頻數(shù)據(jù)流輸入/輸出無間斷軟件切換的方法和系統(tǒng)的制作方法

文檔序號(hào):6573306閱讀:371來源:國知局
專利名稱:音頻數(shù)據(jù)流輸入/輸出無間斷軟件切換的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及無線通信技術(shù),具體地涉及一種用于操作系統(tǒng)中音頻數(shù) 據(jù)流輸入/輸出進(jìn)行無間斷軟件切換的方法、設(shè)備和系統(tǒng)。
背景技術(shù)
無線技術(shù)(例如藍(lán)牙技術(shù)、Wi-Fi技術(shù)、UWB技術(shù)等)的出現(xiàn), 使得用戶可以以無線方式聽音樂、打電話。其實(shí)現(xiàn)方式通常是在音頻 輸出設(shè)備(如計(jì)算機(jī),PDA,手機(jī)等)和音頻接收設(shè)備(耳機(jī),音箱, 無繩電話等)中各有一個(gè)無線收發(fā)器,音頻輸出設(shè)備的音頻數(shù)據(jù)流通 過無線技術(shù)傳輸給用戶端的音頻接收設(shè)備。以藍(lán)牙技術(shù)為例,在藍(lán)牙音頻應(yīng)用方面,它提供了 SCO/eSCO鏈 路,用來傳輸采樣頻率較低的實(shí)時(shí)語音信號(hào),方便用戶使用手持設(shè)備 接聽和呼叫電話(Headset Profile, Hands Free Profile, Cordless Telephone Profile);同時(shí)它使用ACL鏈路來傳輸高質(zhì)量的音頻編碼數(shù)據(jù)(MP3, SBC等音頻編碼格式),方便用戶聽音樂等(A2DPProfile)。通常,在藍(lán) 牙設(shè)備操作系統(tǒng)中實(shí)現(xiàn)藍(lán)牙音頻應(yīng)用的支持都需要給操作系統(tǒng)(例如 Windows或者Linux系統(tǒng))添加藍(lán)牙虛擬聲卡(即實(shí)現(xiàn)音頻數(shù)據(jù)流采 集與輸出的軟件模塊),音頻應(yīng)用程序(Media player, RealPlayer, Skype 等)通過操作系統(tǒng)將音頻數(shù)據(jù)流輸出到藍(lán)牙虛擬聲卡,藍(lán)牙虛擬聲卡 將音頻數(shù)據(jù)流通過藍(lán)牙音頻傳輸信道發(fā)送到遠(yuǎn)端藍(lán)牙音頻設(shè)備,另一 個(gè)方向,藍(lán)牙虛擬聲卡通過藍(lán)牙音頻傳輸信道收到遠(yuǎn)端藍(lán)牙音頻設(shè)備 輸入的音頻數(shù)據(jù)流,然后將該音頻數(shù)據(jù)流通過操作系統(tǒng)輸入給音頻應(yīng) 用程序。與藍(lán)牙音頻應(yīng)用相對(duì)應(yīng)的是,在藍(lán)牙設(shè)備操作系統(tǒng)中還存在著主 要以硬件的方式實(shí)現(xiàn)音頻數(shù)據(jù)流采集和輸出的本地物理聲卡(不局限 于通常所知的聲卡概念,有的也叫音頻設(shè)備或其它),操作系統(tǒng)中的音 頻應(yīng)用程序播放的音頻數(shù)據(jù)流也可以通過本地物理聲卡輸出給有線音頻設(shè)備(例如PDA的揚(yáng)聲器,通過計(jì)算機(jī)接口有線連接著的耳機(jī)或音 箱等)。另一個(gè)方向,可以通過有線連接計(jì)算機(jī)、PDA接口的麥克風(fēng)向 本地物理聲卡輸入音頻數(shù)據(jù)流,然后通過操作系統(tǒng)輸入到音頻應(yīng)用程序。目前,通常用戶可以開始通過有線音頻設(shè)備來聽音樂或者打Skype、 MSN等電話,而后切換到使用藍(lán)牙音頻設(shè)備(藍(lán)牙耳機(jī)和藍(lán) 牙耳麥),這時(shí),雖然在建立藍(lán)牙音頻連接的時(shí)候能夠自動(dòng)將操作系統(tǒng) 中輸入/輸出音頻數(shù)據(jù)流的缺省輸入聲卡和缺省輸出聲卡都從本地物理 聲卡切換成藍(lán)牙虛擬聲卡,也有少數(shù)音頻應(yīng)用程序(如Skype)提供了 接口,使得藍(lán)牙應(yīng)用程序可以發(fā)送相關(guān)命令通知音頻應(yīng)用程序缺省聲 卡已被設(shè)置為藍(lán)牙虛擬聲卡,音頻應(yīng)用程序能夠識(shí)別并自動(dòng)將音頻數(shù) 據(jù)流從藍(lán)牙虛擬聲卡進(jìn)行輸入/輸出,但是當(dāng)前的音頻應(yīng)用程序要想完 成切換,音頻應(yīng)用程序必須關(guān)閉當(dāng)前打開的本地物理聲卡,中斷當(dāng)前 的音頻應(yīng)用,然后重新打開系統(tǒng)缺省聲卡,即藍(lán)牙虛擬聲卡,甚至重 新啟動(dòng)音頻應(yīng)用程序,才能完成切換,音頻應(yīng)用被中斷,用戶體驗(yàn)很 不好。同樣的問題,如果用戶一開始使用藍(lán)牙音頻設(shè)備來聽音樂或者打 電話,而碰到藍(lán)牙音頻傳輸信道斷開或者藍(lán)牙音頻設(shè)備沒電等情況, 用戶又希望通過有線音頻設(shè)備來接聽和/或輸入音頻數(shù)據(jù)流,這時(shí),雖 然藍(lán)牙應(yīng)用程序能夠自動(dòng)將操作系統(tǒng)中輸入/輸出音頻數(shù)據(jù)流的缺省輸 入聲卡和缺省輸出聲卡從藍(lán)牙虛擬聲卡切換到本地物理聲卡,但是當(dāng) 前的音頻應(yīng)用程序要想完成切換,音頻應(yīng)用程序必須關(guān)閉當(dāng)前打開的 藍(lán)牙虛擬聲卡,中斷當(dāng)前的音頻應(yīng)用,然后重新打開系統(tǒng)缺省聲卡, 即本地物理聲卡,甚至重新啟動(dòng)音頻應(yīng)用程序,才能完成切換,音頻 應(yīng)用被中斷。由此可見,音頻應(yīng)用程序輸入/輸出的音頻數(shù)據(jù)流無法在藍(lán)牙音頻 傳輸信道和本地物理聲卡之間進(jìn)行輸入/輸出的無間斷切換,不僅給用 戶帶來了操作上的不便,而且在一些對(duì)音頻數(shù)據(jù)流輸入/輸出實(shí)時(shí)性要 求較高的場合,如打Skype電話、觀賞在線影視、玩游戲等,重新啟 動(dòng)音頻應(yīng)用程序?qū)?dǎo)致無法繼續(xù)原先的使用場景,用戶使用不便。其它的無線音頻應(yīng)用,如Wi-Fi音頻應(yīng)用和UWB音頻應(yīng)用等,也都存在這類似的問題??紤]到現(xiàn)有技術(shù)的這些缺陷,需要提供一種能 提供無間斷軟件切換音頻應(yīng)用程序音頻數(shù)據(jù)流的輸入/輸出的方法、設(shè) 備和系統(tǒng),使得用戶能夠不重新啟動(dòng)音頻應(yīng)用程序,也不中斷當(dāng)前音 頻應(yīng)用,在物理音頻輸入/輸出設(shè)備和無線音頻輸入/輸出設(shè)備之間自由 切換。發(fā)明內(nèi)容本發(fā)明所要解決的技術(shù)問題是提供一種用于操作系統(tǒng)中音頻數(shù)據(jù) 流輸入/輸出進(jìn)行無間斷軟件切換的方法、設(shè)備和系統(tǒng),其中該系統(tǒng)包 括音頻數(shù)據(jù)流輸入/輸出無間斷軟件切換設(shè)備、無線音頻設(shè)備和有線音 頻設(shè)備。該音頻數(shù)據(jù)流輸入/輸出無間斷軟件切換設(shè)備包括(a) 操作系統(tǒng),如Windows操作系統(tǒng),Linux操作系統(tǒng);(b) 操作系統(tǒng)中的音頻應(yīng)用程序;(c) 操作系統(tǒng)中的至少一個(gè)本地物理聲卡和至少一個(gè)短距離無線 通信模塊(需要說明的是,本發(fā)明將操作系統(tǒng)中主要通過硬件方式實(shí) 現(xiàn)音頻數(shù)據(jù)流采集與輸出的設(shè)備稱為本地物理聲卡),音頻應(yīng)用程序輸 出的音頻數(shù)據(jù)流可以通過操作系統(tǒng)從本地物理聲卡發(fā)送給有線音頻設(shè) 備,也可以通過操作系統(tǒng)從短距離無線通信模塊的無線音頻傳輸信道 發(fā)送給無線音頻設(shè)備;同時(shí),在另一個(gè)方向上有線音頻設(shè)備輸出到本 地物理聲卡的音頻數(shù)據(jù)流可以通過操作系統(tǒng)輸入到音頻應(yīng)用程序,無 線音頻設(shè)備輸出到無線音頻傳輸信道的音頻數(shù)據(jù)流也可以通過操作系 統(tǒng)輸入到音頻應(yīng)用程序;(d)在操作系統(tǒng)中添加一個(gè)音頻切換管理模塊,用于獲取音頻應(yīng)用 程序輸出到操作系統(tǒng)的音頻數(shù)據(jù)流,并控制選擇該音頻數(shù)據(jù)流從本地 物理聲卡或者短距離無線通信模塊的無線音頻傳輸信道進(jìn)行輸出,以 及用于控制選擇從本地物理聲卡或短距離無線通信模塊的音頻傳輸信 道獲取無線音頻設(shè)備輸入的音頻數(shù)據(jù)流,并將所獲取的音頻數(shù)據(jù)流通 過操作系統(tǒng)輸入給音頻應(yīng)用程序。當(dāng)短距離無線通信模塊建立一條無線音頻傳輸信道連接時(shí),音頻 切換管理模塊自動(dòng)將所獲取的音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流輸出切 換給該無線音頻傳輸信道,通過該無線音頻傳輸信道輸出給無線音頻設(shè)備,并停止將該音頻數(shù)據(jù)流通過本地物理聲卡輸出給有線音頻設(shè)備, 同時(shí)音頻切換管理模塊選擇從該無線音頻傳輸信道獲取無線音頻設(shè)備 輸入的音頻數(shù)據(jù)流并輸入給音頻應(yīng)用程序,停止從本地物理聲卡獲取 有線音頻設(shè)備輸入的音頻數(shù)據(jù)流;當(dāng)該短距離無線通信模塊斷開該無 線音頻傳輸信道連接時(shí),音頻切換管理模塊自動(dòng)將音頻應(yīng)用程序輸出 的音頻數(shù)據(jù)流輸出切換給本地物理聲卡,并停止將該音頻數(shù)據(jù)流輸出 給該無線音頻傳輸信道,同時(shí)音頻切換管理模塊選擇從本地物理聲卡 獲取有線音頻設(shè)備輸入的音頻數(shù)據(jù)流并輸出給音頻應(yīng)用程序,停止從 該無線音頻傳輸信道獲取無線音頻設(shè)備輸入的音頻數(shù)據(jù)流。在上述短 距離無線通信模塊連接或斷開無線音頻傳輸信道連接,而導(dǎo)致音頻應(yīng) 用程序輸入/輸出的音頻數(shù)據(jù)流在本地物理聲卡和短距離無線通信模塊 的無線音頻傳輸信道之間進(jìn)行輸入/輸出的切換過程中,音頻應(yīng)用程序 無需停止音頻數(shù)據(jù)流的輸入/輸出,也無需重新指定和操作系統(tǒng)之間的 音頻數(shù)據(jù)流輸入/輸出設(shè)備。根據(jù)本發(fā)明,音頻切換管理模塊為了控制選擇操作系統(tǒng)中音頻數(shù) 據(jù)流輸入/輸出的無間斷軟件切換,首先需要獲取音頻應(yīng)用程序輸出到 操作系統(tǒng)中的音頻數(shù)據(jù)流,以及另一個(gè)方向上無線音頻設(shè)備輸出給無 線音頻傳輸信道的音頻數(shù)據(jù)流和有線音頻設(shè)備輸出給本地物理聲卡的 音頻數(shù)據(jù)流。一種實(shí)現(xiàn)方式是在音頻切換管理模塊中添加至少一個(gè)虛擬聲卡, 類似于前面提到的藍(lán)牙虛擬聲卡,是實(shí)現(xiàn)音頻數(shù)據(jù)流采集與輸出的一 個(gè)軟件模塊,但區(qū)別在于,該虛擬聲卡與短距離無線通信模塊的類型 和無線音頻傳輸信道的類型無關(guān)。在操作系統(tǒng)中只能選擇本地物理聲 卡和虛擬聲卡中的某一個(gè)作為操作系統(tǒng)中輸入音頻數(shù)據(jù)流的缺省輸入 聲卡,選擇本地物理聲卡和虛擬聲卡中的某一個(gè)作為操作系統(tǒng)中輸出 音頻數(shù)據(jù)流的缺省輸出聲卡,其中缺省輸入聲卡和缺省輸出聲卡可以 為同一個(gè)聲卡,也可以分別為兩個(gè)不相同的聲卡,當(dāng)音頻應(yīng)用程序缺 省設(shè)置輸入聲卡和輸出聲卡時(shí),則音頻應(yīng)用程序通過該缺省輸入聲卡 獲取輸入的音頻數(shù)據(jù)流,通過該缺省輸出聲卡來輸出自己播放的音頻 數(shù)據(jù)流。用戶也可以指定某個(gè)聲卡作為音頻應(yīng)用程序的輸入聲卡,同 時(shí)指定某個(gè)聲卡作為音頻應(yīng)用程序的輸出聲卡,其中指定的輸入聲卡和指定的輸出聲卡可以為同一個(gè)聲卡,也可以分別為兩個(gè)不相同的聲 卡,則該音頻應(yīng)用程序通過該指定的輸入聲卡獲取輸入的音頻數(shù)據(jù)流, 通過該指定的輸出聲卡來輸出自己播放的音頻數(shù)據(jù)流。優(yōu)選地,當(dāng)音 頻切換管理模塊被啟動(dòng)的時(shí)候,虛擬聲卡被自動(dòng)設(shè)置為操作系統(tǒng)中輸 入/輸出音頻數(shù)據(jù)流的缺省輸入聲卡和缺省輸出聲卡,此時(shí)音頻應(yīng)用程 序如果缺省設(shè)置輸入聲卡和輸出聲卡,則是虛擬聲卡而不是本地物理 聲卡獲取音頻應(yīng)用程序輸入/輸出的音頻數(shù)據(jù)流;而當(dāng)音頻切換管理模 塊停止工作時(shí),其虛擬聲卡又被自動(dòng)設(shè)置成不可用狀態(tài),本地物理聲 卡被設(shè)置為操作系統(tǒng)中輸入/輸出音頻數(shù)據(jù)流的缺省輸入聲卡和缺省輸 出聲卡,此時(shí)音頻應(yīng)用程序如果缺省設(shè)置輸入聲卡和輸出聲卡,則本 地物理聲卡直接獲取音頻應(yīng)用程序輸入/輸出的音頻數(shù)據(jù)流。另一種實(shí)現(xiàn)方案是在音頻切換管理模塊中添加一個(gè)過濾驅(qū)動(dòng)。與 虛擬聲卡不同的是,該過濾驅(qū)動(dòng)位于音頻應(yīng)用程序和本地物理聲卡之 間,過濾驅(qū)動(dòng)和本地物理聲卡兩者只對(duì)用戶顯示為一個(gè)聲卡(本地物 理聲卡)。當(dāng)音頻應(yīng)用程序的輸出聲卡為本地物理聲卡時(shí),該過濾驅(qū)動(dòng) 可截獲音頻應(yīng)用程序輸出給本地物理聲卡的音頻數(shù)據(jù)流,然后將該音 頻數(shù)據(jù)流通過短距離無線通信模塊的無線音頻傳輸信道輸出給無線音頻設(shè)備,或者通過本地物理聲卡輸出給有線音頻設(shè)備;同樣地,當(dāng)音頻應(yīng)用程序的輸入聲卡為本地物理聲卡時(shí),該過濾驅(qū)動(dòng)可獲取無線音 頻設(shè)備輸出給無線音頻傳輸信道的音頻數(shù)據(jù)流,或者獲取有線音頻設(shè) 備輸出給本地物理聲卡的音頻數(shù)據(jù)流,再輸入給音頻應(yīng)用程序。根據(jù)本發(fā)明,音頻切換管理模塊根據(jù)短距離無線通信模塊的無線 音頻傳輸信道的連接狀態(tài),來控制選擇其虛擬聲卡或過濾驅(qū)動(dòng)獲取音 頻應(yīng)用程序輸入/輸出的音頻數(shù)據(jù)流的在地物理聲卡和短距離無線通信 模塊的無線音頻傳輸信道兩者之一進(jìn)行輸入/輸出。因此,在操作系統(tǒng) 中的短距離無線通信模塊中設(shè)置了無線音頻傳輸信道的連接狀態(tài)標(biāo) 志,用于標(biāo)識(shí)該短距離無線通信模塊的無線音頻傳輸信道處于連接狀 態(tài)或者斷開狀態(tài)。該短距離無線通信模塊實(shí)時(shí)檢測其無線音頻傳輸信 道的狀態(tài), 一旦無線傳輸信道狀態(tài)發(fā)生變化,就更新該連接狀態(tài)標(biāo)志 并通知音頻切換管理模塊。當(dāng)連接狀態(tài)標(biāo)志標(biāo)識(shí)該短距離無線通信模 塊的無線音頻傳輸信道處于連接狀態(tài)時(shí),音頻切換管理模塊將虛擬聲卡或過濾驅(qū)動(dòng)獲取的音頻應(yīng)用程序輸出到操作系統(tǒng)中的音頻數(shù)據(jù)流, 從該無線音頻傳輸信道輸出到無線音頻設(shè)備,停止將該音頻數(shù)據(jù)流從 本地物理聲卡輸出給有線音頻設(shè)備,同時(shí)控制虛擬聲卡或過濾驅(qū)動(dòng)從 該無線音頻傳輸信道獲取無線音頻設(shè)備輸入的音頻數(shù)據(jù)流并輸入到音 頻應(yīng)用程序,停止從本地物理聲卡獲取有線音頻設(shè)備輸入的音頻數(shù)據(jù) 流;而當(dāng)該連接狀態(tài)標(biāo)志標(biāo)識(shí)該短距離無線通信模塊的無線音頻傳輸 信道處于斷開狀態(tài),則音頻切換管理模塊將虛擬聲卡或過濾驅(qū)動(dòng)所獲 取的音頻應(yīng)用程序輸出到操作系統(tǒng)中的音頻數(shù)據(jù)流從本地物理聲卡輸 出到有線音頻設(shè)備,停止將該音頻數(shù)據(jù)流從該無線音頻傳輸信道輸出 給無線音頻設(shè)備,同時(shí)控制虛擬聲卡或過濾驅(qū)動(dòng)從本地物理聲卡獲取 有線音頻設(shè)備輸入的音頻數(shù)據(jù)流并輸入到音頻應(yīng)用程序,停止從該無 線音頻傳輸信道獲取無線音頻設(shè)備輸入的音頻數(shù)據(jù)流。如果在音頻切換管理模塊中只添加一個(gè)虛擬聲卡,而操作系統(tǒng)中 包括兩個(gè)或兩個(gè)以上的相同類型或不同類型的多個(gè)短距離無線通信模塊的無線音頻傳輸信道(如藍(lán)牙音頻傳輸信道、Wi-Fi音頻傳輸信道、 UWB音頻傳輸信道等),則該虛擬聲卡將獲取的音頻應(yīng)用程序輸出到 操作系統(tǒng)中的音頻數(shù)據(jù)流分別發(fā)送給該多條無線音頻傳輸信道或本地 物理聲卡,同時(shí)該虛擬聲卡獲取多條無線音頻傳輸信道或本地物理聲 卡的音頻數(shù)據(jù)流,混音后輸入到音頻應(yīng)用程序。舉例說,RealPlayer 播放的音樂通過兩個(gè)藍(lán)牙A2DP應(yīng)用的ACL傳輸信道發(fā)送給兩個(gè)藍(lán)牙 耳機(jī),或者通過一個(gè)藍(lán)牙A2DP應(yīng)用的ACL傳輸信道發(fā)送給一個(gè)藍(lán)牙 耳機(jī)并通過五個(gè)Wi-Fi音頻傳輸信道發(fā)送給Wi-Fi五聲道音箱。如果多 個(gè)短距離無線通信模塊的全部無線音頻傳輸信道處于斷開狀態(tài),則音 頻切換管理模塊將虛擬聲卡所獲取音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流輸 出切換給本地物理聲卡,停止將該音頻數(shù)據(jù)流輸出給該多個(gè)無線音頻 傳輸信道,同時(shí)該音頻切換管理模塊控制虛擬聲卡從本地物理聲卡獲 取有線音頻設(shè)備輸入的音頻數(shù)據(jù)流并輸入音頻應(yīng)用程序,停止從該多 個(gè)無線音頻傳輸信道獲取無線音頻設(shè)備輸入的音頻數(shù)據(jù)流;以及當(dāng)該 多個(gè)短距離無線通信模塊的至少一條無線音頻傳輸信道處于連接狀態(tài) 時(shí),該音頻切換管理模塊將虛擬聲卡所獲取音頻應(yīng)用程序輸出的音頻 數(shù)據(jù)流輸出給該處于連接狀態(tài)的至少一條無線音頻傳輸信道,停止將該音頻數(shù)據(jù)流通過本地物理聲卡輸出給有線音頻設(shè)備,同時(shí)該音頻切 換管理模塊控制虛擬聲卡從該處于連接狀態(tài)的至少一條無線音頻傳輸 信道獲取無線音頻設(shè)備輸入的音頻數(shù)據(jù)流并輸入音頻應(yīng)用程序,停止 從本地物理聲卡獲取有線音頻設(shè)備輸入的音頻數(shù)據(jù)流。在一個(gè)操作系統(tǒng)中往往還有兩個(gè)或兩個(gè)以上音頻應(yīng)用程序同時(shí)應(yīng)用的情況,例如有人用無線耳機(jī)聽RealPlayer播放的音樂,同時(shí)另一 個(gè)人用無線耳機(jī)和麥克風(fēng)打Skype電話。在這種情況下,如果在音頻 切換管理模塊中只添加了一個(gè)虛擬聲卡,當(dāng)該虛擬聲卡被設(shè)置為操作 系統(tǒng)中輸入/輸出音頻數(shù)據(jù)流的缺省輸入聲卡和缺省輸出聲卡時(shí),該虛 擬聲卡獲取的是該多個(gè)音頻應(yīng)用程序同時(shí)缺省輸出給操作系統(tǒng)的音頻 數(shù)據(jù)流進(jìn)行混音后的音頻數(shù)據(jù)流,給用戶的視聽造成了一定的干擾。 針對(duì)這個(gè)問題, 一種優(yōu)選的方案,但不限于,是在音頻切換管理模塊 中添加兩個(gè)或兩個(gè)以上的多個(gè)虛擬聲卡,分別作為多個(gè)音頻應(yīng)用程序 輸入/輸出的音頻數(shù)據(jù)流的輸入/輸出聲卡,即一個(gè)音頻應(yīng)用程序?qū)?yīng)一 個(gè)虛擬聲卡,以實(shí)現(xiàn)與操作系統(tǒng)之間音頻數(shù)據(jù)流的輸入/輸出,然后通 過其對(duì)應(yīng)的無線音頻傳輸信道與無線音頻設(shè)備進(jìn)行交互。根據(jù)本發(fā)明的一個(gè)優(yōu)選實(shí)施例,音頻切換管理模塊具備兩個(gè)虛擬 聲卡,第一虛擬聲卡和第二虛擬聲卡,且第一虛擬聲卡被指定為第一 音頻應(yīng)用程序的輸入聲卡和輸出聲卡,第二虛擬聲卡被指定為第二音 頻應(yīng)用程序的輸入聲卡和輸出聲卡。第一無線音頻傳輸信道處于連接 狀態(tài)時(shí),該音頻切換管理模塊將第一虛擬聲卡所獲取的第一音頻應(yīng)用 程序輸出的音頻數(shù)據(jù)流輸出切換給第一無線音頻傳輸信道,停止將該 音頻數(shù)據(jù)流通過本地物理聲卡輸出給有線音頻設(shè)備,同時(shí)控制第一虛 擬聲卡從第一無線音頻傳輸信道獲取無線音頻設(shè)備輸入的音頻數(shù)據(jù)流 并輸入給第一音頻應(yīng)用程序,停止從本地物理聲卡獲取有線音頻設(shè)備 輸入的音頻數(shù)據(jù)流,以及第一無線音頻傳輸信道處于斷開狀態(tài)時(shí),該 音頻切換管理模塊將第一虛擬聲卡所獲取的第一音頻應(yīng)用程序輸出的 音頻數(shù)據(jù)流輸出切換給本地物理聲卡,停止將該音頻數(shù)據(jù)流輸出給第 一無線音頻傳輸信道,同時(shí)控制第一虛擬聲卡從本地物理聲卡獲取有 線音頻設(shè)備輸入的音頻數(shù)據(jù)流并輸入給第一音頻應(yīng)用程序,停止從第 一無線音頻傳輸信道獲取無線音頻設(shè)備輸入的音頻數(shù)據(jù)流;第二無線音頻傳輸信道處于連接狀態(tài)時(shí),該音頻切換管理模塊將第二虛擬聲卡 所獲取的第二音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流輸出切換給第二無線音 頻傳輸信道,停止將該音頻數(shù)據(jù)流通過本地物理聲卡輸出給有線音頻 設(shè)備,同時(shí)控制第二虛擬聲卡從第二無線音頻傳輸信道獲取無線音頻 設(shè)備輸入的音頻數(shù)據(jù)流并輸入給第二音頻應(yīng)用程序,停止從本地物理 聲卡獲取有線音頻設(shè)備輸入的音頻數(shù)據(jù)流,以及第二無線音頻傳輸信 道處于斷開狀態(tài)時(shí),該音頻切換管理模塊將第二虛擬聲卡所獲取的第 二音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流輸出切換給本地物理聲卡,停止將 該音頻數(shù)據(jù)流輸出給第二無線音頻傳輸信道,同時(shí)控制第二虛擬聲卡 從本地物理聲卡獲取有線音頻設(shè)備輸入的音頻數(shù)據(jù)流并輸入給第二音 頻應(yīng)用程序,停止從第二無線音頻傳輸信道獲取無線音頻設(shè)備輸入的 音頻數(shù)據(jù)流。另外,在上述多個(gè)音頻應(yīng)用程序的應(yīng)用場景中,如果有兩個(gè)或兩 個(gè)以上的音頻應(yīng)用程序輸入/輸出音頻數(shù)據(jù)流相對(duì)應(yīng)的無線音頻傳輸信 道同時(shí)斷開連接時(shí),則音頻切換管理模塊需要將該多個(gè)的音頻應(yīng)用程 序輸入/輸出的音頻數(shù)據(jù)流從本地物理聲卡進(jìn)行輸入/輸出。為了避免混 音和資源沖突,該音頻切換管理模塊可以根據(jù)優(yōu)選策略,自動(dòng)選擇其 中一個(gè)音頻應(yīng)用程序輸入/輸出的音頻數(shù)據(jù)流從本地物理聲卡進(jìn)行輸入/輸出。例如在藍(lán)牙SCO/eSCO傳輸信道和ACL傳輸信道同時(shí)斷開連 接時(shí),通過藍(lán)牙SCO/eSCO傳輸信道輸入/輸出的Skype音頻數(shù)據(jù)流優(yōu) 先切換到從本地物理聲卡輸入/輸出,而通過藍(lán)牙ACL傳輸信道輸出的 RealPlayer音頻數(shù)據(jù)流可以考慮不輸出到本地物理聲卡。當(dāng)然,也可以 通過用戶界面提示,由用戶進(jìn)行選擇優(yōu)先切換到從本地物理聲卡進(jìn)行 輸入/輸出的音頻應(yīng)用程序。本發(fā)明不需要對(duì)現(xiàn)有音頻應(yīng)用程序的接口或應(yīng)用的作任何修改, 兼容性和易用性好,而且在自動(dòng)無間斷進(jìn)行音頻應(yīng)用程序輸入/輸出的 音頻數(shù)據(jù)流在無線音頻傳輸信道和本地物理聲卡之間進(jìn)行輸入/輸出的 切換過程時(shí),音頻應(yīng)用程序無需停止音頻數(shù)據(jù)流的輸入/輸出,也無需 重新指定音頻應(yīng)用程序與操作系統(tǒng)之間輸入/輸出音頻數(shù)據(jù)流的缺省聲 卡,解決了現(xiàn)有技術(shù)中存在的操作繁瑣的缺點(diǎn)。通過借助優(yōu)選實(shí)施例附圖詳細(xì)描述本發(fā)明的流程,將有助于理解本 發(fā)明的目的和優(yōu)點(diǎn)。其中

圖1是現(xiàn)有技術(shù)中音頻應(yīng)用程序輸入/輸出的音頻數(shù)據(jù)流從本地物 理聲卡進(jìn)行輸入/輸出的示意圖;圖2是現(xiàn)有技術(shù)中音頻應(yīng)用程序輸入/輸出的音頻數(shù)據(jù)流從無線音 頻傳輸信道進(jìn)行輸入/輸出的示意圖;圖3是根據(jù)本發(fā)明的一個(gè)優(yōu)選實(shí)施例,音頻應(yīng)用程序輸入/輸出的音頻數(shù)據(jù)流在無線音頻傳輸信道和本地物理聲卡之間進(jìn)行輸入/輸出無間斷軟件切換的示意圖;圖4是根據(jù)本發(fā)明的又一優(yōu)選實(shí)施例,音頻應(yīng)用程序輸入/輸出的 音頻數(shù)據(jù)流在無線音頻傳輸信道和本地物理聲卡之間進(jìn)行輸入/輸出無 間斷軟件切換的示意圖;圖5是根據(jù)本發(fā)明,音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流在無線音頻 傳輸信道和本地物理聲卡之間進(jìn)行輸出的無間斷軟件切換的流程圖;圖6是根據(jù)本發(fā)明,音頻應(yīng)用程序輸入的音頻數(shù)據(jù)流在無線音頻 傳輸信道和本地物理聲卡之間進(jìn)行輸入的無間斷軟件切換的流程圖;圖7是根據(jù)本發(fā)明的優(yōu)選實(shí)施例,給出兩路藍(lán)牙音頻應(yīng)用根據(jù)優(yōu) 選策略進(jìn)行無間斷軟件切換的示意圖。具體實(shí)施例圖1是現(xiàn)有技術(shù)中音頻應(yīng)用程序輸入/輸出的音頻數(shù)據(jù)流從本地物 理聲卡進(jìn)行輸入/輸出的示意圖。如圖l所示,本地物理聲卡103是主要通過硬件方式實(shí)現(xiàn)音頻數(shù) 據(jù)流采集和輸出的設(shè)備。操作系統(tǒng)可分為操作系統(tǒng)應(yīng)用層101和操作 系統(tǒng)核心層102,其中音頻應(yīng)用程序100在操作系統(tǒng)應(yīng)用層101,本地 物理聲卡103在操作系統(tǒng)核心層102,且操作系統(tǒng)應(yīng)用層101與操作系 統(tǒng)核心層102之間有相關(guān)接口用于協(xié)調(diào)音頻應(yīng)用程序IOO與本地物理 聲卡103之間音頻數(shù)據(jù)流傳輸。操作系統(tǒng)應(yīng)用層IOI和操作系統(tǒng)核心 層102屬于軟件層,在系統(tǒng)中還包括有線音頻設(shè)備104等用戶端設(shè)備 的硬件設(shè)備層105。因此,如果各種音頻應(yīng)用程序100 (如RealPlayer, Media Player等)的輸出聲卡是本地物理聲卡103,則音頻應(yīng)用程序100將播放的音頻數(shù)據(jù)流輸出到本地物理聲卡103,再由本地物理聲卡103 通過硬件設(shè)備層105的有線音頻設(shè)備104進(jìn)行輸出(如筆記本電腦和 PDA上的揚(yáng)聲器,有線連接的耳機(jī)和音箱等)。對(duì)于即時(shí)通信IM (如Skype、 MSN)和VoIP網(wǎng)絡(luò)電話系統(tǒng)等雙方 通話的音頻應(yīng)用程序100,如果其輸入聲卡是本地物理聲卡103,則還 需要從有線音頻設(shè)備104 (如有線麥克風(fēng))向本地物理聲卡103輸入音 頻數(shù)據(jù)流,然后通過操作系統(tǒng)應(yīng)用層101和操作系統(tǒng)核心層102之間 的接口輸入給音頻應(yīng)用程序100。圖2是現(xiàn)有技術(shù)中音頻應(yīng)用程序輸入/輸出的音頻數(shù)據(jù)流從無線音 頻傳輸信道進(jìn)行輸入/輸出的示意圖。如圖2所示,虛擬聲卡203是實(shí)現(xiàn)音頻數(shù)據(jù)流采集與輸出的一個(gè)軟 件模塊,操作系統(tǒng)可分為操作系統(tǒng)應(yīng)用層201和操作系統(tǒng)核心層202, 其中音頻應(yīng)用程序200在操作系統(tǒng)應(yīng)用層201 ,虛擬聲卡203在操作系 統(tǒng)核心層202,且操作系統(tǒng)應(yīng)用層201與操作系統(tǒng)核心層202之間有相 關(guān)接口用于協(xié)調(diào)音頻應(yīng)用程序200與虛擬聲卡203之間音頻數(shù)據(jù)流傳 輸。如果音頻應(yīng)用程序200 (如RealPlayer, Media Player等)的輸出聲 卡是虛擬聲卡203,則音頻應(yīng)用程序200將播放的音頻數(shù)據(jù)流輸出到虛 擬聲卡203,再由虛擬聲卡203通過短距離無線通信模塊204的無線音 頻傳輸信道輸出給硬件設(shè)備層206的無線音頻設(shè)備205。對(duì)于即時(shí)通信 IM (如Skype、 MSN)和VoIP網(wǎng)絡(luò)電話系統(tǒng)等雙方通話的音頻應(yīng)用程 序200,如果其輸入聲卡是虛擬聲卡203,則還需從上述無線音頻設(shè)備 205通過短距離無線通信模塊204的無線音頻傳輸信道向虛擬聲卡203 輸入音頻數(shù)據(jù)流,然后輸入給音頻應(yīng)用程序200。其中短距離無線通信模塊204可以為,但不限于,藍(lán)牙模塊、Wi-Fi 模塊和UWB模塊,相應(yīng)地?zé)o線音頻設(shè)備205可以為藍(lán)牙音頻設(shè)備、 Wi-Fi音頻設(shè)備和UWB音頻設(shè)備。藍(lán)牙模塊和藍(lán)牙音頻設(shè)備之間建立 藍(lán)牙音頻傳輸信道進(jìn)行音頻數(shù)據(jù)流的傳輸,同樣的,Wi-Fi模塊和Wi-Fi 音頻設(shè)備之間建立Wi-Fi音頻傳輸信道進(jìn)行音頻數(shù)據(jù)流的傳輸,UWB 模塊和UWB音頻設(shè)備之間建立UWB音頻傳輸信道進(jìn)行音頻數(shù)據(jù)流的 傳輸。圖3是根據(jù)本發(fā)明的一個(gè)優(yōu)選實(shí)施例,音頻應(yīng)用程序輸入/輸出的 音頻數(shù)據(jù)流在本地物理聲卡和短距離無線通信模塊的無線音頻傳輸信 道之間進(jìn)行輸入/輸出無間斷軟件切換的示意圖。如圖3所示,音頻切換管理模塊303包括虛擬聲卡304和音頻數(shù) 據(jù)流開關(guān)309,其中虛擬聲卡304用于獲取音頻應(yīng)用程序300輸出到操 作系統(tǒng)中的音頻數(shù)據(jù)流,以及用于從本地物理聲卡307獲取硬件設(shè)備 層310的有線音頻設(shè)備308輸入的音頻數(shù)據(jù)流,或通過短距離無線通 信模塊305的無線音頻傳輸信道獲取硬件設(shè)備層310的無線音頻設(shè)備 306輸入的音頻數(shù)據(jù)流;音頻數(shù)據(jù)流開關(guān)309,用于從短距離無線通信 模塊305獲取標(biāo)識(shí)無線音頻傳輸信道處于連接狀態(tài)或斷開狀態(tài)的連接 狀態(tài)標(biāo)志,然后根據(jù)該連接狀態(tài)標(biāo)志控制虛擬聲卡304所獲取的音頻 應(yīng)用程序300輸出的音頻數(shù)據(jù)流從本地物理聲卡307輸出給有線音頻 設(shè)備308,或者從短距離無線通信模塊305的無線音頻傳輸信道輸出給 無線音頻設(shè)備306,以及在音頻應(yīng)用程序300音頻數(shù)據(jù)流輸入方向上, 該音頻數(shù)據(jù)流開關(guān)309控制虛擬聲卡304從本地物理聲卡307獲取有 線音頻設(shè)備308輸入的音頻數(shù)據(jù)流,或者從短距離無線通信模塊305 的無線音頻傳輸信道獲取無線音頻設(shè)備306輸入的音頻數(shù)據(jù)流,并將 所獲取的音頻數(shù)據(jù)流輸入給音頻應(yīng)用程序300。虛擬聲卡304和本地物理聲卡307可以在操作系統(tǒng)中以聲卡(或音 頻設(shè)備及其它)的方式顯示給用戶,由用戶或音頻切換管理模塊303 選擇虛擬聲卡304和本地物理聲卡307這兩者之一設(shè)置為缺省輸入聲 卡和缺省輸出聲卡,分別用于缺省輸入和輸出音頻應(yīng)用程序300輸入 和輸出的音頻數(shù)據(jù)流。操作系統(tǒng)應(yīng)用層301與操作系統(tǒng)核心層302之 間有相關(guān)接口用于協(xié)調(diào)音頻應(yīng)用程序300與虛擬聲卡304及本地物理 聲卡307之間音頻數(shù)據(jù)流傳輸。一個(gè)優(yōu)選的方式是,但不局限于,音頻切換管理模塊303的虛擬 聲卡304和音頻數(shù)據(jù)流開關(guān)309的初始狀態(tài)為不可用狀態(tài),當(dāng)用戶只 需通過本地物理聲卡307從有線音頻設(shè)備308輸入/輸出音頻應(yīng)用程序 300的輸入/輸出音頻數(shù)據(jù)流時(shí),本地物理聲卡307為操作系統(tǒng)的缺省 輸入聲卡和缺省輸出聲卡,音頻切換管理模塊303的其虛擬聲卡304 和音頻數(shù)據(jù)流開關(guān)309不工作,避免了其始終處于工作狀態(tài)造成的不必要的系統(tǒng)開銷,此時(shí)操作系統(tǒng)中音頻數(shù)據(jù)流的輸入/輸出如圖1所示, 在圖3中不再詳細(xì)列出并介紹。而當(dāng)短距離無線通信模塊305啟動(dòng)工作時(shí),音頻切換管理模塊303的虛擬聲卡304和音頻數(shù)據(jù)流開關(guān)309 自動(dòng)設(shè)置成可用狀態(tài),并且自動(dòng)設(shè)置虛擬聲卡304為操作系統(tǒng)的缺省 輸入聲卡和缺省輸出聲卡,此時(shí)若啟動(dòng)音頻應(yīng)用程序300,且缺省設(shè)置 音頻應(yīng)用程序300的輸入聲卡和輸出聲卡,則是虛擬聲卡304而不是 本地物理聲卡307獲取音頻應(yīng)用程序300輸入/輸出的音頻數(shù)據(jù)流,由 此音頻數(shù)據(jù)流開關(guān)309便可完全控制音頻應(yīng)用程序300輸入/輸出的音 頻數(shù)據(jù)流在本地物理聲卡307和短距離無線通信模塊305的無線音頻 傳輸信道之間進(jìn)行輸入/輸出的無間斷軟件切換,并可避免建立短距離 無線通信模塊305的無線音頻傳輸信道后再啟動(dòng)虛擬聲卡304可能造 成的音頻數(shù)據(jù)流輸入/輸出的間斷問題。'當(dāng)虛擬聲卡304獲取音頻應(yīng)用程序300輸出的音頻數(shù)據(jù)流后,音 頻數(shù)據(jù)流開關(guān)309根據(jù)從短距離無線通信模塊305的無線音頻傳輸信 道的連接狀態(tài)標(biāo)志,控制虛擬聲卡304將該音頻數(shù)據(jù)流在本地物理聲 卡307和短距離無線通信模塊305的無線音頻傳輸信道之間進(jìn)行輸出 的無間斷軟件切換當(dāng)連接狀態(tài)標(biāo)志標(biāo)識(shí)短距離無線通信模塊305的 無線音頻傳輸信道處于連接狀態(tài),則音頻數(shù)據(jù)流開關(guān)309控制虛擬聲 卡304獲取的該輸出音頻數(shù)據(jù)流通過短距離無線通信模塊305的無線 音頻傳輸信道從無線音頻設(shè)備306進(jìn)行輸出,停止將該音頻數(shù)據(jù)流通 過本地物理聲卡307從有線音頻設(shè)備308進(jìn)行輸出;當(dāng)連接狀態(tài)標(biāo)志 標(biāo)識(shí)短距離無線通信模塊305的無線音頻傳輸信道處于斷開狀態(tài),則 音頻數(shù)據(jù)流開關(guān)309控制虛擬聲卡304獲取的該輸出音頻數(shù)據(jù)流通過 本地物理聲卡307從有線音頻設(shè)備308進(jìn)行輸出,停止將該音頻數(shù)據(jù) 流通過短距離無線通信模塊305的無線音頻傳輸信道從無線音頻設(shè)備 306進(jìn)行輸出。在音頻應(yīng)用程序300音頻數(shù)據(jù)流的輸入方向上,音頻數(shù)據(jù)流開關(guān) 309根據(jù)從短距離無線通信模塊305的無線音頻傳輸信道的連接狀態(tài) 標(biāo)志,控制虛擬聲卡304在本地物理聲卡307和短距離無線通信模塊 305的無線音頻傳輸信道之間獲取輸入音頻數(shù)據(jù)流的無間斷軟件切換 當(dāng)連接狀態(tài)標(biāo)志標(biāo)識(shí)短距離無線通信模塊305的無線音頻傳輸信道處于連接狀態(tài),則音頻數(shù)據(jù)流開關(guān)309控制虛擬聲卡304從短距離無線通信模塊305的無線音頻傳輸信道獲取無線音頻設(shè)備306輸入的音頻 數(shù)據(jù)流并輸入到音頻應(yīng)用程序300,同時(shí)虛擬聲卡304停止從本地物理 聲卡307獲取有線音頻設(shè)備308輸入的音頻數(shù)據(jù)流;當(dāng)連接狀態(tài)標(biāo)志 標(biāo)識(shí)短距離無線通信模塊305的無線音頻傳輸信道處于斷開狀態(tài),則 音頻數(shù)據(jù)流開關(guān)309控制虛擬聲卡304從本地物理聲卡307獲取有線 音頻設(shè)備308輸入的音頻數(shù)據(jù)流并輸入到音頻應(yīng)用程序300,而停止從 短距離無線通信模塊305的無線音頻傳輸信道獲取無線音頻設(shè)備306 輸入的音頻數(shù)據(jù)流。圖4是根據(jù)本發(fā)明的又一優(yōu)選實(shí)施例,音頻應(yīng)用程序輸入/輸出的 音頻數(shù)據(jù)流在短距離無線通信模塊的無線音頻傳輸信道和本地物理聲 卡之間進(jìn)行輸入/輸出無間斷軟件切換的示意圖。需要指出的是,圖4和圖3中的各模塊和設(shè)備的功能一樣,在這 里不再詳細(xì)介紹。區(qū)別在于,圖4中音頻切換管理模塊401中用過濾 驅(qū)動(dòng)406代替了圖3中虛擬聲卡304,即圖4的該實(shí)施例中操作系統(tǒng)僅 對(duì)用戶表現(xiàn)為一個(gè)聲卡(本地物理聲卡404),用戶或音頻切換管理模 塊401僅能設(shè)置本地物理聲卡404作為音頻應(yīng)用程序400的輸入設(shè)備 和輸出設(shè)備;過濾驅(qū)動(dòng)406位于本地物理聲卡404和音頻應(yīng)用程序400 之間,截取音頻應(yīng)用程序400輸出給本地物理聲卡404的音頻數(shù)據(jù)流, 同時(shí)獲取從本地物理聲卡404或從短距離無線通信模塊402的無線音 頻傳輸信道輸入的音頻數(shù)據(jù)流,并輸入給音頻應(yīng)用程序400。由此,圖 4中音頻切換管理模塊401的過濾驅(qū)動(dòng)406和音頻數(shù)據(jù)流開關(guān)407必須 一直處于可用狀態(tài),獲取并控制音頻應(yīng)用程序400輸入/輸出的音頻數(shù) 據(jù)流的無間斷軟件切換。音頻切換管理模塊401的過濾驅(qū)動(dòng)406截獲的音頻應(yīng)用程序400 輸出給本地物理聲卡404的音頻數(shù)據(jù)流后,音頻切換管理模塊401的 音頻數(shù)據(jù)流開關(guān)407根據(jù)從短距離無線通信模塊402獲取的連接狀態(tài) 標(biāo)志,控制過濾驅(qū)動(dòng)406截獲的音頻應(yīng)用程序400輸出的音頻數(shù)據(jù)流 在本地物理聲卡404和短距離無線通信模塊402的無線音頻傳輸信道 之間進(jìn)行輸出的無間斷軟件切換當(dāng)該連接狀態(tài)標(biāo)志標(biāo)識(shí)短距離無線 通信模塊402的無線音頻傳輸信道處于連接狀態(tài),則音頻數(shù)據(jù)流開關(guān)407控制將過濾驅(qū)動(dòng)406截獲的音頻應(yīng)用程序400輸出的音頻數(shù)據(jù)流通 過短距離無線通信模塊402的無線音頻傳輸信道從無線音頻設(shè)備403 進(jìn)行輸出,并停止將過濾驅(qū)動(dòng)406截獲的音頻應(yīng)用程序400輸出的音 頻數(shù)據(jù)流通過本地物理聲卡404從有線音頻設(shè)備405進(jìn)行輸出;當(dāng)該 連接狀態(tài)標(biāo)志標(biāo)識(shí)短距離無線通信模塊402的無線音頻傳輸信道處于 斷開狀態(tài),則音頻數(shù)據(jù)流開關(guān)407將過濾驅(qū)動(dòng)406截獲的音頻應(yīng)用程 序400輸出的音頻數(shù)據(jù)流通過本地物理聲卡404從有線音頻設(shè)備405 進(jìn)行輸出,并停止將過濾驅(qū)動(dòng)406截獲的音頻應(yīng)用程序400輸出的音 頻數(shù)據(jù)流通過短距離無線通信模塊402的無線音頻傳輸信道從無線音 頻設(shè)備403進(jìn)行輸出。在音頻應(yīng)用程序400的音頻數(shù)據(jù)流輸入方向上,音頻數(shù)據(jù)流開關(guān) 407根據(jù)從短距離無線通信模塊402的無線音頻傳輸信道的連接狀態(tài) 標(biāo)志,控制過濾驅(qū)動(dòng)406在本地物理聲卡404和短距離無線通信模塊 402的無線音頻傳輸信道之間進(jìn)行獲取輸入音頻數(shù)據(jù)流的無間斷軟件 切換當(dāng)連接狀態(tài)標(biāo)志標(biāo)識(shí)短距離無線通信模塊402的無線音頻傳輸 信道處于連接狀態(tài),則音頻數(shù)據(jù)流開關(guān)407控制過濾驅(qū)動(dòng)406從短距 離無線通信模塊402的無線音頻傳輸信道獲取無線音頻設(shè)備403輸入 的音頻數(shù)據(jù)流并輸入到音頻應(yīng)用程序400,同時(shí)過濾驅(qū)動(dòng)406停止從本 地物理聲卡404獲取有線音頻設(shè)備405輸入的音頻數(shù)據(jù)流;當(dāng)連接狀 態(tài)標(biāo)志標(biāo)識(shí)短距離無線通信模塊402的無線音頻傳輸信道處于斷開狀 態(tài),則音頻數(shù)據(jù)流開關(guān)407控制過濾驅(qū)動(dòng)406從本地物理聲卡404獲 取有線音頻設(shè)備405輸入的音頻數(shù)據(jù)流并輸入到音頻應(yīng)用程序400,而 停止從短距離無線通信模塊402的無線音頻傳輸信道獲取無線音頻設(shè) 備403輸入的音頻數(shù)據(jù)流。圖5是根據(jù)本發(fā)明,音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流在無線音頻傳輸信道和本地物理聲卡之間進(jìn)行輸出無間斷軟件切換的流程圖。如圖5所示,啟動(dòng)音頻應(yīng)用程序S500后,虛擬聲卡(或過濾驅(qū)動(dòng)) 獲取音頻應(yīng)用程序輸出到操作系統(tǒng)中的音頻數(shù)據(jù)流S501,接著音頻切 換管理模塊判斷短距離無線通信模塊的無線音頻傳輸信道是否處于連 接狀態(tài)S502,如果處于連接狀態(tài),則音頻切換管理模塊將虛擬聲卡(或 過濾驅(qū)動(dòng))獲取的音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流從短距離無線通信模塊的無線音頻傳輸信道輸出給無線音頻設(shè)備S503,否則音頻切換管 理模塊將虛擬聲卡(或過濾驅(qū)動(dòng))獲取的音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流從本地物理聲卡輸出給有線音頻設(shè)備S504。然后,判斷音頻應(yīng)用 程序是否停止工作S505,如果音頻應(yīng)用程序已經(jīng)停止工作,則結(jié)束 S506,否則重復(fù)上述步驟S501 S505。圖6是根據(jù)本發(fā)明,音頻應(yīng)用程序輸入的音頻數(shù)據(jù)流在無線音頻 傳輸信道和本地物理聲卡之間進(jìn)行輸入的無間斷軟件切換的流程圖。如圖6所示,啟動(dòng)音頻應(yīng)用程序S600,音頻切換管理模塊判斷短 距離無線通信模塊的無線音頻傳輸信道是否處于連接狀態(tài)S601,如果 處于連接狀態(tài),則控制虛擬聲卡(或過濾驅(qū)動(dòng))從短距離無線通信模 塊的無線音頻傳輸信道獲取無線音頻設(shè)備輸入的音頻數(shù)據(jù)流S602,否 則虛擬聲卡(或過濾驅(qū)動(dòng))從本地物理聲卡獲取有線音頻設(shè)備輸入的 音頻數(shù)據(jù)流S603,并將該獲取的音頻數(shù)據(jù)流輸入給音頻應(yīng)用程序 S604。接著,判斷音頻應(yīng)用程序是否停止工作S605,如果音頻應(yīng)用程 序已經(jīng)停止工作,則結(jié)束S606,否則重復(fù)上述步驟S601 S605。圖7是根據(jù)本發(fā)明的優(yōu)選實(shí)施例,給出兩路藍(lán)牙音頻應(yīng)用根據(jù)優(yōu) 選策略進(jìn)行無間斷軟件切換的示意圖。如圖7所示,音頻切換管理模塊704具備兩個(gè)虛擬聲卡,虛擬聲 卡A705和虛擬聲卡B706,并且將虛擬聲卡A705作為音頻應(yīng)用程序 RealPlayer 700的指定輸出聲卡,將虛擬聲卡B706作為音頻應(yīng)用程序 Skype701的指定輸出聲卡和輸入聲卡。音頻數(shù)據(jù)流開關(guān)702從藍(lán)牙模 塊708獲取藍(lán)牙A2DP耳機(jī)709和藍(lán)牙模塊708之間的藍(lán)牙ACL傳輸 信道的連接狀態(tài)標(biāo)志,當(dāng)該連接狀態(tài)標(biāo)志標(biāo)識(shí)藍(lán)牙A2DP耳機(jī)709和 藍(lán)牙模塊708之間的藍(lán)牙ACL傳輸信道處于連接狀態(tài),則音頻數(shù)據(jù)流 開關(guān)702控制虛擬聲卡A705獲取RealPlayer 700輸出的音頻數(shù)據(jù)流, 并通過藍(lán)牙模塊708的ACL傳輸信道輸出到藍(lán)牙A2DP耳機(jī)709。同 時(shí),音頻數(shù)據(jù)流開關(guān)702從藍(lán)牙模塊708獲取藍(lán)牙耳麥710和藍(lán)牙模 塊708之間的藍(lán)牙SCO傳輸信道的連接狀態(tài)標(biāo)志,當(dāng)該連接狀態(tài)標(biāo)志 標(biāo)識(shí)藍(lán)牙耳麥710和藍(lán)牙模塊708之間的藍(lán)牙SCO傳輸信道處于連接 狀態(tài)時(shí),藍(lán)牙模塊708用戶和Skype 701好友可以通過藍(lán)牙SCO傳輸 信道進(jìn)行語音通話,即音頻數(shù)據(jù)流開關(guān)702控制虛擬聲卡B707獲取Skype 701輸出的音頻數(shù)據(jù)流并通過藍(lán)牙模塊708的SCO傳輸信道輸 出到藍(lán)牙耳麥708,并控制虛擬聲卡B707從藍(lán)牙模塊708的藍(lán)牙SCO 傳輸信道獲取藍(lán)牙耳麥708輸入的音頻數(shù)據(jù)流并輸入到Skype 70〗。這 樣,藍(lán)牙A2DP耳機(jī)709的用戶聽RealPlayer700播放的音樂,藍(lán)牙耳 麥710的用戶與Skype701好友進(jìn)行通話,可以互不千擾,不會(huì)出現(xiàn) RealPlayer700和Skype701音頻數(shù)據(jù)流混音的情況。當(dāng)只有藍(lán)牙ACL音頻信道處于斷開狀態(tài)時(shí),音頻數(shù)據(jù)流開關(guān)702 控制虛擬聲卡A705將獲取的RealPlayer700輸出的音頻數(shù)據(jù)流切換到 從本地物理聲卡707輸出給有線耳麥711 ,停止將獲取的Rea!Player700 輸出的音頻數(shù)據(jù)流輸出給藍(lán)牙模塊708的藍(lán)牙ACL傳輸信道。當(dāng)只有 藍(lán)牙SCO音頻信道處于斷幵狀態(tài)時(shí),音頻數(shù)據(jù)流開關(guān)702控制虛擬聲 卡B706將Skype 701輸入/輸出的音頻數(shù)據(jù)流切換到通過本地物理聲卡 707從有線耳麥711進(jìn)行輸入/輸出。如果碰上藍(lán)牙模塊708不工作或 其它原因?qū)е滤{(lán)牙ACL音頻傳輸信道和藍(lán)牙SCO音頻傳輸信道同時(shí) 斷開連接時(shí),可通過在音頻數(shù)據(jù)流開關(guān)702中設(shè)置優(yōu)選策略,控制將 虛擬聲卡A705和虛擬聲卡B706中的某一個(gè)所獲取的音頻應(yīng)用程序輸 入/輸出的音頻數(shù)據(jù)流切換到從本地物理聲卡707進(jìn)行輸入/輸出,而控 制另一虛擬聲卡所獲取的音頻數(shù)據(jù)流不切換到從本地物理聲卡707進(jìn) 行輸入/輸出,以此來避免混音。例如可設(shè)置虛擬聲卡B706優(yōu)于虛擬 聲卡A705,則音頻數(shù)據(jù)流開關(guān)702控制虛擬聲卡B706將獲取的Skype 701輸入/輸出的音頻數(shù)據(jù)流切換到通過本地物理聲卡707從有線耳麥 711進(jìn)行輸入/輸出,保證用戶的Skype 701通話不間斷地正常進(jìn)行。雖然本發(fā)明是參考其優(yōu)選實(shí)施例示出和描述的,但本領(lǐng)域的普通技 術(shù)人員應(yīng)該理解,在不脫離附屬的權(quán)利要求書所限定的本發(fā)明的精神 和范圍的情況下,可以進(jìn)行形式和細(xì)節(jié)的各種改變。
權(quán)利要求
1. 一種用于在操作系統(tǒng)中的音頻數(shù)據(jù)流輸入/輸出進(jìn)行無間斷軟件切換的方法,其中在操作系統(tǒng)中具備至少一個(gè)本地物理聲卡,音頻應(yīng)用程序輸入/輸出的音頻數(shù)據(jù)流可以通過本地物理聲卡從有線音頻設(shè)備進(jìn)行輸入/輸出,同時(shí)在操作系統(tǒng)中具備至少一個(gè)短距離無線通信模塊,音頻應(yīng)用程序輸入/輸出的音頻數(shù)據(jù)流也可以通過該短距離無線通信模塊的無線音頻傳輸信道從無線音頻設(shè)備進(jìn)行輸入/輸出,其特征在于在操作系統(tǒng)中添加一個(gè)音頻切換管理模塊,用于獲取音頻應(yīng)用程序輸出到操作系統(tǒng)的音頻數(shù)據(jù)流,并控制選擇該輸出音頻數(shù)據(jù)流從本地物理聲卡和短距離無線通信模塊的無線音頻傳輸信道這兩者之一進(jìn)行輸出,以及該音頻切換管理模塊用于控制選擇從本地物理聲卡和短距離無線通信模塊的無線音頻傳輸信道這兩者之一獲取輸入音頻數(shù)據(jù)流,并將所獲取的輸入音頻數(shù)據(jù)流通過操作系統(tǒng)輸入給音頻應(yīng)用程序;該短距離無線通信模塊建立一條無線音頻傳輸信道連接時(shí),音頻切換管理模塊自動(dòng)將所獲取的音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流輸出切換給該無線音頻傳輸信道,并停止將該音頻數(shù)據(jù)流輸出給本地物理聲卡,同時(shí)音頻切換管理模塊選擇從該無線音頻傳輸信道獲取無線音頻設(shè)備輸入的音頻數(shù)據(jù)流并輸入給音頻應(yīng)用程序,停止從本地物理聲卡獲取有線音頻設(shè)備輸入的音頻數(shù)據(jù)流;以及該短距離無線通信模塊斷開該無線音頻傳輸信道連接時(shí),音頻切換管理模塊自動(dòng)將音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流輸出切換給本地物理聲卡,并停止將該音頻數(shù)據(jù)流輸出給該無線音頻傳輸信道,同時(shí)音頻切換管理模塊選擇從本地物理聲卡獲取有線音頻設(shè)備輸入的音頻數(shù)據(jù)流并輸入給音頻應(yīng)用程序,停止從該無線音頻傳輸信道獲取無線音頻設(shè)備輸入的音頻數(shù)據(jù)流;在上述短距離無線通信模塊連接或斷開無線音頻傳輸信道連接,而導(dǎo)致音頻應(yīng)用程序輸入/輸出的音頻數(shù)據(jù)流在本地物理聲卡和短距離無線通信模塊的無線音頻傳輸信道之間進(jìn)行輸入/輸出的切換過程中,音頻應(yīng)用程序無需停止音頻數(shù)據(jù)流的輸入/輸出,也無需重新指定和操作系統(tǒng)之間的音頻數(shù)據(jù)流輸入/輸出設(shè)備。
2. 根據(jù)權(quán)利要求1所述的方法,其特征在于該短距離無線通信模塊記錄一個(gè)連接狀態(tài)標(biāo)志,用于標(biāo)識(shí)該短距 離無線通信模塊的該無線音頻傳輸信道處于連接和斷開這兩種狀態(tài)之 一;以及該音頻切換管理模塊根據(jù)該連接狀態(tài)標(biāo)志,來控制選擇音頻應(yīng)用 程序和操作系統(tǒng)之間的輸入/輸出音頻數(shù)據(jù)流從本地物理聲卡和短距離 無線通信模塊的無線音頻傳輸信道這兩者之一進(jìn)行輸入/輸出。
3. 根據(jù)權(quán)利要求l或2所述的方法,其特征在于 該音頻切換管理模塊中包括本地物理聲卡的過濾驅(qū)動(dòng),該過濾驅(qū)動(dòng)被安排在音頻應(yīng)用程序和本地物理聲卡之間,用于截獲音頻應(yīng)用程 序輸出給本地物理聲卡的音頻數(shù)據(jù)流,并將該音頻數(shù)據(jù)流在本地物理 聲卡和短距離無線通信模塊的無線音頻傳輸信道這兩者之一進(jìn)行輸 出,以及該過濾驅(qū)動(dòng)用于從本地物理聲卡和短距離無線通信模塊的無 線音頻傳輸信道這兩者之一獲取音頻數(shù)據(jù)流,并將該音頻數(shù)據(jù)流輸入 給音頻應(yīng)用程序。
4. 根據(jù)權(quán)利要求l或2所述的方法,其特征在于 該音頻切換管理模塊中包括虛擬聲卡,用于獲取音頻應(yīng)用程序輸出到操作系統(tǒng)的音頻數(shù)據(jù)流,以及無線音頻設(shè)備輸入給無線音頻傳輸信道的音頻數(shù)據(jù)流和有線音頻設(shè)備輸入給本地物理聲卡的音頻數(shù)據(jù)流。
5. 根據(jù)權(quán)利要求4所述的方法,其特征在于 該操作系統(tǒng)具有多于一個(gè)短距離無線通信模塊,且該多個(gè)短距離無線通信模塊共用一個(gè)虛擬聲卡;該多個(gè)短距離無線通信模塊的全部無線音頻傳輸信道處于斷開狀 態(tài)時(shí),該音頻切換管理模塊將虛擬聲卡所獲取音頻應(yīng)用程序輸出的音 頻數(shù)據(jù)流通過本地物理聲卡輸出給有線音頻設(shè)備,停止將該音頻數(shù)據(jù) 流通過該多個(gè)短距離無線通信模塊的無線音頻傳輸信道傳輸給無線音 頻設(shè)備,同時(shí)該音頻切換管理模塊控制虛擬聲卡從本地物理聲卡獲取 有線音頻設(shè)備輸入的音頻數(shù)據(jù)流并輸入給音頻應(yīng)用程序,停止從該多 個(gè)短距離無線通信模塊的無線音頻傳輸信道傳輸獲取無線音頻設(shè)備輸入的音頻數(shù)據(jù)流;以及該多個(gè)短距離無線通信模塊的至少一條無線音頻傳輸信道處于連 接狀態(tài)時(shí),該音頻切換管理模塊將虛擬聲卡所獲取音頻應(yīng)用程序輸出 的音頻數(shù)據(jù)流輸出給該處于連接狀態(tài)的至少一條無線音頻傳輸信道, 停止將該音頻數(shù)據(jù)流通過本地物理聲卡輸出給有線音頻設(shè)備,同時(shí)該 音頻切換管理模塊控制虛擬聲卡從該處于連接狀態(tài)的至少一條無線音 頻傳輸信道獲取無線音頻設(shè)備輸入的音頻數(shù)據(jù)流并輸入給音頻應(yīng)用程 序,停止從本地物理聲卡獲取有線音頻設(shè)備輸入的音頻數(shù)據(jù)流。
6. 根據(jù)權(quán)利要求4所述的方法,其特征在于該音頻切換管理模塊具有多于一個(gè)的虛擬聲卡,并且該多個(gè)虛擬 聲卡和本地物理聲卡中僅有一個(gè)被設(shè)置為操作系統(tǒng)中輸入音頻數(shù)據(jù)流 的缺省輸入聲卡,該多個(gè)虛擬聲卡和本地物理聲卡中僅有一個(gè)被設(shè)置 為操作系統(tǒng)中輸出音頻數(shù)據(jù)流的缺省輸出聲卡,當(dāng)缺省設(shè)置音頻應(yīng)用 程序輸入音頻數(shù)據(jù)流的輸入聲卡和輸出音頻數(shù)據(jù)流的輸出聲卡時(shí),該 輸入缺省聲卡獲取輸入給該音頻應(yīng)用程序的音頻數(shù)據(jù)流,該輸出缺省聲卡獲取該音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流;以及通過指定除缺省輸入/輸出聲卡外的其它聲卡作為音頻應(yīng)用程序的 輸入/輸出聲卡,使得該指定的輸入/輸出聲卡獲取該音頻應(yīng)用程序的輸 入/輸出音頻數(shù)據(jù)流。
7. 根據(jù)權(quán)利要求6所述的方法,其特征在于該音頻切換管理模塊具備兩個(gè)虛擬聲卡,第一虛擬聲卡和第二虛 擬聲卡,第一虛擬聲卡被指定為第一音頻應(yīng)用程序的輸入聲卡和輸出 聲卡,且第一虛擬聲卡對(duì)應(yīng)于短距離無線通信模塊的第一無線音頻傳 輸信道,同時(shí)第二虛擬聲卡被指定為第二音頻應(yīng)用程序的輸入聲卡和 輸出聲卡,且第二虛擬聲卡對(duì)應(yīng)于短距離無線通信模塊的第二無線音頻傳輸信道;第一無線音頻傳輸信道處于連接狀態(tài)時(shí),該音頻切換管理模塊將 第一虛擬聲卡所獲取的第一音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流輸出給第 一無線音頻傳輸信道,同時(shí)控制第一虛擬聲卡從第一無線音頻傳輸信 道獲取無線音頻設(shè)備輸入的音頻數(shù)據(jù)流并輸入到第一音頻應(yīng)用程序, 以及第一無線音頻傳輸信道處于斷開狀態(tài)時(shí),該音頻切換管理模塊將第一虛擬聲卡所獲取的第一音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流輸出給本 地物理聲卡,同時(shí)控制第一虛擬聲卡從本地物理聲卡獲取有線音頻設(shè) 備輸入的音頻數(shù)據(jù)流并輸入到第一音頻應(yīng)用程序;第二無線音頻傳輸信道處于連接狀態(tài)時(shí),該音頻切換管理模塊將 第二虛擬聲卡所獲取的第二音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流輸出給第 二無線音頻傳輸信道,同時(shí)控制第二虛擬聲卡從第二無線音頻傳輸信 道獲取無線音頻設(shè)備輸入的音頻數(shù)據(jù)流并輸入到第二音頻應(yīng)用程序, 以及第二無線音頻傳輸信道處于斷開狀態(tài)時(shí),該音頻切換管理模塊將 第二虛擬聲卡所獲取的第二音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流輸出給本 地物理聲卡,同時(shí)控制第二虛擬聲卡從本地物理聲卡獲取有線音頻設(shè) 備輸入的音頻數(shù)據(jù)流并輸入到第二音頻應(yīng)用程序。
8. 根據(jù)權(quán)利要求7所述的方法,其特征在于 當(dāng)?shù)谝粺o線音頻傳輸信道和第二無線音頻傳輸信道同時(shí)處于斷開狀態(tài)時(shí),音頻切換管理模塊可以將第一音頻應(yīng)用程序和第二音頻應(yīng)用程序的輸入/輸出的音頻數(shù)據(jù)流切換到從本地物理聲卡進(jìn)行輸入/輸出;音頻切換管理模塊也可以根據(jù)優(yōu)選策略,自動(dòng)將第一音頻應(yīng)用程 序和第二音頻應(yīng)用程序這兩者之一輸入/輸出的音頻數(shù)據(jù)流切換到從本 地物理聲卡進(jìn)行輸入/輸出。
9. 根據(jù)權(quán)利要求7所述的方法,其特征在于第一無線音頻傳輸信道為藍(lán)牙高質(zhì)量音頻應(yīng)用(A2DPProfile)的 藍(lán)牙ACL傳輸信道;以及第二無線音頻傳輸信道為藍(lán)牙語音音頻相關(guān)應(yīng)用,包括藍(lán)牙耳機(jī)應(yīng) 用Headset Profile,藍(lán)牙免提應(yīng)用Hands Free Profile,藍(lán)牙無繩電話應(yīng) 用Cordless Telephone Profile,的藍(lán)牙SCO / eSCO傳輸信道。
10. 根據(jù)權(quán)利要求l所述的方法,其特征在于該短距離無線通信模塊包括藍(lán)牙模塊、Wi-Fi模塊和UWB模塊。
11. 一種用于在操作系統(tǒng)中的音頻數(shù)據(jù)流輸入/輸出進(jìn)行無間斷軟件切換的設(shè)備,包括操作系統(tǒng); 音頻應(yīng)用程序;操作系統(tǒng)中的至少一個(gè)本地物理聲卡,音頻應(yīng)用程序輸入/輸出的音頻數(shù)據(jù)流可以通過本地物理聲卡從有線音頻設(shè)備進(jìn)行輸入/輸出;操作系統(tǒng)中的至少一個(gè)短距離無線通信模塊,音頻應(yīng)用程序輸入/輸出的音頻數(shù)據(jù)流可以通過該短距離無線通信模塊的無線音頻傳輸信道從無線音頻設(shè)備進(jìn)行輸入/輸出 , 其特征在于進(jìn)一步包括操作系統(tǒng)中的音頻切換管理模塊,用于獲取音頻應(yīng)用程序輸出到 操作系統(tǒng)的音頻數(shù)據(jù)流,并控制選擇該輸出音頻數(shù)據(jù)流從本地物理聲 卡和短距離無線通信模塊的無線音頻傳輸信道這兩者之一進(jìn)行輸出, 以及該音頻切換管理模塊用于控制選擇從本地物理聲卡和短距離無線 通信模塊的無線音頻傳輸信道這兩者之一獲取輸入音頻數(shù)據(jù)流,并將 所獲取的輸入音頻數(shù)據(jù)流通過操作系統(tǒng)輸入給音頻應(yīng)用程序;該短距離無線通信模塊建立一條無線音頻傳輸信道連接時(shí),音頻切 換管理模塊自動(dòng)將所獲取的音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流輸出切換 給該無線音頻傳輸信道,并停止將該音頻數(shù)據(jù)流輸出給本地物理聲卡, 同時(shí)音頻切換管理模塊選擇從該無線音頻傳輸信道獲取無線音頻設(shè)備 輸入的音頻數(shù)據(jù)流并輸入給音頻應(yīng)用程序,停止從本地物理聲卡獲取 有線音頻設(shè)備輸入的音頻數(shù)據(jù)流;以及該短距離無線通信模塊斷開該無線音頻傳輸信道連接時(shí),音頻切換 管理模塊自動(dòng)將音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流輸出切換給本地物理 聲卡,并停止將該音頻數(shù)據(jù)流輸出給該無線音頻傳輸信道,同時(shí)音頻 切換管理模塊選擇從本地物理聲卡獲取有線音頻設(shè)備輸入的音頻數(shù)據(jù) 流并輸入給音頻應(yīng)用程序,停止從該無線音頻傳輸信道獲取無線音頻 設(shè)備輸入的音頻數(shù)據(jù)流-,在上述短距離無線通信模塊連接/斷開無線音頻傳輸信道連接,而 導(dǎo)致音頻應(yīng)用程序輸入/輸出的音頻數(shù)據(jù)流在本地物理聲卡和短距離無 線通信模塊的無線音頻傳輸信道之間進(jìn)行輸入/輸出的切換過程中,音 頻應(yīng)用程序無需停止音頻數(shù)據(jù)流的輸入/輸出,也無需重新指定和操作 系統(tǒng)之間的音頻數(shù)據(jù)流輸入/輸出設(shè)備。
12.根據(jù)權(quán)利要求ll所述的設(shè)備,其特征在于該短距離無線通信模塊記錄一個(gè)連接狀態(tài)標(biāo)志,用于標(biāo)識(shí)該短距 離無線通信模塊的該無線音頻傳輸信道處于連接和斷開這兩種狀態(tài)之一;以及該音頻切換管理模塊根據(jù)該連接狀態(tài)標(biāo)志,來控制選擇音頻應(yīng)用 程序和操作系統(tǒng)之間的輸入/輸出音頻數(shù)據(jù)流從本地物理聲卡和短距離 無線通信模塊的無線音頻傳輸信道這兩者之一進(jìn)行輸入/輸出。
13. 根據(jù)權(quán)利要求11或12所述的設(shè)備,其特征在于 該音頻切換管理模塊中包括本地物理聲卡的過濾驅(qū)動(dòng),該過濾驅(qū)動(dòng)被安排在音頻應(yīng)用程序和本地物理聲卡之間,用于截獲音頻應(yīng)用程 序輸出給本地物理聲卡的音頻數(shù)據(jù)流,并將該音頻數(shù)據(jù)流在本地物理 聲卡和短距離無線通信模塊的無線音頻傳輸信道這兩者之一進(jìn)行輸 出,以及該過濾驅(qū)動(dòng)用于從本地物理聲卡和短距離無線通信模塊的無 線音頻傳輸信道這兩者之一獲取音頻數(shù)據(jù)流,并將該音頻數(shù)據(jù)流輸入 給音頻應(yīng)用程序。
14. 根據(jù)權(quán)利要求11或12所述的設(shè)備,其特征在于 該音頻切換管理模塊中包括虛擬聲卡,用于獲取音頻應(yīng)用程序輸出到操作系統(tǒng)的音頻數(shù)據(jù)流,以及無線音頻設(shè)備輸入給無線音頻傳輸信道的音頻數(shù)據(jù)流和有線音頻設(shè)備輸入給本地物理聲卡的音頻數(shù)據(jù)流。
15. 根據(jù)權(quán)利要求14所述的設(shè)備,其特征在于 該操作系統(tǒng)具有多于一個(gè)短距離無線通信模塊,且該多個(gè)短距離無線通信模塊共用一個(gè)虛擬聲卡;該多個(gè)短距離無線通信模塊的全部無線音頻傳輸信道處于斷開狀 態(tài)時(shí),該音頻切換管理模塊將虛擬聲卡所獲取音頻應(yīng)用程序輸出的音 頻數(shù)據(jù)流通過本地物理聲卡輸出給有線音頻設(shè)備,停止將該音頻數(shù)據(jù) 流通過該多個(gè)短距離無線通信模塊的無線音頻傳輸信道傳輸給無線音 頻設(shè)備,同時(shí)該音頻切換管理模塊控制虛擬聲卡從本地物理聲卡獲取 有線音頻設(shè)備輸入的音頻數(shù)據(jù)流并輸入給音頻應(yīng)用程序,停止從該多 個(gè)短距離無線通信模塊的無線音頻傳輸信道傳輸獲取無線音頻設(shè)備輸 入的音頻數(shù)據(jù)流;以及該多個(gè)短距離無線通信模塊的至少一條無線音頻傳輸信道處于連 接狀態(tài)時(shí),該音頻切換管理模塊將虛擬聲卡所獲取音頻應(yīng)用程序輸出 的音頻數(shù)據(jù)流輸出給該處于連接狀態(tài)的至少一條無線音頻傳輸信道,停止將該音頻數(shù)據(jù)流通過本地物理聲卡輸出給有線音頻設(shè)備,同時(shí)該 音頻切換管理模塊控制虛擬聲卡從該處于連接狀態(tài)的至少一條無線音 頻傳輸信道獲取無線音頻設(shè)備輸入的音頻數(shù)據(jù)流并輸入給音頻應(yīng)用程 序,停止從本地物理聲卡獲取有線音頻設(shè)備輸入的音頻數(shù)據(jù)流。
16. 根據(jù)權(quán)利要求14所述的設(shè)備,其特征在于該音頻切換管理模塊具有多于一個(gè)的虛擬聲卡,并且該多個(gè)虛擬 聲卡和本地物理聲卡中僅有一個(gè)被設(shè)置為操作系統(tǒng)中輸入音頻數(shù)據(jù)流 的缺省輸入聲卡,該多個(gè)虛擬聲卡和本地物理聲卡中僅有一個(gè)被設(shè)置 為操作系統(tǒng)中輸出音頻數(shù)據(jù)流的缺省輸出聲卡,當(dāng)缺省設(shè)置音頻應(yīng)用 程序輸入音頻數(shù)據(jù)流的輸入聲卡和輸出音頻數(shù)據(jù)流的輸出聲卡時(shí),該 輸入缺省聲卡獲取輸入給該音頻應(yīng)用程序的音頻數(shù)據(jù)流,該輸出缺省 聲卡獲取該音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流;以及通過指定除缺省輸入/輸出聲卡外的其它聲卡作為音頻應(yīng)用程序的 輸入/輸出聲卡,使得該指定的輸入/輸出聲卡獲取該音頻應(yīng)用程序的輸 入/輸出音頻數(shù)據(jù)流。
17. 根據(jù)權(quán)利要求16所述的設(shè)備,其特征在于該音頻切換管理模塊具備兩個(gè)虛擬聲卡,第一虛擬聲卡和第二虛 擬聲卡,第一虛擬聲卡被指定為第一音頻應(yīng)用程序的輸入聲卡和輸出 聲卡,且第一虛擬聲卡對(duì)應(yīng)于短距離無線通信模塊的第一無線音頻傳 輸信道,同時(shí)第二虛擬聲卡被指定為第二音頻應(yīng)用程序的輸入聲卡和 輸出聲卡,且第二虛擬聲卡對(duì)應(yīng)于短距離無線通信模塊的第二無線音頻傳輸信道;第一無線音頻傳輸信道處于連接狀態(tài)時(shí),該音頻切換管理模塊將 第一虛擬聲卡所獲取的第一音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流輸出給第 一無線音頻傳輸信道,同時(shí)控制第一虛擬聲卡從第一無線音頻傳輸信 道獲取無線音頻設(shè)備輸入的音頻數(shù)據(jù)流并輸入到第一音頻應(yīng)用程序, 以及第一無線音頻傳輸信道處于斷開狀態(tài)時(shí),該音頻切換管理模塊將 第一虛擬聲卡所獲取的第一音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流輸出給本 地物理聲卡,同時(shí)控制第一虛擬聲卡從本地物理聲卡獲取有線音頻設(shè) 備輸入的音頻數(shù)據(jù)流并輸入到第一音頻應(yīng)用程序;第二無線音頻傳輸信道處于連接狀態(tài)時(shí),該音頻切換管理模塊將第二虛擬聲卡所獲取的第二音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流輸出給第 二無線音頻傳輸信道,同時(shí)控制第二虛擬聲卡從第二無線音頻傳輸信 道獲取無線音頻設(shè)備輸入的音頻數(shù)據(jù)流并輸入到第二音頻應(yīng)用程序, 以及第二無線音頻傳輸信道處于斷開狀態(tài)時(shí),該音頻切換管理模塊將 第二虛擬聲卡所獲取的第二音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流輸出給本 地物理聲卡,同時(shí)控制第二虛擬聲卡從本地物理聲卡獲取有線音頻設(shè) 備輸入的音頻數(shù)據(jù)流并輸入到第二音頻應(yīng)用程序。
18. 根據(jù)權(quán)利要求17所述的設(shè)備,其特征在于當(dāng)?shù)谝粺o線音頻傳輸信道和第二無線音頻傳輸信道同時(shí)處于斷開 狀態(tài)時(shí),音頻切換管理模塊可以將第一音頻應(yīng)用程序和第二音頻應(yīng)用 程序的輸入/輸出的音頻數(shù)據(jù)流切換到從本地物理聲卡進(jìn)行輸入/輸出;音頻切換管理模塊也可以根據(jù)優(yōu)選策略,自動(dòng)將第一音頻應(yīng)用程 序和第二音頻應(yīng)用程序這兩者之一輸入/輸出的音頻數(shù)據(jù)流切換到從本 地物理聲卡進(jìn)行輸入/輸出。
19. 根據(jù)權(quán)利要求17所述的設(shè)備,其特征在于 第一無線音頻傳輸信道為藍(lán)牙高質(zhì)量音頻應(yīng)用(A2DPProfile)的藍(lán)牙ACL傳輸信道;以及第二無線音頻傳輸信道為藍(lán)牙語音音頻相關(guān)應(yīng)用,包括藍(lán)牙耳機(jī) 應(yīng)用Headset Profile,藍(lán)牙免提應(yīng)用Hands Free Profile,藍(lán)牙無繩電話 應(yīng)用Cordless Telephone Profile,的藍(lán)牙SCO / eSCO傳輸信道。
20. 根據(jù)權(quán)利要求ll所述的設(shè)備,其特征在于該短距離無線通信模塊包括藍(lán)牙模塊、Wi-Fi模塊和UWB模塊。
21. —種用于在操作系統(tǒng)中的音頻數(shù)據(jù)流輸入/輸出進(jìn)行無間斷軟 件切換的系統(tǒng),包括音頻數(shù)據(jù)流輸入/輸出無間斷軟件切換設(shè)備,該包括操作系統(tǒng)和音 頻應(yīng)用程序,其中在操作系統(tǒng)中具備至少一個(gè)本地物理聲卡和短距離 無線通信模塊,音頻應(yīng)用程序輸入/輸出的音頻數(shù)據(jù)流可以通過本地物 理聲卡從有線音頻設(shè)備進(jìn)行輸入/輸出,也可以通過該短距離無線通信 模塊的無線音頻傳輸信道從無線音頻設(shè)備進(jìn)行輸入/輸出,同時(shí)在操作 系統(tǒng)中添加一個(gè)音頻切換管理模塊,用于獲取音頻應(yīng)用程序輸出到操 作系統(tǒng)的音頻數(shù)據(jù)流,并控制選擇該輸出音頻數(shù)據(jù)流從本地物理聲卡和短距離無線通信模塊的無線音頻傳輸信道這兩者之一進(jìn)行輸出,以 及該音頻切換管理模塊用于控制選擇從本地物理聲卡和短距離無線通 信模塊的無線音頻傳輸信道這兩者之一獲取輸入音頻數(shù)據(jù)流,并將所 獲取的輸入音頻數(shù)據(jù)流通過操作系統(tǒng)輸入給音頻應(yīng)用程序;有線音頻設(shè)備;以及無線音頻設(shè)備;當(dāng)音頻數(shù)據(jù)流輸入/輸出無間斷軟件切換設(shè)備的該短距離無線通信 模塊建立一條無線音頻傳輸信道連接時(shí),音頻切換管理模塊自動(dòng)將所 獲取的音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流輸出切換給該無線音頻傳輸信 道,并停止將該音頻數(shù)據(jù)流輸出給本地物理聲卡,同時(shí)音頻切換管理 模塊選擇從該無線音頻傳輸信道獲取無線音頻設(shè)備輸入的音頻數(shù)據(jù)流 并輸入給音頻應(yīng)用程序,停止從本地物理聲卡獲取有線音頻設(shè)備輸入 的音頻數(shù)據(jù)流;當(dāng)音頻數(shù)據(jù)流輸入/輸出無間斷軟件切換設(shè)備的該短距離無線通信 模塊斷開該無線音頻傳輸信道連接時(shí),音頻切換管理模塊自動(dòng)將音頻 應(yīng)用程序輸出的音頻數(shù)據(jù)流輸出切換給本地物理聲卡,并停止將該音 頻數(shù)據(jù)流輸出給該無線音頻傳輸信道,同時(shí)音頻切換管理模塊選擇從 本地物理聲卡獲取有線音頻設(shè)備輸入的音頻數(shù)據(jù)流并輸入給音頻應(yīng)用 程序,停止從該無線音頻傳輸信道獲取無線音頻設(shè)備輸入的音頻數(shù)據(jù) 流;在上述短距離無線通信模塊連接或斷開無線音頻傳輸信道連接, 而導(dǎo)致音頻應(yīng)用程序輸入/輸出的音頻數(shù)據(jù)流在本地物理聲卡和短距離 無線通信模塊的無線音頻傳輸信道之間進(jìn)行輸入/輸出的切換過程中, 音頻應(yīng)用程序無需停止音頻數(shù)據(jù)流的輸入/輸出,也無需重新指定和操 作系統(tǒng)之間的音頻數(shù)據(jù)流輸入/輸出設(shè)備。
22.根據(jù)權(quán)利要求21所述的系統(tǒng),其特征在于該短距離無線通信模塊記錄一個(gè)連接狀態(tài)標(biāo)志,用于標(biāo)識(shí)該短距 離無線通信模塊的該無線音頻傳輸信道處于連接和斷開這兩種狀態(tài)之 一;以及該音頻切換管理模塊根據(jù)該連接狀態(tài)標(biāo)志,來控制選擇音頻應(yīng)用 程序和操作系統(tǒng)之間的輸入/輸出音頻數(shù)據(jù)流從本地物理聲卡和短距離無線通信模塊的無線音頻傳輸信道這兩者之一進(jìn)行輸入/輸出。
23. 根據(jù)權(quán)利要求21或22所述的系統(tǒng),其特征在于該音頻切換管理模塊中包括本地物理聲卡的過濾驅(qū)動(dòng),該過濾驅(qū) 動(dòng)被安排在音頻應(yīng)用程序和本地物理聲卡之間,用于截獲音頻應(yīng)用程 序輸出給本地物理聲卡的音頻數(shù)據(jù)流,并將該音頻數(shù)據(jù)流在本地物理 聲卡和短距離無線通信模塊的無線音頻傳輸信道這兩者之一進(jìn)行輸 出,以及該過濾驅(qū)動(dòng)用于從本地物理聲卡和短距離無線通信模塊的無 線音頻傳輸信道這兩者之一獲取音頻數(shù)據(jù)流,并將該音頻數(shù)據(jù)流輸入 給音頻應(yīng)用程序。
24. 根據(jù)權(quán)利要求21或22所述的系統(tǒng),其特征在于 該音頻切換管理模塊中包括虛擬聲卡,用于獲取音頻應(yīng)用程序輸出到操作系統(tǒng)的音頻數(shù)據(jù)流,以及無線音頻設(shè)備輸入給無線音頻傳輸 信道的音頻數(shù)據(jù)流和有線音頻設(shè)備輸入給本地物理聲卡的音頻數(shù)據(jù)流。
25. 根據(jù)權(quán)利要求24所述的系統(tǒng),其特征在于 該操作系統(tǒng)具有多于一個(gè)短距離無線通信模塊,且該多個(gè)短距離無線通信模塊共用一個(gè)虛擬聲卡;該多個(gè)短距離無線通信模塊的全部無線音頻傳輸信道處于斷開狀 態(tài)時(shí),該音頻切換管理模塊將虛擬聲卡所獲取音頻應(yīng)用程序輸出的音 頻數(shù)據(jù)流通過本地物理聲卡輸出給有線音頻設(shè)備,同時(shí)該音頻切換管 理模塊控制虛擬聲卡從本地物理聲卡獲取有線音頻設(shè)備輸入的音頻數(shù) 據(jù)流并輸入給音頻應(yīng)用程序;以及該多個(gè)短距離無線通信模塊的至少一條無線音頻傳輸信道處于連 接狀態(tài)時(shí),該音頻切換管理模塊將虛擬聲卡所獲取音頻應(yīng)用程序輸出 的音頻數(shù)據(jù)流輸出給該處于連接狀態(tài)的至少一條無線音頻傳輸信道, 同時(shí)該音頻切換管理模塊控制虛擬聲卡從該處于連接狀態(tài)的至少一條 無線音頻傳輸信道獲取無線音頻設(shè)備輸入的音頻數(shù)據(jù)流并輸入給音頻 應(yīng)用程序。
26. 根據(jù)權(quán)利要求24所述的系統(tǒng),其特征在于 該音頻切換管理模塊具有多于一個(gè)的虛擬聲卡,并且該多個(gè)虛擬聲卡中僅有一個(gè)被設(shè)置為操作系統(tǒng)中輸入音頻數(shù)據(jù)流的缺省輸入聲卡,該多個(gè)虛擬聲卡中僅有一個(gè)被設(shè)置為操作系統(tǒng)中輸出音頻數(shù)據(jù)流 的缺省輸出聲卡,當(dāng)缺省設(shè)置音頻應(yīng)用程序輸入音頻數(shù)據(jù)流的輸入聲 卡和輸出音頻數(shù)據(jù)流的輸出設(shè)備時(shí),該輸入缺省聲卡獲取輸入給該音 頻應(yīng)用程序的音頻數(shù)據(jù)流,該輸出缺省聲卡獲取該音頻應(yīng)用程序輸出 的音頻數(shù)據(jù)流;以及通過指定除缺省聲卡外的其它虛擬聲卡作為音頻應(yīng)用程序的輸入/ 輸出聲卡,使得該指定的輸入/輸出聲卡獲取該音頻應(yīng)用程序的輸入/ 輸出音頻數(shù)據(jù)流。
27.根據(jù)權(quán)利要求26所述的系統(tǒng),其特征在于該音頻切換管理模塊具備兩個(gè)虛擬聲卡,第一虛擬聲卡和第二虛 擬聲卡,第一虛擬聲卡被指定為第一音頻應(yīng)用程序的輸入聲卡和輸出 聲卡,且第一虛擬聲卡對(duì)應(yīng)于短距離無線通信模塊的第一無線音頻傳 輸信道,同時(shí)第二虛擬聲卡被指定為第二音頻應(yīng)用程序的輸入聲卡和 輸出聲卡,且第二虛擬聲卡對(duì)應(yīng)于短距離無線通信模塊的第二無線音頻傳輸信道;第一無線音頻傳輸信道處于連接狀態(tài)時(shí),該音頻切換管理模塊將 第一虛擬聲卡所獲取的第一音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流輸出給第 一無線音頻傳輸信道,同時(shí)控制第一虛擬聲卡從第一無線音頻傳輸信 道獲取無線音頻設(shè)備輸入的音頻數(shù)據(jù)流并輸入到第一音頻應(yīng)用程序, 以及第一無線音頻傳輸信道處于斷開狀態(tài)時(shí),該音頻切換管理模塊將 第一虛擬聲卡所獲取的第一音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流輸出給本 地物理聲卡,同時(shí)控制第一虛擬聲卡從本地物理聲卡獲取有線音頻設(shè)備輸入的音頻數(shù)據(jù)流并輸入到第一音頻應(yīng)用程序;第二無線音頻傳輸信道處于連接狀態(tài)時(shí),該音頻切換管理模塊將 第二虛擬聲卡所獲取的第二音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流輸出給第 二無線音頻傳輸信道,同時(shí)控制第二虛擬聲卡從第二無線音頻傳輸信 道獲取無線音頻設(shè)備輸入的音頻數(shù)據(jù)流并輸入到第二音頻應(yīng)用程序, 以及第二無線音頻傳輸信道處于斷開狀態(tài)時(shí),該音頻切換管理模塊將 第二虛擬聲卡所獲取的第二音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流輸出給本 地物理聲卡,同時(shí)控制第二虛擬聲卡從本地物理聲卡獲取有線音頻設(shè) 備輸入的音頻數(shù)據(jù)流并輸入到第二音頻應(yīng)用程序。
28. 根據(jù)權(quán)利要求27所述的系統(tǒng),其特征在于 當(dāng)?shù)谝粺o線音頻傳輸信道和第二無線音頻傳輸信道同時(shí)處于斷開狀態(tài)時(shí),音頻切換管理模塊可以將第一音頻應(yīng)用程序和第二音頻應(yīng)用程序的輸入/輸出的音頻數(shù)據(jù)流切換到從本地物理聲卡進(jìn)行輸入/輸出;音頻切換管理模塊也可以根據(jù)優(yōu)選策略,自動(dòng)將第一音頻應(yīng)用程 序和第二音頻應(yīng)用程序這兩者之一輸入/輸出的音頻數(shù)據(jù)流切換到從本 地物理聲卡進(jìn)行輸入/輸出。
29. 根據(jù)權(quán)利要求27所述的系統(tǒng),其特征在于 第一無線音頻傳輸信道為藍(lán)牙高質(zhì)量音頻應(yīng)用(A2DPProfile)的藍(lán)牙ACL傳輸信道;以及第二無線音頻傳輸信道為藍(lán)牙語音音頻相關(guān)應(yīng)用,包括藍(lán)牙耳機(jī)應(yīng) 用Headset Profile,藍(lán)牙免提應(yīng)用Hands Free Profile,藍(lán)牙無繩電話應(yīng) 用Cordless Telephone Profile ,的藍(lán)牙SCO / eSCO傳輸信道。
30. 根據(jù)權(quán)利要求21所述的系統(tǒng),其特征在于 該短距離無線通信模塊包括藍(lán)牙模塊、Wi-Fi模塊和UWB模塊。
全文摘要
本發(fā)明公開了用于操作系統(tǒng)中音頻數(shù)據(jù)流輸入/輸出無間斷軟件切換的方法和系統(tǒng),其中操作系統(tǒng)具備本地物理聲卡和短距離無線通信模塊,以及音頻切換管理模塊。短距離無線通信模塊建立無線音頻傳輸信道時(shí),音頻切換管理模塊自動(dòng)將音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流通過無線音頻傳輸信道輸出給無線音頻設(shè)備,并將無線音頻設(shè)備輸入的音頻數(shù)據(jù)流通過無線音頻傳輸信道輸入給音頻應(yīng)用程序;短距離無線通信模塊斷開無線音頻傳輸信道時(shí),音頻切換管理模塊自動(dòng)將音頻應(yīng)用程序輸出的音頻數(shù)據(jù)流通過本地物理聲卡輸出給有線音頻設(shè)備,并將有線音頻設(shè)備輸入的音頻數(shù)據(jù)流通過本地物理聲卡輸入給音頻應(yīng)用程序。
文檔編號(hào)G06F3/16GK101246417SQ20071006385
公開日2008年8月20日 申請(qǐng)日期2007年2月13日 優(yōu)先權(quán)日2007年2月13日
發(fā)明者堯 王, 魯冬梅 申請(qǐng)人:艾威梯軟件技術(shù)(北京)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1