專利名稱:通過(guò)捕獲服務(wù)訪問(wèn)音頻輸出的制作方法
技術(shù)領(lǐng)域:
本發(fā)明一般涉及流音頻處理,尤其涉及操作系統(tǒng)的流音頻記錄和再現(xiàn)組件。
背景技術(shù):
諸如個(gè)人計(jì)算機(jī)(PC)之類的計(jì)算系統(tǒng)越來(lái)越多地被用于對(duì)流音頻進(jìn)行記錄和回放。此類應(yīng)用之一是網(wǎng)絡(luò)電話,其中各PC的用戶能夠通過(guò)分組交換網(wǎng)絡(luò)而互相通話,這非常類似于電話用戶通過(guò)電路交換網(wǎng)絡(luò)而與另一個(gè)電話用戶通話。此類網(wǎng)絡(luò)電話應(yīng)用之一是實(shí)時(shí)通信應(yīng)用程序(RTC),如即時(shí)消息。當(dāng)RTC執(zhí)行時(shí),各用戶對(duì)PC上的話筒講話,并通過(guò)本地的揚(yáng)聲器聽到遠(yuǎn)方的話音。
在RTC中可能產(chǎn)生的困難是在各PC上輸出的聲音可能包括令人討厭的回聲。例如,當(dāng)由PC接收的遠(yuǎn)地話音經(jīng)揚(yáng)聲器放出后輸入到本地的話筒中,就能聽到回聲。這就導(dǎo)致了在本地?fù)P聲器上第二次輸出遠(yuǎn)地話音,即作為回聲被聽到。
在RTC中可能產(chǎn)生的另一個(gè)困難是由一個(gè)PC產(chǎn)生的聲音,如峰鳴、卡搭聲、由正被執(zhí)行的應(yīng)用程序所產(chǎn)生的其它可聽見的指示聲,被輸入到本地話筒中。這些僅對(duì)于本地用戶重要的聲音隨后會(huì)經(jīng)網(wǎng)絡(luò)而傳送到遠(yuǎn)地方,然后由遠(yuǎn)地?fù)P聲器輸出后被遠(yuǎn)地方聽見。
可以通過(guò)在要從PC輸出的全部音頻流的混音(如總輸出)上執(zhí)行的聲回聲消除處理(AEC)來(lái)解決上述兩個(gè)困難。AEC是能夠使用信號(hào)處理技術(shù)對(duì)音頻流處理的多種處理技術(shù)之一。某些信號(hào)處理技術(shù)可由組成PC的操作系統(tǒng)的某些部分的機(jī)構(gòu)來(lái)執(zhí)行。這些操作系統(tǒng)機(jī)構(gòu)中的一些能夠用于再現(xiàn)(或回放)音頻流以及捕獲(或記錄)音頻流。用于再現(xiàn)和捕獲的已知操作系統(tǒng)機(jī)構(gòu)是完全獨(dú)立的,并通常在完全獨(dú)立的系統(tǒng)中實(shí)施。而且,由于拙劣的體系結(jié)構(gòu),諸如用于AEC之類的信號(hào)處理的已知操作系統(tǒng)機(jī)構(gòu)難于被使用和理解。
由于上述原因,在本領(lǐng)域中提供一種簡(jiǎn)單而易懂的操作系統(tǒng)機(jī)構(gòu)來(lái)捕獲要從PC輸出的所有音頻流(如總輸出),這將是非常有利的。當(dāng)如此捕獲時(shí),PC上執(zhí)行的應(yīng)用程序就能夠在總輸出上進(jìn)行信號(hào)處理,以實(shí)現(xiàn)所希望的聲音效果。
發(fā)明內(nèi)容
操作系統(tǒng)內(nèi)的一種音頻系統(tǒng)服務(wù),它捕獲送往輸出設(shè)備的所有流音頻,并可用于處理。諸如應(yīng)用程序之類的本地客戶端能夠在所捕獲的流音頻上進(jìn)行處理。此外,由應(yīng)用程序輸出的送往再現(xiàn)設(shè)備的流音頻同樣能夠在與其它被送往輸出設(shè)備的流音頻混音之前被捕獲以進(jìn)行信號(hào)處理。
參考附圖來(lái)進(jìn)行詳細(xì)描述,附圖中使用相同的標(biāo)號(hào)來(lái)標(biāo)識(shí)相同的部件或特征。100系列的標(biāo)號(hào)用于標(biāo)識(shí)源于圖1的特征,200系列的標(biāo)號(hào)用于標(biāo)識(shí)源于圖2的特征,以及300系列的標(biāo)號(hào)用于標(biāo)識(shí)源于圖3的特征,依此類推。
圖1a示出了一種網(wǎng)絡(luò)電話環(huán)境,其中第一人和第二人各自使用個(gè)人計(jì)算機(jī)(PC)通過(guò)網(wǎng)絡(luò)與第二人進(jìn)行通話,各個(gè)人計(jì)算機(jī)執(zhí)行實(shí)時(shí)通信應(yīng)用程序(RTC)。
圖1b示出了圖1a所示的網(wǎng)絡(luò)電話環(huán)境的部分框圖,它例示了使用流音頻捕獲器(SAC)和流音頻再現(xiàn)器(SAR)來(lái)執(zhí)行聲回聲消除(AEC)的RTC。
圖2a示出了具有SAC和SAR的操作系統(tǒng)的PC,其中用戶通過(guò)PC話筒的輸入,向PC所執(zhí)行的媒體播放器應(yīng)用程序(MP)給出話音命令,并且用戶通過(guò)揚(yáng)聲器收聽源自MP的執(zhí)行所產(chǎn)生的聲音輸出。
圖2b示出了圖2a中所示的PC的部分框圖,它例示了來(lái)自PC的系統(tǒng)聲音和來(lái)自MP的媒體聲音,其中各自的流音頻被輸入到各自的SAR用于在全局引擎中進(jìn)行混音和處理,并且全局引擎的輸出被輸出給SAC用于錄音機(jī)進(jìn)行記錄。
圖3-圖5示出了RTC在具有在輸出設(shè)備上開放SAR而在輸入設(shè)備上開放SAC的操作系統(tǒng)的計(jì)算機(jī)中執(zhí)行的各個(gè)實(shí)施方式,其中SAR和SAC用于消除RTC的輸出而不是消除總輸出中的輸出。
圖6示出了說(shuō)明應(yīng)用程序要求在其輸出上打開SAC以消除輸出并隨后將結(jié)果傳回該應(yīng)用程序的過(guò)程的流程圖。
圖7示出了RTC在具有在輸出設(shè)備上打開SAR而在輸入設(shè)備上打開SAC的操作系統(tǒng)的計(jì)算機(jī)中執(zhí)行的一種實(shí)施方式,其中通過(guò)在輸出設(shè)備上打開SAC來(lái)從總輸出中消除聲回聲。
圖8示出了說(shuō)明應(yīng)用程序要求在輸出設(shè)備上打開SAC以捕獲其總輸出,并將捕獲的總輸出返回到應(yīng)用程序以作進(jìn)一步處理的過(guò)程的流程圖。
圖9例示了可完全或部分實(shí)現(xiàn)這里所述的計(jì)算機(jī)、網(wǎng)絡(luò)、軟件應(yīng)用程序、方法和系統(tǒng)的計(jì)算環(huán)境的例子。
具體實(shí)施例方式
本發(fā)明允許應(yīng)用程序獲得全系統(tǒng)的音頻流的總混音(總輸出)。使用操作系統(tǒng)的音頻服務(wù)的捕獲(或記錄)組件來(lái)獲得總輸出。操作系統(tǒng)還具有再現(xiàn)組件。捕獲或再現(xiàn)(或回放)組件都集成在操作系統(tǒng)中,而不是分立的獨(dú)立系統(tǒng)。
在某些實(shí)現(xiàn)方式中,應(yīng)用程序通過(guò)打開回放設(shè)備上的捕獲流來(lái)要求捕獲組件捕獲輸出設(shè)備的總輸出。為了這樣做,捕獲組件從輸出設(shè)備打開捕獲源,來(lái)獲得總輸出。應(yīng)用程序隨后對(duì)總輸出進(jìn)行進(jìn)一步處理。
在實(shí)時(shí)通信應(yīng)用程序(RTC)實(shí)現(xiàn)方式中,RTC要求再現(xiàn)組件在輸出設(shè)備上開放,并要求再現(xiàn)組件在輸入設(shè)備上開放。如此,RTC有效地使輸出設(shè)備開有再現(xiàn)接口而輸入設(shè)備開有捕獲接口。然后,RTC能夠要求捕獲組件在輸出設(shè)備上打開。當(dāng)輸出設(shè)備的總輸出返回給RTC時(shí),RTC能夠從輸出設(shè)備的總輸出中消除將引起聲回聲的音頻流。在其它實(shí)現(xiàn)方式中,應(yīng)用程序要求在應(yīng)用程序的再現(xiàn)組件(本地輸出)上打開捕獲組件。來(lái)自再現(xiàn)組件的被捕獲的輸出能被傳回應(yīng)用程序,以進(jìn)行后續(xù)的信號(hào)處理。
圖1a描繪了一種個(gè)人計(jì)算機(jī)(PC)網(wǎng)絡(luò)電話環(huán)境100,其中第一人152和第二人172分別使用各自的PC 154、174,通過(guò)分組交換網(wǎng)絡(luò)170而進(jìn)行電話交談。各PC 154、174分別由操作系統(tǒng)156、176控制,并執(zhí)行RTC。各PC 154、174分別具有一個(gè)或多個(gè)話筒164、184,用于接收來(lái)自周圍環(huán)境166、186的輸入,這些來(lái)自周圍環(huán)境的輸入包括各人152、172的各自的話音。各PC 154、174分別具有一個(gè)或多個(gè)揚(yáng)聲器162、182,通過(guò)揚(yáng)聲器,本地人152、172能夠聽到遠(yuǎn)地人172、152講話的話音。除了聽到遠(yuǎn)地人的話音之外,各人152、172還能聽到由他們各自的PC 154、174所發(fā)出的聲音,如PC操作環(huán)境中典型的系統(tǒng)聲音(如峰鳴、卡搭聲、可聽見的指示聲和診斷聲等等)。
理想的是,RTC 160應(yīng)僅僅把講入話筒的話音通過(guò)網(wǎng)絡(luò)而傳播給其它人。RTC 160還應(yīng)該確保僅有所接收的話音能夠從接收PC的揚(yáng)聲器被聽見。如果沒(méi)有RTC對(duì)流音頻進(jìn)行適當(dāng)?shù)奶幚?,那么這些理想狀態(tài)將不會(huì)實(shí)現(xiàn)。例如,防止接收自第二PC 174的話音音頻流在揚(yáng)聲器162上不只一次地被輸出,這對(duì)于RTC 160來(lái)說(shuō)是重要的,否則,人152將會(huì)聽到人172的話音的回聲。RTC 160還應(yīng)確保通過(guò)網(wǎng)絡(luò)僅將人152的聲音,而不是PC 154的系統(tǒng)聲音,傳送到PC174。
為了實(shí)現(xiàn)上面的理想情況,可在具有流音頻捕獲器(SAC)158和流音頻再現(xiàn)器(SAR)158的操作系統(tǒng)156中執(zhí)行RTC 160的一種實(shí)現(xiàn)方式。在該實(shí)現(xiàn)方式中,第一系統(tǒng)154的RTC 160將接收自第二系統(tǒng)174的話音音頻流輸出到SAR158,SAR 158將話筒164的輸入提供給揚(yáng)聲器162以輸出。操作系統(tǒng)156將系統(tǒng)聲音音頻流輸出到SAR158,后者將其呈現(xiàn)給揚(yáng)聲器162以輸出并又輸入到話筒164。話筒164接收來(lái)自周圍環(huán)境166的包括系統(tǒng)聲音音頻流的周圍環(huán)境音頻流和接收自第二系統(tǒng)174的話音音頻流。RTC 160然后要求SAC 158捕獲包括由SAR 158再現(xiàn)的接收自第二系統(tǒng)174的話音音頻流的本地音頻流。RTC 160還要求SAC 158捕獲包括由SAR 158再現(xiàn)的系統(tǒng)聲音音頻流的總音頻流。
在上述條件下,RTC 160能夠執(zhí)行各種消除處理來(lái)實(shí)現(xiàn)RTC的理想狀態(tài)。通過(guò)使用由SAC 158捕獲的本地音頻流,RTC 160能夠消除話筒164的輸入,以及由SAR 158再現(xiàn)并由揚(yáng)聲器162輸出的接收自第二系統(tǒng)174的話音音頻流輸入。如此,就防止了接收自第二系統(tǒng)174的話音音頻流被SAR 158不只一次地再現(xiàn)來(lái)輸出到揚(yáng)聲器162。通過(guò)使用由SAC 158捕獲的總音頻流,RTC 160能夠從話筒164的輸入中消除操作系統(tǒng)156所輸出的系統(tǒng)音頻流,該系統(tǒng)音頻流由SAR 158再現(xiàn)并由揚(yáng)聲器162輸出。如此,防止RTC 160通過(guò)網(wǎng)絡(luò)170將系統(tǒng)聲音音頻流傳送到第二系統(tǒng)174。
圖1b示出了表現(xiàn)圖1a所示的網(wǎng)絡(luò)電話環(huán)境100的某些方面的特征的部分框圖。RTC 102連同聲回聲消除過(guò)程(AEC)112一起工作。為了執(zhí)行AEC 112,可使用各種音頻流,包括從捕獲設(shè)備記錄的輸入,以及再現(xiàn)設(shè)備輸出的本地處理的音頻流或再現(xiàn)設(shè)備輸出的總音頻輸出全系統(tǒng)混音(總輸出)。圖1b描繪了使用這些各種音頻流的環(huán)境。
在圖1b中,RTC 102運(yùn)行于由具有音頻服務(wù)組件的操作系統(tǒng)操作的計(jì)算系統(tǒng)中。音頻服務(wù)組件可由RTC 102訪問(wèn)來(lái)建立流音頻捕獲器(SAC)108、110以及SAR 104。SAR 104將來(lái)自RTC 102的輸出到全局引擎106的流音頻進(jìn)行再現(xiàn)。話筒(未示出)輸入音頻流,該音頻流由SAC 108捕獲并輸出到全局引擎106。全局引擎106將來(lái)自話筒和SAR 104的輸入進(jìn)行混音。準(zhǔn)備由輸出設(shè)備輸出混合音。該輸出是輸出設(shè)備的總輸出,由SAC 110捕獲。圖1b中描繪了一種數(shù)字回送,其中RTC 102反向接收來(lái)自話筒的經(jīng)SAC 108捕獲的流音頻,并反向接收經(jīng)SAC 110捕獲的總輸出。RTC 102隨后能夠在捕獲的總輸出上進(jìn)行AEC 112。由于AEC 112要從SAC 110中消除捕獲的總輸出,因此,RTC 102需要系統(tǒng)音頻圖用于SAC 110的數(shù)字回送的連接。AEC 112使用捕獲的總輸出來(lái)消除本地影響。
圖2a描繪了一種媒體播放器環(huán)境200,其中PC 254能夠在人252的有聲命令下播放媒體。為了這樣做,人252對(duì)周圍環(huán)境266講話。話筒264對(duì)來(lái)自周圍環(huán)境266的聲音進(jìn)行拾音。話筒264將來(lái)自周圍環(huán)境266的聲音輸入到PC254以進(jìn)行話音識(shí)別處理。媒體播放器應(yīng)用程序(MP)260運(yùn)行于PC 254之上并接收經(jīng)話音識(shí)別處理的話音命令。作為例子,媒體播放器260可以是由美國(guó)華盛頓州雷德蒙德的微軟公司的Windows媒體播放器(WindowsMediaPlayer)軟件。這些命令可以是播放歌曲、暫停播放歌曲、播放下一首歌曲、停止播放歌曲、從便攜式媒體播放器中彈出便攜式媒體(如CD)等等。MP 260播放由揚(yáng)聲器262輸出的媒體。
理想情況是,應(yīng)防止由MP 260產(chǎn)生的聲音被揚(yáng)聲器262不只一次地輸出,并且MP 260應(yīng)僅僅接收話音命令而不是來(lái)自PC 254的系統(tǒng)聲音。為了實(shí)現(xiàn)這些理想情況,可在使用具有聲音服務(wù)組件的操作系統(tǒng)256的PC 254上運(yùn)行MP260的一種實(shí)現(xiàn)方式。音頻服務(wù)組件包括SAC 254和SAR 258。媒體播放器應(yīng)用程序(MP)260將媒體音頻流輸出到SAR 258,SAR258將該音頻流再現(xiàn)給揚(yáng)聲器262以輸出,該輸出然后經(jīng)周圍環(huán)境266被輸入到話筒264。操作系統(tǒng)256將系統(tǒng)聲音音頻流輸出到SAR 258,SAR 258將該系統(tǒng)聲音音頻流再現(xiàn)給揚(yáng)聲器262以輸出,該輸出然后經(jīng)周圍環(huán)境266被輸入到話筒264。話筒264接收來(lái)自周圍環(huán)境266的周圍環(huán)境音頻流輸入。在上述條件下,周圍環(huán)境音頻流包括由揚(yáng)聲器262輸出的系統(tǒng)聲音音頻流、由揚(yáng)聲器262輸出的媒體音頻流、以及由包括用戶252發(fā)出的用于MP 260所要執(zhí)行的操作的有聲命令的話音音頻流。MP 260要求SAC 254從SAR 258的再現(xiàn)中捕獲每一個(gè)本地音頻流,包括媒體音頻流和總音頻流,總音頻流包括系統(tǒng)聲音音頻流和媒體音頻流。
MP 260能夠?qū)υ捦?64的輸入執(zhí)行各種消除。通過(guò)使用由SAC 254捕獲的本地音頻流,MP 260能消除媒體音頻流的輸入,使得防止媒體音頻流被揚(yáng)聲器262不只一次地輸出。通過(guò)使用由SAC 254捕獲的總音頻流,MP 260能夠消除系統(tǒng)聲音音頻流和媒體音頻流的輸入,使得MP 260僅僅接收話音音頻流。
圖2b示出了表現(xiàn)圖2a所示的媒體播放器環(huán)境200的某些方面的特征的部分框圖。媒體播放器202運(yùn)行于由具有音頻服務(wù)組件的操作系統(tǒng)操作的計(jì)算系統(tǒng)上。音頻服務(wù)組件可由媒體播放器202訪問(wèn)來(lái)建立SAC 214以及SAR 204、208。媒體播放器202輸出到SAR 204。系統(tǒng)聲音由計(jì)算系統(tǒng)產(chǎn)生而輸出到SAR208。來(lái)自MP 202的流音頻和系統(tǒng)聲音206提供給全局引擎220,在其中進(jìn)行混音而產(chǎn)生總輸出。SAC 214捕獲該總輸出,用于由錄音機(jī)216進(jìn)行記錄。錄音機(jī)216中的流音頻可用于信號(hào)處理來(lái)實(shí)現(xiàn)所需的聲音效果,如圖2a中所示的MP 206的理想情況。
圖3-圖5示出了表現(xiàn)RTC的特征的各環(huán)境300、400和500,其中RTC要求在已經(jīng)存在的再現(xiàn)API上打開捕獲應(yīng)用程序接口(API),使得RTC輸出混音能夠任選地受進(jìn)一步的信號(hào)處理,如AEC。
圖3示出了環(huán)境300,其中RTC 302位于與輸出設(shè)備驅(qū)動(dòng)器338通信的輸出設(shè)備和與輸入設(shè)備驅(qū)動(dòng)器320通信的輸入設(shè)備之間的數(shù)字回送電路中。環(huán)境300示出了由黑線定界的若干部分,包括應(yīng)用程序部分360、系統(tǒng)音頻服務(wù)部分370、混音輸入/輸出(I/O)部分380、以及核心部分390。應(yīng)用程序部分360由系統(tǒng)服務(wù)部分370提供服務(wù)?;煲鬒/O部分380接收來(lái)自輸入設(shè)備的輸入并經(jīng)各驅(qū)動(dòng)器338、320輸出到輸出設(shè)備。在環(huán)境300中,RTC 320不消除來(lái)自所有總輸出的輸出,而是僅僅消除本地處理的輸出。
RTC 302在輸出設(shè)備驅(qū)動(dòng)器338上打開SAR 304和在輸入設(shè)備驅(qū)動(dòng)器320上打開SAC 333。在圖3中,實(shí)箭頭標(biāo)識(shí)控制流,而虛箭頭標(biāo)識(shí)數(shù)據(jù)流。當(dāng)RTC302將控制流指令傳遞給SAR 304時(shí),以參考標(biāo)號(hào)‘1’為標(biāo)記的控制流開始,以開始環(huán)境300中所例示的過(guò)程。參考標(biāo)號(hào)‘1’處的控制流意圖說(shuō)明這樣的一個(gè)概念,即RTC 302能夠要求或請(qǐng)求對(duì)RTC 302的輸出進(jìn)行記錄。在該控制流期間,RTC 302請(qǐng)求系統(tǒng)音頻服務(wù)370用對(duì)SAC 363的接口來(lái)打開輸出。環(huán)境300中所示的結(jié)構(gòu)的大部分是以系統(tǒng)音頻過(guò)濾圖管理器372設(shè)立的。RTC 302調(diào)用SAR 304用于從SAR 304獲得一個(gè)SAC接口。在該情況中,SAC 363是由RTC 302調(diào)用的接口。如此,RTC 302使數(shù)據(jù)流向SAR 304。SAR 304向緩沖器306輸出。
由參考標(biāo)號(hào)‘2’和‘3’標(biāo)記的控制流從SAR 304分別傳遞到處理器362和端點(diǎn)364。處理器362意圖提供保持要被處理的聲效列表的對(duì)象名稱,其中該對(duì)象請(qǐng)求這些效果得到處理。標(biāo)以參考編號(hào)‘2’和‘3’的控制流箭頭反映出SAR 304的應(yīng)用程序接口(API)能夠如何與對(duì)RTC 302的輸出的記錄相協(xié)調(diào)的一種可能配置。
數(shù)據(jù)流經(jīng)緩沖器306而在參考標(biāo)號(hào)308處進(jìn)行格式變換處理。在參考標(biāo)號(hào)308處的格式變換之后,數(shù)據(jù)流到采樣速率變換器(SRC)330。圖3中,在數(shù)據(jù)流到混音I/O部分380之前,可以看到SRC 330是最后一個(gè)聲效模塊。
在SRC 330處,數(shù)據(jù)經(jīng)受采樣速率變換。數(shù)據(jù)從SRC 330流向兩個(gè)不同的方向。一個(gè)方向是從緩沖器362到SAC 363的數(shù)據(jù)流。在SAC 363處,數(shù)據(jù)被捕獲并以輸入的形式返回給RTC 302。如此,RTC 302接收了已從本地處理過(guò)程所捕獲的本地輸出。因此,RTC 302已接收回了捕獲API實(shí)例,并按輸入接收從SAC 363到RTC 302的數(shù)據(jù)流中的輸出數(shù)據(jù)的傳遞。在另一個(gè)方向中,SRC330將相同的數(shù)據(jù)輸出給緩沖器332,緩沖器332輸出到緩沖器362。緩沖器332中的數(shù)據(jù)提交給全局引擎334。全局引擎334輸出給環(huán)路緩沖器336,數(shù)據(jù)從環(huán)路緩沖器336流向輸出設(shè)備驅(qū)動(dòng)器338。從輸出設(shè)備驅(qū)動(dòng)器338,數(shù)據(jù)可在在與核心部分390接口的輸出設(shè)備(未示出)上被輸出。
還可經(jīng)輸入設(shè)備驅(qū)動(dòng)器320從輸入設(shè)備(未示出)接收數(shù)據(jù)。輸入設(shè)備驅(qū)動(dòng)器320輸出到環(huán)路緩沖器322。環(huán)路緩沖器322將數(shù)據(jù)提交給全局引擎324,后者輸出到緩沖器326。緩沖器326輸出到局部引擎328,后者輸出到緩沖器331。在SAC 333處,來(lái)自緩沖器331的音頻數(shù)據(jù)被捕獲,并從SAC 333返回給RTC 302。
圖4示出了環(huán)境400,它是圖3中所示的環(huán)境300的變型,其中,SAR 304直接輸出到SAC 305以返回?cái)?shù)據(jù)給RTC 302。在環(huán)境400中,在308處的格式變換之前,在SAC 305處捕獲音頻數(shù)據(jù)。從而,經(jīng)SAC 305而直接從SAR 304獲得音頻數(shù)據(jù)。在進(jìn)入本地區(qū)域之前,環(huán)境400中所示的處理過(guò)程減少了環(huán)境300中所示的處理過(guò)程的步驟,其中,正被反饋給RTC 302的音頻數(shù)據(jù)不受到參考標(biāo)號(hào)308和330處的格式變換和采樣速率變換。在其它方面,環(huán)境400與環(huán)境300是類似的。
圖5示出了環(huán)境500,它是圖3、4中所示的環(huán)境300和400的變型。環(huán)境500示出了一個(gè)分路器303,它接收來(lái)自RTC 302的音頻數(shù)據(jù)。分路器303同時(shí)輸出到SAR 304和SAC 305。如此,圖5與圖4的不同之處在于,在SAR 305處的再現(xiàn)處理之前,SAC 305捕獲音頻數(shù)據(jù)。在其它方面,圖5所描述的環(huán)境500與環(huán)境300和環(huán)境400相類似。
圖6是適用于圖3至圖5分別所示的環(huán)境300、400和500的方法600的流程圖。方法600啟動(dòng)對(duì)來(lái)自本地處理過(guò)程的輸出的記錄。在方法600中,諸如RTC之類的應(yīng)用程序僅僅消除來(lái)自本地處理的輸出,而不是從全部總輸出中消除本地處理的輸出。應(yīng)用程序調(diào)用SAR在輸出設(shè)備上被打開,并調(diào)用SAC在輸入設(shè)備上被打開。如此,應(yīng)用程序請(qǐng)求輸出設(shè)備打開SAR接口,而輸入設(shè)備打開SAC接口。
方法600以塊602為起始,其中應(yīng)用程序調(diào)用對(duì)來(lái)自本地處理的輸出流的捕獲。在緊接著塊602的塊604處,本地輸出應(yīng)用程序接口(API)確定在何處掛鉤到數(shù)據(jù)流中。這種連接或掛鉤通常剛好在本地輸出送往全局服務(wù)之前。在塊604之后,方法600將控制移到塊606,在塊606處,本地輸出API與本地引擎中的音頻系統(tǒng)圖掛鉤,以便執(zhí)行對(duì)輸出流的捕獲。在塊606之后,執(zhí)行方法600中的塊608。在塊608處,應(yīng)用程序接收回發(fā)出輸出數(shù)據(jù)作為應(yīng)用程序的輸入的捕獲API實(shí)例。
圖7示出了與圖3中所示的環(huán)境300類似并具有下述差異的環(huán)境700。在環(huán)境700中,RTC 702是與輸出設(shè)備驅(qū)動(dòng)器724通信的輸出設(shè)備和與輸入設(shè)備驅(qū)動(dòng)器726通信的輸入設(shè)備之間的數(shù)字回送電路。環(huán)境700示出了由黑實(shí)線定界的若干部分,包括應(yīng)用程序部分760、系統(tǒng)音頻服務(wù)部分770、混音輸入/輸出(I/O)部分780、以及核心部分790。應(yīng)用程序部分760由系統(tǒng)服務(wù)部分770提供服務(wù)。混音I/O部分780分別經(jīng)驅(qū)動(dòng)器724和726而接收來(lái)自輸入設(shè)備的輸入并向輸出設(shè)備輸出。在環(huán)境700中,RTC 702通過(guò)在輸出設(shè)備上打開流音頻捕獲器來(lái)對(duì)輸出到輸出設(shè)備的總輸出中的音頻流的混音執(zhí)行信號(hào)處理(如AEC)。
RTC 702在輸出設(shè)備驅(qū)動(dòng)器724上打開SAR 704和在輸入設(shè)備驅(qū)動(dòng)器726上打開SAC 738。在圖7中,實(shí)線表示控制流,而虛線表示數(shù)據(jù)流。當(dāng)系統(tǒng)音頻服務(wù)770接收到來(lái)自RTC 702的控制流指令時(shí),控制流開始環(huán)境700中所例示的處理過(guò)程。在該控制流期間,RTC 702請(qǐng)求系統(tǒng)音頻服務(wù)770以對(duì)SAC 768的接口打開輸出。RTC 702使用系統(tǒng)音頻服務(wù)770來(lái)設(shè)置SAR 704、SAC 738和SAC 768。在這種情況下,SAC 768是由RTC 702調(diào)用的接口。如此,RTC使數(shù)據(jù)流向SAR 704。SAR 704向緩沖器706輸出。在參考標(biāo)號(hào)708處,來(lái)自緩沖器706的數(shù)據(jù)進(jìn)行格式變換處理。在參考標(biāo)號(hào)708處的格式變換處理之后,數(shù)據(jù)流到采樣速率變換器(SRC)710。在數(shù)據(jù)流向混音I/O部分780之前,SRC 710是圖7中所示的最后一個(gè)聲效模塊。SRC 710所提供的效果包括音量混合、聲道混合等等。
在SRC 710處,數(shù)據(jù)經(jīng)受采樣速率變換后輸出到緩沖器712。數(shù)據(jù)從緩沖器712流進(jìn)混音I/O部分780中的混音器模塊714。在混音器模塊714中,來(lái)自各種源的各種音頻流都可以混合在一起。數(shù)據(jù)從混音器模塊714流到總效果模塊(GFX)716。在GFX 716處,數(shù)據(jù)流向兩個(gè)不同的方向。在一個(gè)方向中,數(shù)據(jù)從GFX 716輸出到格式變換模塊718,并然后輸出到端點(diǎn)720。數(shù)據(jù)從端點(diǎn)720流到環(huán)路緩沖器722,從環(huán)路緩沖器722處輸出到輸出設(shè)備驅(qū)動(dòng)器724。通過(guò)輸出設(shè)備驅(qū)動(dòng)器724,可以在與核心部分790接口的輸出設(shè)備(未示出)上輸出數(shù)據(jù)。在另一個(gè)方向中,數(shù)據(jù)從GFX 716流到緩沖器762而返回到應(yīng)用程序部分760,使得數(shù)據(jù)流到本地引擎764。數(shù)據(jù)從本地引擎764流到緩沖器766,然后到SAC 768。在SAC 768處,數(shù)據(jù)被捕獲并作為輸入而返回給RTC 702。如此,RTC 702已接收到已從輸出設(shè)備捕獲的總輸出。
還可以通過(guò)輸入設(shè)備驅(qū)動(dòng)器726接收來(lái)自輸入設(shè)備(未示出)的數(shù)據(jù)。輸入設(shè)備驅(qū)動(dòng)器726輸出到環(huán)路緩沖器728。環(huán)路緩沖器728將數(shù)據(jù)提交給全局引擎730,全局引擎730輸出到緩沖器732。緩沖器732輸出到本地引擎734,本地引擎734輸出到緩沖器736。在SAC 738處,來(lái)自緩沖器736的音頻數(shù)據(jù)被捕獲,并從SAC 738返回給RTC 702。
圖7描繪了由能夠訪問(wèn)總輸出的RTC 702所使用的總輸出的記錄。這是通過(guò)RTC 702使用操作系統(tǒng)捕獲服務(wù)而調(diào)用在回放設(shè)備上打開捕獲流來(lái)完成的。當(dāng)如此打開時(shí),從輸出設(shè)備捕獲總輸出,從而RTC 702能夠?qū)傒敵鰣?zhí)行信號(hào)處理技術(shù),如AEC。RTC 702使用若干應(yīng)用程序接口(API),包括SAR 704、SAC 768以及SAC 738。SAR 704用于在輸出設(shè)備上再現(xiàn)流音頻數(shù)據(jù)。SAC 768用于對(duì)來(lái)自捕獲設(shè)備的音頻數(shù)據(jù)進(jìn)行數(shù)據(jù)流化。SAC 738執(zhí)行與SAC 768類似的功能。當(dāng)SAC 768在與輸出設(shè)備驅(qū)動(dòng)器724通信的輸出設(shè)備上打開時(shí),RTC 702獲得數(shù)字回送路徑。從而可把總輸出提供給RTC 702,就好像音頻數(shù)據(jù)是從實(shí)際的音頻設(shè)備捕獲的一樣。如此,環(huán)境700使得聲音記錄應(yīng)用程序,如RTC 702能夠容易地捕獲所有的聲音而不管輸出設(shè)備。
輸入設(shè)備(未示出)與輸入設(shè)備驅(qū)動(dòng)器726接口,RTC 702使輸出設(shè)備經(jīng)輸出設(shè)備驅(qū)動(dòng)器打開對(duì)SAR 704的接口,RTC 702還使輸入設(shè)備經(jīng)輸入設(shè)備驅(qū)動(dòng)器726對(duì)SAC 728打開。如此,RTC 702能夠從總輸出中消除聲音回聲。當(dāng)然,處理聲音回聲消除之外,環(huán)境700還能夠通過(guò)使用操作系統(tǒng)服務(wù)來(lái)從輸出設(shè)備打開捕獲源,來(lái)執(zhí)行其它形式的高級(jí)信號(hào)處理。因而,為了執(zhí)行信號(hào)處理,本地客戶機(jī)(例如,各應(yīng)用程序)可據(jù)此獲得對(duì)全局輸出的訪問(wèn)。
圖8示出了應(yīng)用程序能夠使用操作系統(tǒng)的系統(tǒng)音頻服務(wù)的捕獲服務(wù)來(lái)獲得總輸出的方法800。方法800起始于塊802,其中應(yīng)用程序調(diào)用音頻服務(wù)來(lái)捕獲來(lái)自輸出設(shè)備的音頻流。方法800然后移動(dòng)到塊804,其中音頻服務(wù)確定為了接收輸入而應(yīng)接入哪個(gè)輸出設(shè)備。然后,方法800移到塊806。當(dāng)控制進(jìn)行到塊806時(shí),音頻服務(wù)確定從哪里接入音頻數(shù)據(jù)。然后,控制進(jìn)行到塊808,其中音頻服務(wù)插入音頻系統(tǒng)圖結(jié)構(gòu),以便接入要被捕獲的輸出數(shù)據(jù)。一旦被捕獲,輸出數(shù)據(jù)將隨后被用作應(yīng)用程序的輸入數(shù)據(jù),以進(jìn)行信號(hào)處理。方法800的控制進(jìn)行到塊810,其中應(yīng)用程序接收回捕獲API,以便按輸入記錄輸出數(shù)據(jù)。如此,應(yīng)用程序能夠通過(guò)使用操作系統(tǒng)的系統(tǒng)音頻服務(wù)的捕獲服務(wù)來(lái)接收總輸出。應(yīng)用程序隨后能夠?qū)傒敵鰣?zhí)行多種信號(hào)處理技術(shù)中的任何一種,包括但不限于AEC。
示例性計(jì)算系統(tǒng)和環(huán)境圖9例示了能夠部分或完全實(shí)施這里所述的包括RTC和MP的應(yīng)用程序的計(jì)算環(huán)境900的例子。示例性計(jì)算環(huán)境900僅僅是計(jì)算系統(tǒng)的一個(gè)例子,并不是對(duì)網(wǎng)絡(luò)體系結(jié)構(gòu)的使用或功能性的任何限制。計(jì)算環(huán)境900不應(yīng)被解釋成依賴或要求示例性計(jì)算環(huán)境900中所例示的任一組件或其組合。
計(jì)算機(jī)和網(wǎng)絡(luò)體系結(jié)構(gòu)可以用眾多其它通用或?qū)S糜?jì)算系統(tǒng)環(huán)境或配置來(lái)實(shí)施。可適用的已知的計(jì)算系統(tǒng)、環(huán)境和/或配置的例子包括但不限于個(gè)人計(jì)算機(jī)、服務(wù)器計(jì)算機(jī)、瘦客戶機(jī)、厚客戶機(jī)、手持或膝上型設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、機(jī)頂盒、可編程的消費(fèi)電子產(chǎn)品、網(wǎng)絡(luò)PC、小型計(jì)算機(jī)、大型計(jì)算機(jī)、游戲控制臺(tái)、包括任一種上述系統(tǒng)或設(shè)備的分布式計(jì)算環(huán)境等等。
可在由計(jì)算機(jī)執(zhí)行的諸如程序模塊之類的計(jì)算機(jī)可執(zhí)行指令的一般上下文環(huán)境中描述應(yīng)用程序(包括RTC和MP)。一般地,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例行程序、程序、對(duì)象、組件、數(shù)據(jù)結(jié)構(gòu)等等。應(yīng)用程序(包括RTC或MP)還可在由通過(guò)通信網(wǎng)絡(luò)鏈接的遠(yuǎn)地處理設(shè)備執(zhí)行任務(wù)的分布式計(jì)算環(huán)境中實(shí)施。在分布式計(jì)算環(huán)境中,程序模塊可位于本地或遠(yuǎn)地的包括存儲(chǔ)設(shè)備的計(jì)算機(jī)存儲(chǔ)媒體中。
計(jì)算環(huán)境900包括計(jì)算機(jī)902形式的通用計(jì)算機(jī)系統(tǒng)。計(jì)算機(jī)902的組件包括但不限于一個(gè)或多個(gè)處理器或處理單元904、系統(tǒng)存儲(chǔ)器906以及將包括處理器904的各種系統(tǒng)組件連接到系統(tǒng)存儲(chǔ)器906的系統(tǒng)總線908。
系統(tǒng)總線908可以是各種總線結(jié)構(gòu)中的任一種類型,包括存儲(chǔ)器總線或存儲(chǔ)器控制器、外圍總線、圖形加速端口以及使用多種總線結(jié)構(gòu)體系中的任一種的處理器或局部總線。例如,這種總線結(jié)構(gòu)體系包括工業(yè)標(biāo)準(zhǔn)結(jié)構(gòu)(ISA)總線、微通道結(jié)構(gòu)(MCA)總線、增強(qiáng)型ISA(EISA)總線、視頻電子標(biāo)準(zhǔn)協(xié)會(huì)(VESA)局部總線、以及外設(shè)部件互連(PCI)總線(也稱為夾層總線(Mezzanine bus))。
計(jì)算機(jī)系統(tǒng)902一般包括多種計(jì)算機(jī)可讀媒體。這些媒體可以是計(jì)算機(jī)902可存取訪問(wèn)的任何一種適用的媒體,包括易失性和非易失性媒體、可移除和不可移除媒體。系統(tǒng)存儲(chǔ)器906包括諸如隨機(jī)存取存儲(chǔ)器(RAM)910之類的易失性存儲(chǔ)器形式的和諸如只讀存儲(chǔ)器(ROM)912之類的易失性存儲(chǔ)器形式的計(jì)算機(jī)存儲(chǔ)媒體。基本輸入/輸出系統(tǒng)(BIOS)914存儲(chǔ)在ROM 912中,包含在諸如啟動(dòng)期間運(yùn)行的基本例行程序以幫助在計(jì)算機(jī)902內(nèi)部的元件之間傳送信息。RAM 910一般包含可由處理單元904立即存取和/或當(dāng)前正在運(yùn)行的數(shù)據(jù)和/或程序模塊。
計(jì)算機(jī)902還可包括其它可移除/不可移除、易失性/非易失性的計(jì)算機(jī)存儲(chǔ)媒體。例如,圖9例示了向不可移除的非易失性磁性媒體(未示出)進(jìn)行讀寫的硬盤驅(qū)動(dòng)器916、向可移除的非易失性磁盤920(如“軟盤”)進(jìn)行讀寫的磁盤驅(qū)動(dòng)器918,以及向可移除的非易失性的光盤924進(jìn)行讀寫的光盤驅(qū)動(dòng)器922,光盤例如CD-ROM、DVD-ROM或其它光媒體。硬盤驅(qū)動(dòng)器916、磁盤驅(qū)動(dòng)器918以及光盤驅(qū)動(dòng)器922通過(guò)一個(gè)或多個(gè)數(shù)據(jù)媒體接口925而各自連接到系統(tǒng)總線908。作為替代,硬盤驅(qū)動(dòng)器916、磁盤驅(qū)動(dòng)器918以及光盤驅(qū)動(dòng)器922可通過(guò)SISC接口(未示出)而連接到系統(tǒng)總線。
盤驅(qū)動(dòng)器及其相關(guān)的計(jì)算機(jī)可讀媒體向計(jì)算機(jī)902提供計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和其它數(shù)據(jù)的非易失性存儲(chǔ)。雖然本例例示了硬盤916、可移除的磁盤920以及可移除的光盤924,但是要理解到能夠存儲(chǔ)由計(jì)算機(jī)存取訪問(wèn)的數(shù)據(jù)的其它類型的計(jì)算機(jī)可讀媒體也同樣能夠用于實(shí)施該示例性計(jì)算系統(tǒng)和環(huán)境,這些計(jì)算機(jī)可讀媒體例如磁帶盒或其它磁性存儲(chǔ)設(shè)備、閃存卡、CD-ROM、數(shù)字通用盤(DVD)或其它光存儲(chǔ)設(shè)備、隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、電可擦除的可編程只讀存儲(chǔ)器(EEPROM)等等。
任何數(shù)量的程序模塊可以存儲(chǔ)在硬盤916、磁盤920、光盤924、ROM 912和/或RAM 910中,例如這些程序模塊包括操作系統(tǒng)926、一個(gè)或多個(gè)應(yīng)用程序928、其它程序模塊930以及程序數(shù)據(jù)932。這些操作系統(tǒng)926、一個(gè)或多個(gè)應(yīng)用程序928、其它程序模塊930以及程序數(shù)據(jù)932中的每一個(gè)(或他們的某些組合)可包括這里所揭示的RTC和/或MP的實(shí)施例。操作系統(tǒng)926可包括上述的標(biāo)準(zhǔn)操作系統(tǒng)流音頻捕獲和再現(xiàn)服務(wù)(SAC和SAR)。使用操作系統(tǒng)926的這些服務(wù),諸如RTC、MP之類的客戶應(yīng)用程序就能夠獲得總音頻輸出全系統(tǒng)混音,以進(jìn)行信號(hào)處理。
計(jì)算機(jī)系統(tǒng)902可包括稱為通信媒體的多種計(jì)算機(jī)可讀媒體。通信媒體一般將計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù)編入于諸如載波或其它傳送機(jī)構(gòu)的已調(diào)數(shù)據(jù)信號(hào)中,并包括任何信息傳送媒體。
術(shù)語(yǔ)“已調(diào)數(shù)據(jù)信號(hào)”是指具有以編碼信號(hào)中的信息的方式設(shè)置或改變的一個(gè)或多個(gè)特征的信號(hào)。例如,但非限制,通信媒體包括諸如有線網(wǎng)絡(luò)或直接線纜連接之類的有線連接的媒體,以及諸如聲音、RF、紅外線之類的無(wú)線媒體或其它無(wú)線媒體。上述的任意組合也應(yīng)包含在計(jì)算機(jī)可讀媒體的范圍中。
用戶可以通過(guò)諸如鍵盤934和指針設(shè)備936(如“鼠標(biāo)”)之類的輸入設(shè)備向計(jì)算機(jī)系統(tǒng)902輸入命令或信息。可使用話筒935輸入有聲命令,該有聲命令可受到話音識(shí)別處理而傳遞到聲音輸入。其它輸入設(shè)備938(未示出)可包括操縱桿、游戲手柄、衛(wèi)星反射器、串行端口、掃描儀等等。這些以及其它輸入設(shè)備通過(guò)耦合至系統(tǒng)總線908的輸入/輸出接口940而連接到處理單元904,但也可通過(guò)諸如平行端口、游戲端口或通用串行總線(USB)之類的其它接口和總線結(jié)構(gòu)而連接。
還可通過(guò)諸如視頻接口944之類的接口把監(jiān)視器942或其它類型的顯示設(shè)備連接到系統(tǒng)總線908。輸入/輸出接口940可包括聲卡、集成(板載)聲卡等等。一個(gè)或多個(gè)揚(yáng)聲器937可與輸入/輸出接口940通信。除了監(jiān)視器942之外,其它輸出外圍設(shè)備可包括諸如打印機(jī)946之類的組件,它可通過(guò)輸入/輸出接口940而與計(jì)算機(jī)902連接。
計(jì)算機(jī)902可操作于使用對(duì)諸如遠(yuǎn)地計(jì)算設(shè)備948之類的一個(gè)或多個(gè)遠(yuǎn)地計(jì)算機(jī)的邏輯連接的聯(lián)網(wǎng)環(huán)境中。作為例子,遠(yuǎn)地計(jì)算設(shè)備948可以是個(gè)人計(jì)算機(jī)、便攜式計(jì)算機(jī)、服務(wù)器、路由器、網(wǎng)絡(luò)計(jì)算機(jī)、對(duì)等設(shè)備或其它公共網(wǎng)絡(luò)節(jié)點(diǎn)等等。以便攜式計(jì)算機(jī)為例的遠(yuǎn)地計(jì)算設(shè)備948可包括這里關(guān)于計(jì)算機(jī)系統(tǒng)902所述的元件和特征的部分或全部。
計(jì)算機(jī)902和遠(yuǎn)地計(jì)算機(jī)948之間的邏輯連接以局域網(wǎng)(LAN)950和一般廣域網(wǎng)(WAN)952來(lái)描述。這些聯(lián)網(wǎng)環(huán)境在辦公室、企業(yè)范圍的計(jì)算機(jī)網(wǎng)絡(luò)、企業(yè)內(nèi)部互聯(lián)網(wǎng)以及因特網(wǎng)之中是常見的。當(dāng)用于LAN聯(lián)網(wǎng)環(huán)境時(shí),計(jì)算機(jī)902通過(guò)網(wǎng)絡(luò)接口或適配器954連接到局域網(wǎng)950。當(dāng)用于WAN聯(lián)網(wǎng)環(huán)境時(shí),計(jì)算機(jī)902一般包括調(diào)制解調(diào)器956或其它手段來(lái)在廣域網(wǎng)952上建立通信連接。調(diào)制解調(diào)器956,它可外置或內(nèi)置于計(jì)算機(jī)902中,可以通過(guò)輸入/輸出接口940或其它合適的機(jī)構(gòu)連接到系統(tǒng)總線908。將理解到所示的網(wǎng)絡(luò)連接僅僅是示例性的,可以使用在計(jì)算機(jī)902和948之間建立通信鏈路的其它裝置。
在諸如連同計(jì)算環(huán)境900一起例示的聯(lián)網(wǎng)環(huán)境中,關(guān)于計(jì)算機(jī)902或其部分而描述的程序模塊可存儲(chǔ)于遠(yuǎn)地存儲(chǔ)設(shè)備中。作為例子,遠(yuǎn)地應(yīng)用程序958駐留于遠(yuǎn)地計(jì)算機(jī)948的存儲(chǔ)設(shè)備上。雖然人們認(rèn)識(shí)到程序和組件在不同的時(shí)刻駐留于計(jì)算機(jī)系統(tǒng)902的不同存儲(chǔ)組件中,但是,出于說(shuō)明的目的,這里所示的諸如操作系統(tǒng)之類的應(yīng)用程序和其它可執(zhí)行的程序組件以分立塊來(lái)表示,并由計(jì)算機(jī)的數(shù)據(jù)處理器執(zhí)行。
結(jié)論客戶應(yīng)用程序能通過(guò)使用操作系統(tǒng)的音頻捕獲服務(wù)在回放設(shè)備上打開捕獲流來(lái)訪問(wèn)總音頻輸出。這樣做時(shí),客戶應(yīng)用程序捕獲來(lái)自諸如音頻設(shè)備的輸出設(shè)備的總輸出。一旦捕獲,客戶應(yīng)用程序能夠?qū)Σ东@的總輸出執(zhí)行信號(hào)處理技術(shù)(如AEC)。此外,可由應(yīng)用程序調(diào)用這些捕獲服務(wù)來(lái)在已存在的再現(xiàn)API上開放,使得僅有客戶應(yīng)用程序的輸出音頻混音將被捕獲以用于客戶應(yīng)用程序的進(jìn)一步信號(hào)處理。例如,客戶應(yīng)用程序隨后能夠僅對(duì)其自己的輸出進(jìn)行消除,而不是對(duì)所有的總輸出進(jìn)行消除。
雖然已經(jīng)以結(jié)構(gòu)特征和/或邏輯方法步驟的語(yǔ)言描述了本發(fā)明,但是應(yīng)理解到本發(fā)明不局限于所述的特定特征或步驟。所揭示的特定特征和步驟僅僅是實(shí)施本發(fā)明的較佳形式。
權(quán)利要求
1.一種方法,其特征在于,包括捕獲被傳送音頻流;將該被傳送音頻流再現(xiàn)到周圍環(huán)境中;捕獲包含再現(xiàn)的被傳送音頻流的周圍環(huán)境音頻流;以及從所捕獲的周圍環(huán)境音頻流中消除捕獲的被傳送音頻流。
2.如權(quán)利要求1所述的方法,其特征在于所述再現(xiàn)和各個(gè)捕獲步驟都是由操作系統(tǒng)執(zhí)行的;以及所述消除步驟是由操作系統(tǒng)操作的一個(gè)或多個(gè)處理器執(zhí)行的實(shí)時(shí)通信應(yīng)用程序(RTC)來(lái)執(zhí)行的。
3.如權(quán)利要求1所述的方法,其特征在于,捕獲的被傳送音頻流是從分組交換網(wǎng)絡(luò)接收的。
4.如權(quán)利要求1所述的方法,其特征在于,捕獲的被傳送音頻流是從分組交換網(wǎng)絡(luò)接收的電話音頻流。
5.如權(quán)利要求1所述的方法,其特征在于,所述從所捕獲的周圍環(huán)境音頻流中消除捕獲的被傳送音頻流的步驟是由RTC執(zhí)行的。
6.如權(quán)利要求1所述的方法,其特征在于,從所捕獲的周圍環(huán)境音頻流中消除捕獲的被傳送音頻流的過(guò)程是聲音回聲消除處理(AEC)。
7.一個(gè)或多個(gè)存儲(chǔ)有計(jì)算機(jī)可讀指令的計(jì)算機(jī)可讀媒體,其特征在于,當(dāng)由一個(gè)或多個(gè)處理器執(zhí)行這些指令時(shí),使得所述一個(gè)或多個(gè)處理器實(shí)施權(quán)利要求1所述的方法。
8.一個(gè)或多個(gè)包含計(jì)算機(jī)可讀指令的計(jì)算機(jī)可讀媒體,其特征在于,當(dāng)執(zhí)行這些指令時(shí),使得由操作系統(tǒng)操作的計(jì)算系統(tǒng)執(zhí)行本地應(yīng)用程序,該應(yīng)用程序執(zhí)行下述步驟調(diào)用操作系統(tǒng)的流音頻捕獲器(SAC)來(lái)捕獲來(lái)自所述本地應(yīng)用程序的音頻輸出流;確定從何處捕獲來(lái)自本地應(yīng)用程序的音頻輸出流的邏輯位置;在所確定的邏輯位置處,建立對(duì)來(lái)自本地應(yīng)用程序的輸出流的接收點(diǎn),其中所確定的邏輯位置位于所述音頻輸出流與其它音頻流混音的邏輯位置的上流位置;調(diào)用所述SAC在所述接收點(diǎn)捕獲來(lái)自所述本地應(yīng)用程序的音頻輸出流;以及接收來(lái)自所述本地應(yīng)用程序的被捕獲的音頻輸出流。
9.如權(quán)利要求8所述的一個(gè)或多個(gè)計(jì)算機(jī)可讀媒體,其特征在于,所述本地應(yīng)用程序還執(zhí)行對(duì)來(lái)自所述本地應(yīng)用程序的被捕獲的音頻輸出流的信號(hào)處理。
10.如權(quán)利要求9所述的一個(gè)或多個(gè)計(jì)算機(jī)可讀媒體,其特征在于,所述信號(hào)處理是從由AEC和揚(yáng)聲器補(bǔ)償組成的組中選擇的。
11.如權(quán)利要求9所述的一個(gè)或多個(gè)計(jì)算機(jī)可讀媒體,其特征在于,所述信號(hào)處理包括消除來(lái)自本地應(yīng)用程序的被捕獲的音頻輸出流,使得本地應(yīng)用程序的輸出不會(huì)包括來(lái)自該本地應(yīng)用程序的被捕獲的音頻輸出流。
12.一種方法,其特征在于,包括產(chǎn)生系統(tǒng)音頻流用于向周圍環(huán)境再現(xiàn);捕獲要再現(xiàn)到周圍環(huán)境中去的系統(tǒng)音頻流;向周圍環(huán)境再現(xiàn)系統(tǒng)音頻流;捕獲包含再現(xiàn)的系統(tǒng)音頻流的來(lái)自周圍環(huán)境的周圍環(huán)境音頻流;以及從捕獲的周圍環(huán)境音頻流中消除捕獲的系統(tǒng)音頻流。
13.如權(quán)利要求12所述的方法,其特征在于所述再現(xiàn)和各個(gè)所述捕獲步驟都是由操作系統(tǒng)執(zhí)行的;以及所述消除步驟是由操作系統(tǒng)操作的一個(gè)或多個(gè)處理器執(zhí)行的RTC來(lái)執(zhí)行的。
14.如權(quán)利要求12所述的方法,其特征在于,所述從捕獲的周圍環(huán)境音頻流中消除捕獲的系統(tǒng)音頻流的步驟是由RTC執(zhí)行的。
15.如權(quán)利要求12所述的方法,其特征在于,所述從捕獲的周圍環(huán)境音頻流中消除捕獲的系統(tǒng)音頻流的步驟是由AEC執(zhí)行的。
16.如權(quán)利要求12所述的方法,其特征在于,捕獲的周圍環(huán)境音頻流包括不是由計(jì)算系統(tǒng)所產(chǎn)生的音頻流;所述從所捕獲的周圍環(huán)境音頻流中消除捕獲的系統(tǒng)音頻流的步驟產(chǎn)生的最終音頻流包括所述不是由計(jì)算系統(tǒng)所產(chǎn)生的音頻流;以及所述方法還包括傳送所述最終音頻流。
17.如權(quán)利要求16所述的方法,其特征在于,所述不是由計(jì)算系統(tǒng)所產(chǎn)生的音頻流包括用于在RTC執(zhí)行期間在分組交換網(wǎng)絡(luò)上傳送的有聲音頻流。
18.如權(quán)利要求17所述的方法,其特征在于,所述用于在分組交換網(wǎng)絡(luò)上傳送的有聲音頻流是電話音頻流。
19.如權(quán)利要求12所述的方法,其特征在于,要被再現(xiàn)到周圍環(huán)境中去的系統(tǒng)音頻流包括由多個(gè)應(yīng)用程序所產(chǎn)生的多個(gè)音頻流。
20.如權(quán)利要求12所述的方法,其特征在于向周圍環(huán)境再現(xiàn)系統(tǒng)音頻流的步驟還包括將再現(xiàn)的系統(tǒng)音頻流輸出到揚(yáng)聲器;以及捕獲包含再現(xiàn)的系統(tǒng)音頻流的來(lái)自周圍環(huán)境的周圍環(huán)境音頻流的步驟還包括將周圍環(huán)境音頻流接收進(jìn)話筒。
21.一個(gè)或多個(gè)存儲(chǔ)有計(jì)算機(jī)可讀指令的計(jì)算機(jī)可讀媒體,其特征在于,當(dāng)由一個(gè)或多個(gè)處理器執(zhí)行這些指令時(shí),使得所述一個(gè)或多個(gè)處理器實(shí)施權(quán)利要求12所述的方法。
22.一個(gè)或多個(gè)包含計(jì)算機(jī)可讀指令的計(jì)算機(jī)可讀媒體,其特征在于,當(dāng)執(zhí)行這些指令時(shí),使得由操作系統(tǒng)操作的計(jì)算系統(tǒng)執(zhí)行本地應(yīng)用程序,該本地應(yīng)用程序執(zhí)行下述步驟調(diào)用操作系統(tǒng)的SAC來(lái)捕獲來(lái)自至少一個(gè)輸出設(shè)備的音頻輸出流,使得所述操作系統(tǒng)執(zhí)行下述步驟確定要從其捕獲音頻輸出流的一個(gè)輸出設(shè)備;確定從何處捕獲來(lái)自所述一個(gè)輸出設(shè)備的音頻輸出流的邏輯位置;將一個(gè)和多個(gè)邏輯結(jié)構(gòu)插入系統(tǒng)音頻圖,用于SAC在所確定的邏輯位置上捕獲來(lái)自所述一個(gè)輸出設(shè)備的音頻輸出流;以及在所確定的邏輯位置處,建立對(duì)來(lái)自所述一個(gè)輸出設(shè)備的輸出流的接收點(diǎn),其中所確定的邏輯位置位于所述來(lái)自所述一個(gè)輸出設(shè)備的音頻輸出流與其它音頻流混音的邏輯位置的下流位置;調(diào)用所述SAC在所述接收點(diǎn)捕獲來(lái)自所述一個(gè)輸出設(shè)備的音頻輸出流;以及接收來(lái)自所述一個(gè)輸出設(shè)備的被捕獲的音頻輸出流。
23.如權(quán)利要求22所述的一個(gè)或多個(gè)計(jì)算機(jī)可讀媒體,其特征在于,所述本地應(yīng)用程序還執(zhí)行對(duì)來(lái)自所述一個(gè)輸出設(shè)備的被捕獲的音頻輸出流的信號(hào)處理。
24.如權(quán)利要求23所述的一個(gè)或多個(gè)計(jì)算機(jī)可讀媒體,其特征在于,所述信號(hào)處理是從由AEC和揚(yáng)聲器補(bǔ)償組成的組中選擇的。
25.如權(quán)利要求23所述的一個(gè)或多個(gè)計(jì)算機(jī)可讀媒體,其特征在于,所述信號(hào)處理包括消除來(lái)自所述一個(gè)輸出設(shè)備的被捕獲的音頻輸出流,使得本地應(yīng)用程序的輸出不會(huì)包括來(lái)自所述一個(gè)輸出設(shè)備的被捕獲的音頻輸出流。
26.一種方法,其特征在于,包括捕獲已在通信網(wǎng)絡(luò)連接處接收的被傳送音頻流;產(chǎn)生要再現(xiàn)到周圍環(huán)境中去的系統(tǒng)音頻流;捕獲所產(chǎn)生的要再現(xiàn)到周圍環(huán)境中去的系統(tǒng)音頻流;將被傳送音頻流和所產(chǎn)生的系統(tǒng)音頻流再現(xiàn)到周圍環(huán)境中去;捕獲來(lái)自周圍環(huán)境的周圍環(huán)境音頻流,并從中消除再現(xiàn)的被傳送音頻流;和再現(xiàn)的所產(chǎn)生的系統(tǒng)音頻流。
27.如權(quán)利要求26所述的方法,其特征在于,所述再現(xiàn)和各個(gè)捕獲步驟都是由操作系統(tǒng)執(zhí)行的;以及所述消除步驟是由操作系統(tǒng)操作的一個(gè)或多個(gè)處理器執(zhí)行的RTC來(lái)執(zhí)行的。
28.如權(quán)利要求26所述的方法,其特征在于,所述傳送音頻流在其在網(wǎng)絡(luò)連接處被接收之前在通信網(wǎng)絡(luò)上傳送。
29.如權(quán)利要求26所述的方法,其特征在于,捕獲的傳送音頻流是電話音頻流。
30.如權(quán)利要求26所述的方法,其特征在于,消除從捕獲的周圍環(huán)境音頻流捕獲的再現(xiàn)的被傳送音頻流的步驟是由RTC執(zhí)行的。
31.如權(quán)利要求26所述的方法,其特征在于,消除從捕獲的周圍環(huán)境音頻流捕獲的再現(xiàn)的被傳送音頻流的步驟是由AEC執(zhí)行的。
32.如權(quán)利要求26所述的方法,其特征在于,消除從周圍環(huán)境捕獲的所產(chǎn)生的系統(tǒng)音頻流的步驟是由系統(tǒng)執(zhí)行的RTC執(zhí)行的。
33.如權(quán)利要求26所述的方法,其特征在于,消除從周圍環(huán)境捕獲的所產(chǎn)生的系統(tǒng)音頻流的過(guò)程是AEC。
34.如權(quán)利要求26所述的方法,其特征在于捕獲的環(huán)境音頻流包括要用于實(shí)時(shí)通信而要被傳送的有聲音頻流;從捕獲的周圍環(huán)境音頻流消除捕獲的系統(tǒng)音頻流的步驟產(chǎn)生包含有聲音頻流的最終音頻流;以及所述方法還包括傳送所述最終音頻流。
35.如權(quán)利要求34所述的方法,其特征在于,所述有聲音頻流是電話音頻流。
36.如權(quán)利要求26所述的方法,其特征在于,要再現(xiàn)到周圍環(huán)境中去的系統(tǒng)音頻流包括由多個(gè)應(yīng)用程序產(chǎn)生的多個(gè)音頻流。
37.如權(quán)利要求26所述的方法,其特征在于,將所產(chǎn)生的系統(tǒng)音頻流再現(xiàn)到周圍環(huán)境中去的步驟還包括將再現(xiàn)的所產(chǎn)生的系統(tǒng)音頻流輸出到揚(yáng)聲器;以及捕獲來(lái)自周圍環(huán)境的周圍環(huán)境音頻流的步驟還包括將周圍環(huán)境音頻流接收進(jìn)話筒。
38.一個(gè)或多個(gè)存儲(chǔ)有計(jì)算機(jī)可讀指令的計(jì)算機(jī)可讀媒體,其特征在于,當(dāng)由一個(gè)或多個(gè)處理器執(zhí)行這些指令時(shí),使得所述一個(gè)或多個(gè)處理器實(shí)施權(quán)利要求26所述的方法。
39.一種系統(tǒng),其特征在于,包括流音頻捕獲器;流音頻再現(xiàn)器;用于連接到通信網(wǎng)絡(luò)的網(wǎng)絡(luò)連接;包含RTC和系統(tǒng)應(yīng)用程序的存儲(chǔ)器;與流音頻捕獲器和流音頻再現(xiàn)器通信的一個(gè)或多個(gè)處理器,用于執(zhí)行實(shí)時(shí)通信應(yīng)用程序和系統(tǒng)應(yīng)用程序,以完成下述步驟用流音頻捕獲器捕獲在網(wǎng)絡(luò)連接處接收的被傳送音頻流;通過(guò)執(zhí)行系統(tǒng)應(yīng)用程序而產(chǎn)生要再現(xiàn)到周圍環(huán)境中去的系統(tǒng)音頻流;用流音頻捕獲器捕獲所產(chǎn)生的要再現(xiàn)到周圍環(huán)境中去的系統(tǒng)音頻流;用流音頻再現(xiàn)器將被傳送的音頻流和所產(chǎn)生的系統(tǒng)音頻流再現(xiàn)到周圍環(huán)境中去;用流音頻捕獲器捕獲來(lái)自周圍環(huán)境的包含再現(xiàn)的被傳送音頻流和再現(xiàn)的所產(chǎn)生的系統(tǒng)音頻流的周圍環(huán)境音頻流;通過(guò)執(zhí)行實(shí)時(shí)通信應(yīng)用程序從捕獲的周圍環(huán)境音頻流中消除捕獲的被傳送音頻流以及從捕獲的周圍環(huán)境音頻流中消除所捕獲的再現(xiàn)的所產(chǎn)生系統(tǒng)音頻流。
40.如權(quán)利要求39所述的系統(tǒng),其特征在于,各個(gè)再現(xiàn)或捕獲過(guò)程是由操作一個(gè)或多個(gè)處理器的操作系統(tǒng)來(lái)執(zhí)行的。
41.如權(quán)利要求39所述的系統(tǒng),其特征在于,流音頻捕獲器包括用于接收來(lái)自周圍環(huán)境的音頻流的輸入設(shè)備;以及流音頻再現(xiàn)器包括用于將音頻流再現(xiàn)到周圍環(huán)境中去的輸出設(shè)備。
42.如權(quán)利要求41所述的方法,其特征在于所述輸入設(shè)備是話筒;以及所述輸出設(shè)備是揚(yáng)聲器。
43.一種設(shè)備,其特征在于,包括用于捕獲已在通信網(wǎng)絡(luò)連接處接收的被傳送音頻流的第一捕獲裝置;用于產(chǎn)生要再現(xiàn)到周圍環(huán)境中去的系統(tǒng)音頻流的裝置;用于捕獲要再現(xiàn)到周圍環(huán)境中去的所產(chǎn)生的系統(tǒng)音頻流的第二捕獲裝置;用于將被傳送音頻流再現(xiàn)到周圍環(huán)境中去的第一再現(xiàn)裝置;用于將所產(chǎn)生的系統(tǒng)音頻流再現(xiàn)到周圍環(huán)境中去的第二再現(xiàn)裝置;用于捕獲來(lái)自周圍環(huán)境的包含再現(xiàn)的被傳送音頻流和再現(xiàn)的所產(chǎn)生的系統(tǒng)音頻流的周圍環(huán)境音頻流的第三捕獲裝置;用于從所捕獲的周圍環(huán)境音頻流中消除再現(xiàn)的被傳送音頻流和再現(xiàn)的所產(chǎn)生的系統(tǒng)音頻流的消除裝置。
44.如權(quán)利要求43所述的設(shè)備,其特征在于第一、第二、和第三捕獲裝置以及第一和第二再現(xiàn)裝置由操作系統(tǒng)執(zhí)行;以及消除裝置由操作系統(tǒng)操作的一個(gè)或多個(gè)處理器執(zhí)行的RTC執(zhí)行。
45.如權(quán)利要求43所述的設(shè)備,其特征在于,所述消除裝置使用由第一捕獲裝置捕獲的被傳送音頻流消除再現(xiàn)的傳送音頻流。
46.如權(quán)利要求43所述的設(shè)備,其特征在于,所述消除裝置使用由第二捕獲裝置捕獲的系統(tǒng)音頻流消除再現(xiàn)的所產(chǎn)生的系統(tǒng)音頻流。
47.如權(quán)利要求43所述的設(shè)備,其特征在于,所述消除裝置使用由所述第一捕獲裝置捕獲的被傳送音頻流和由所述第二捕獲裝置捕獲的系統(tǒng)音頻流,來(lái)消除再現(xiàn)的被傳送音頻流和再現(xiàn)的所產(chǎn)生的系統(tǒng)音頻流。
48.一種實(shí)時(shí)通信系統(tǒng),其中第一系統(tǒng)通過(guò)分組交換網(wǎng)絡(luò)與第二系統(tǒng)通信,第一系統(tǒng)具有與揚(yáng)聲器和話筒連接的操作系統(tǒng),所述操作系統(tǒng)包含SAC和流音頻再現(xiàn)器(SAR),所述操作系統(tǒng)執(zhí)行包含RTC的應(yīng)用程序,其特征在于所述RTC將所接收的來(lái)自第二系統(tǒng)的話音音頻流輸出到將該話音音頻流再現(xiàn)到揚(yáng)聲器輸出后輸入到話筒的SAR;所述操作系統(tǒng)將系統(tǒng)聲音音頻流輸出到將該聲音音頻流再現(xiàn)到揚(yáng)聲器輸出后輸入到話筒的SAR;所述話筒接收來(lái)自周圍環(huán)境的包含系統(tǒng)聲音音頻流和來(lái)自第二系統(tǒng)的話音音頻流的周圍環(huán)境音頻流的輸入;所述RTC執(zhí)行一種方法,該方法包括調(diào)用SAC來(lái)捕獲本地音頻流和總音頻流,本地音頻流包括所接收的來(lái)自第二系統(tǒng)的并由SAR再現(xiàn)的話音音頻流,總音頻流包括由SAR再現(xiàn)的系統(tǒng)聲音音頻流;使用由SAC捕獲的本地音頻流,從話筒的輸入中消除所接收的來(lái)自第二系統(tǒng)的由SAR再現(xiàn)并由揚(yáng)聲器輸出的話音音頻流的輸入,從而防止所接收的來(lái)自第二系統(tǒng)的話音音頻流被SAR不只一次地再現(xiàn)給揚(yáng)聲器輸出;以及使用由SAC捕獲的總音頻流,從話筒的輸入中消除由操作系統(tǒng)輸出的由SAR再現(xiàn)并由揚(yáng)聲器輸出的系統(tǒng)聲音音頻流的輸入,從而防止系統(tǒng)聲音音頻流被RTC通過(guò)分組交換網(wǎng)絡(luò)而傳送到第二系統(tǒng)。
49.一個(gè)或多個(gè)存儲(chǔ)有計(jì)算機(jī)可讀指令的計(jì)算機(jī)可讀媒體,其特征在于,當(dāng)由第一系統(tǒng)執(zhí)行這些指令時(shí),使得所述第一系統(tǒng)執(zhí)行權(quán)利要求48所述的方法。
50.一種實(shí)時(shí)通信系統(tǒng),包括執(zhí)行第一RTC應(yīng)用程序和第一系統(tǒng)應(yīng)用程序的第一客戶系統(tǒng),第一客戶系統(tǒng)包括第一揚(yáng)聲器、第一話筒、第一音頻捕捉器以及第一音頻再現(xiàn)器;執(zhí)行第二RTC應(yīng)用程序和第二系統(tǒng)應(yīng)用程序的第二客戶系統(tǒng),第二客戶系統(tǒng)包括第二揚(yáng)聲器、第二話筒、第二音頻捕捉器以及第二音頻再現(xiàn)器;與所述第一和第二客戶系統(tǒng)通信的分組交換網(wǎng)絡(luò),其特征在于,在由所述第一和第二客戶系統(tǒng)分別執(zhí)行第一和第二RTC應(yīng)用程序期間第一客戶系統(tǒng)通過(guò)分組交換網(wǎng)絡(luò)將第一有聲音頻流傳送到第二客戶系統(tǒng),該第一有聲音頻流由第二捕獲器捕獲并由第二揚(yáng)聲器處的第二再現(xiàn)器再現(xiàn);第二客戶系統(tǒng)通過(guò)分組交換網(wǎng)絡(luò)將第二有聲音頻流傳送到第一客戶系統(tǒng),該第二有聲音頻流由第一捕獲器捕獲并由第一揚(yáng)聲器處的第一再現(xiàn)器再現(xiàn);由第一客戶系統(tǒng)執(zhí)行第一系統(tǒng)應(yīng)用程序產(chǎn)生、由第一捕獲器捕獲、并由第一揚(yáng)聲器處的第一再現(xiàn)器再現(xiàn)第一系統(tǒng)音頻流;由第二客戶系統(tǒng)執(zhí)行第二系統(tǒng)應(yīng)用程序產(chǎn)生、由第二捕獲器捕獲、并由第二揚(yáng)聲器處的第二再現(xiàn)器再現(xiàn)第二系統(tǒng)音頻流;第一話筒按輸入接收包含第一系統(tǒng)音頻流和來(lái)自周圍環(huán)境的第一周圍環(huán)境音頻流的第一批音頻流,用于由第一音頻捕獲器捕獲并傳送到第一RTC應(yīng)用程序;第二話筒按輸入接收包含第二系統(tǒng)音頻流和來(lái)自周圍環(huán)境的第二周圍環(huán)境音頻流的第二批音頻流,用于由第二音頻捕獲器捕獲并傳送到第二RTC應(yīng)用程序;第一RTC應(yīng)用程序從第一批音頻流中消除第一有聲音頻流和第一系統(tǒng)音頻流;第二RTC應(yīng)用程序從第二批音頻流中消除第二有聲音頻流和第二系統(tǒng)音頻流。
51.如權(quán)利要求50所述的實(shí)時(shí)通信系統(tǒng),其特征在于第一客戶系統(tǒng)由包括第一音頻捕獲器和第一音頻再現(xiàn)器的操作系統(tǒng)操作;第二客戶系統(tǒng)由包括第二音頻捕獲器和第二音頻再現(xiàn)器的操作系統(tǒng)操作;
52.如權(quán)利要求50所述的實(shí)時(shí)通信系統(tǒng),其特征在于,第一和第二RTC應(yīng)用程序中每一個(gè)包括AEC。
53.一種具有與揚(yáng)聲器和話筒通信的操作系統(tǒng)的計(jì)算系統(tǒng),所述操作系統(tǒng)包括SAC和SAR,所述操作系統(tǒng)執(zhí)行包括媒體播放器應(yīng)用程序(MP)的應(yīng)用程序;其特征在于所述MP向SAR輸出媒體音頻流,SAR將該媒體音頻流再現(xiàn)給揚(yáng)聲器以輸出,揚(yáng)聲器的輸出又隨后輸入到話筒;所述操作系統(tǒng)向SAR輸出系統(tǒng)聲音音頻流,SAR將該系統(tǒng)聲音音頻流再現(xiàn)給揚(yáng)聲器以輸出,揚(yáng)聲器的輸出又隨后輸入到話筒;話筒接收來(lái)自周圍環(huán)境的周圍環(huán)境音頻流的輸入,該周圍環(huán)境音頻流包括由揚(yáng)聲器輸出的系統(tǒng)聲音音頻流;由揚(yáng)聲器輸出的媒體音頻流;包括來(lái)自用戶的用于MP所要執(zhí)行的操作的有聲命令的話音音頻流;所述MP執(zhí)行一種方法,包括調(diào)用SAC來(lái)捕獲從SAR再現(xiàn)的包含媒體音頻流的本地音頻流;以及包含系統(tǒng)聲音音頻流和媒體音頻流的總音頻流;使用由SAC捕獲的本地音頻流,從話筒的輸入中消除媒體音頻流的輸入,從而防止媒體音頻流被揚(yáng)聲器不只一次地輸出;使用由SAC捕獲的總音頻流,從話筒的輸入中消除系統(tǒng)聲音音頻流和媒體音頻流,從而MP僅接收話音音頻流。
54.一個(gè)或多個(gè)存儲(chǔ)有計(jì)算機(jī)可讀指令的計(jì)算機(jī)可讀媒體,其特征在于,當(dāng)由計(jì)算系統(tǒng)執(zhí)行這些指令時(shí),執(zhí)行權(quán)利要求53所述的方法。
全文摘要
一種具有音頻系統(tǒng)服務(wù)的操作系統(tǒng),能夠捕獲輸出設(shè)備的全部流音頻并可供用于處理。應(yīng)用程序能夠?qū)Σ东@的流音頻進(jìn)行處理。由應(yīng)用程序輸出并送往再現(xiàn)設(shè)備的任何流音頻在與送往輸出設(shè)備的其它流音頻混音之前也能夠被捕獲以進(jìn)行信號(hào)處理。
文檔編號(hào)H04H1/10GK1533137SQ20041003047
公開日2004年9月29日 申請(qǐng)日期2004年3月16日 優(yōu)先權(quán)日2003年3月20日
發(fā)明者S·E·斯溫森, A·賽爾丘克, J·H·多利四世, D·W·弗倫尼肯, S E 斯溫森, 多利四世, 弗倫尼肯, 鸝 申請(qǐng)人:微軟公司