專利名稱:用于控制和管理多點(diǎn)會(huì)議的系統(tǒng)和方法
用于控制和管理多點(diǎn)會(huì)議的系統(tǒng)和方法相關(guān)申請的交叉引用本申請要求2010年9月20號提交的美國臨時(shí)專利申請S/N.61/384,634的權(quán)益,該申請的全部內(nèi)容通過引用結(jié)合于此。領(lǐng)域本申請涉及多點(diǎn)會(huì)議的管理和控制。具體而言,本申請涉及用于增加或移除包括零個(gè)、一個(gè)或多個(gè)服務(wù)器的多點(diǎn)會(huì)議中的參與者、選擇性地并且動(dòng)態(tài)地從其他參與者接收內(nèi)容或特定內(nèi)容類型、接收有關(guān)會(huì)議狀態(tài)變化的通知等等的機(jī)構(gòu)。
背景技術(shù):
音頻和視頻通信和會(huì)議領(lǐng)域在過去的三十年中已經(jīng)經(jīng)歷了顯著的增長?;ヂ?lián)網(wǎng)的可用性以及音頻和視頻編解碼器設(shè)計(jì)的不斷改善使得基于音頻或視頻的服務(wù)激增?,F(xiàn)今,存在使個(gè)人能夠從世界上有互聯(lián)網(wǎng)連接的任何地方利用音頻、帶音頻的視頻、以及多媒體(例如,視頻、音頻和演示)進(jìn)行點(diǎn)對點(diǎn)以及多點(diǎn)通信會(huì)話的系統(tǒng)和服務(wù)。這些服務(wù)中的一些基于公共可用的標(biāo)準(zhǔn)(例如,SIP、H.323,XMPP),而其他是專有的(例如,Skype)。這些系統(tǒng)和服務(wù)經(jīng)常通過即時(shí)通訊(“頂”)解決方案來提供,該即時(shí)通訊解決方案是允許用戶看到其他用戶是否在線(所謂的“存在”特征)并與他們進(jìn)行文字聊天的系統(tǒng)。音頻和視頻成為通過該應(yīng)用提供的附加功能。其他系統(tǒng)專注于視頻和音頻(例如,Vidyo公司的VidyoDesktop),假設(shè)另外的系統(tǒng)將用于文本聊天功能。這些通信系統(tǒng)的可用性已導(dǎo)致這些系統(tǒng)中信令的成熟規(guī)范的可用性。例如,SIP、
H.323和XMPP是廣泛使用的信令設(shè)施:建立和撤銷會(huì)話、協(xié)商發(fā)射器和接收器之間的系統(tǒng)參數(shù)、并且管理存在信息或發(fā)送結(jié)構(gòu)化數(shù)據(jù)。SIP在RFC3261中被定義,推薦標(biāo)準(zhǔn)H.323可從國際電信同盟(International Telecommunications Union)獲得,并且 XMPP 在 RFC6120、6121、和6122以及由XMPP標(biāo)準(zhǔn)基金會(huì)制訂的XMPP擴(kuò)展(XEP)中被定義;所有參考文獻(xiàn)通過引用整體結(jié)合于此。這些體系結(jié)構(gòu)是根據(jù)關(guān)于整個(gè)系統(tǒng)應(yīng)當(dāng)怎樣工作的多項(xiàng)假設(shè)來設(shè)計(jì)的。對于基于(即,最初設(shè)計(jì)用于)音頻或視聽通信的系統(tǒng)(諸如SIP或H.323),設(shè)計(jì)者假定系統(tǒng)如何操作的或多或少的靜態(tài)配置:編碼參數(shù)(例如,視頻分辨率、幀率、比特率等)一經(jīng)設(shè)置,就在會(huì)話期間保持不變。任何改變本質(zhì)上需要重建會(huì)話(例如,SIP重新邀請),因?yàn)樵谶B接建立并且媒體已開始通過連接流動(dòng)之后不預(yù)期或者不允許修改。然而,編碼解碼器設(shè)計(jì)、尤其是視頻編碼解碼器設(shè)計(jì)的最近發(fā)展引入有效的所謂“分層表示”。分層表示使得利用對應(yīng)數(shù)量的比特流在超過一個(gè)保真水平上表示原始信號。分層表示的一個(gè)示例為可分級編碼,諸如用于推薦標(biāo)準(zhǔn)H.264附錄G (可分級視頻編碼一 SVC)的可分級編碼,其可從國際電信同盟獲得并且通過引用整體結(jié)合于此。在諸如SVC的可分級編碼中,通過利用標(biāo)準(zhǔn)的不可分級技術(shù)(例如,利用H.264高級視頻編碼一AVC)對源進(jìn)行編碼而獲得第一保真點(diǎn)。通過對所得的編碼誤差(原始信號與第一保真點(diǎn)的解碼版本之間的差別)進(jìn)行編碼并在該編碼誤差自身的比特流中發(fā)送該編碼誤差,可獲得附加的保真點(diǎn)。該金字塔結(jié)構(gòu)是非常常見的(例如,曾用于MPEG-2和MPEG-4第三部分視頻)。第一(最低)保真水平比特流被稱為基本層,而提供附加保真點(diǎn)的比特流被稱為增強(qiáng)層。該保真增強(qiáng)可以在任何保真維度中進(jìn)行。例如,對于視頻而言,它可以是時(shí)間(幀率)、質(zhì)量(SNR)或空間(畫面尺寸)。對于音頻而言,它可以是時(shí)間(每秒樣本數(shù))、質(zhì)量(SNR)或附加聲道。注意,多個(gè)層比特流可獨(dú)立傳輸,或通常可利用適當(dāng)?shù)男畔⒃趩蝹€(gè)比特流中多路復(fù)用地傳輸,該適當(dāng)?shù)男畔⒃试S直接提取對應(yīng)于各個(gè)層的子比特流。分層表示的另一示例是多描述編碼。這里,該構(gòu)造不是金字塔形的:每層可獨(dú)立解碼,并提供基本保真水平的表示;然而,如果超過一個(gè)層對解碼器可用,則可能提供原始信號的較高保真水平的解碼表示。一個(gè)(小)示例是將視頻信號的奇數(shù)和偶數(shù)畫面作為兩個(gè)獨(dú)立的比特流來發(fā)送。每個(gè)比特流單獨(dú)提供第一保真水平,而從其它比特流接收的任何信息可被用于增強(qiáng)該第一保真水平。如果接收了所有流,則存在由特定表示所提供的原始信號的最聞質(zhì)量水平的完整表不。分層表示的另一極端示例是同播。在該情況下,原始信號的兩個(gè)或更多個(gè)獨(dú)立表示在它們自身的比特流中被編碼并發(fā)送。例如,這通常被用于發(fā)送標(biāo)清TV素材和高清TV素材。注意,同播是其中未使用層間預(yù)測的可分級編碼的特殊情況。基于IP網(wǎng)絡(luò)中的視頻和音頻傳輸通常使用實(shí)時(shí)協(xié)議(RTP)作為傳輸協(xié)議(RFC3550,通過引用整體結(jié)合于此)。RTP通常在UDP上操作,并且提供傳輸實(shí)時(shí)內(nèi)容所需的多個(gè)特征,例如,有效載荷類型識(shí)別、序列編號、時(shí)間戳和傳送監(jiān)測。在RTP會(huì)話上進(jìn)行發(fā)送的每個(gè)源通過唯一的SSRC (同步源)來標(biāo)識(shí)。RTP分組的分組序列號和時(shí)間戳與特定的SSRC相關(guān)聯(lián)。當(dāng)音頻或視頻信號的分層表示在基于分組的網(wǎng)絡(luò)上傳輸時(shí),在每個(gè)層(或?qū)咏M)在其自己的連接或會(huì)話上傳輸時(shí)存在優(yōu)勢。以這種方式,僅希望解碼基礎(chǔ)質(zhì)量的接收器只需要接收特定會(huì)話,并且不受累于接收附加層所需的附加比特率。分層多播是使用該體系結(jié)構(gòu)的公知應(yīng)用。這里,源在多個(gè)多播信道上多播內(nèi)容的層,并且接收機(jī)僅“訂閱”它們希望接收的層信道。然而,在諸如視頻會(huì)議之類的其他應(yīng)用中,如果在單個(gè)連接上多路復(fù)用地傳輸所有層,則會(huì)是優(yōu)選的。這使得在防火墻穿越、加密等方面更加容易管理。對于多點(diǎn)系統(tǒng),所有視頻流在單個(gè)連接上傳輸也是優(yōu)選的。分層表示已在2009年9月22日授權(quán)的題為“用于低延時(shí)和分布式會(huì)議應(yīng)用的會(huì)議服務(wù)器體系結(jié)構(gòu)的系統(tǒng)和方法(System and Method for a Conference ServerArchitecture for Low Delay and Distributed Conferencing Applications),,的共同轉(zhuǎn)讓的美國專利N0.7,593,032中被用于稱為可分級視頻編碼服務(wù)器(‘SVCS’ )的新型多點(diǎn)控制單元(“MCU”)的設(shè)計(jì)。SVCS引入了用于視頻通信系統(tǒng)的全新體系結(jié)構(gòu),其中傳統(tǒng)轉(zhuǎn)碼MCU的復(fù)雜度被顯著降低。具體地,由于視頻數(shù)據(jù)的分層結(jié)構(gòu),SVCS只執(zhí)行分組的選擇性轉(zhuǎn)發(fā),以提供個(gè)性化布局和速率或分辨率匹配。由于沒有信號處理,SVCS引入非常小的延時(shí)。除例如極大改善的差錯(cuò)恢復(fù)的其他特征之外,所有這些已改變現(xiàn)今可能的有關(guān)可視通信體驗(yàn)的質(zhì)量。2006年12月8日提交的題為“用于視頻通信系統(tǒng)中的差錯(cuò)恢復(fù)和隨機(jī)訪問的系統(tǒng)和方法(Systems and Methods for Error Resilience and Random Access in VideoCommunication Systems)” 的共同轉(zhuǎn)讓的國際專利申請 N0.PCT/US06/061815 和 2007 年 3月5日提交的題為“用于在可分級視頻通信中提供差錯(cuò)恢復(fù)、隨機(jī)訪問和速率控制的系統(tǒng)和方法(System and Method for Providing Error Resilience, Random Access, and RateControl in Scalable Video Communications)”的N0.PCT/US07/63335描述了用于分層視頻表示的特定差錯(cuò)恢復(fù)、隨機(jī)訪問和速率控制技術(shù),而且上述兩個(gè)專利通過引用整體結(jié)合于此?,F(xiàn)有的信令協(xié)議還沒有被設(shè)計(jì)為考慮通過分層表示而成為可能的系統(tǒng)特征。例如,采用分層表示,可在不重建會(huì)話的情況下切換同一會(huì)話中流的視頻分辨率。例如,這在2009年6月9日提交的題為“用于可分級視頻和音頻通信系統(tǒng)中的改善視圖布局管理的系統(tǒng)和方法(System and Method for Improved View Layout Management in ScalableVideo and Audio Communication Systems)”的共同轉(zhuǎn)讓的國際專利申請PCT/US09/046758中被使用,該專利申請整體結(jié)合于此。在同一申請中,描述了根據(jù)發(fā)言者活動(dòng)向布局增加或從其移除視頻的算法。這些功能要求其中執(zhí)行合成的端點(diǎn)可向SVCS表示它希望接收哪些流并且那些流具有什么屬性(例如,分辨率)。
發(fā)明內(nèi)容
本發(fā)明公開了用于控制和管理多點(diǎn)會(huì)議的技術(shù),其中端點(diǎn)可選擇性地且單獨(dú)地管理將被傳輸至它們的流。在一些實(shí)施例中,所公開的主題允許傳輸端點(diǎn)從其他接收端點(diǎn)收集信息并將它們處理成一組操作參數(shù),然后傳輸端點(diǎn)將該組操作參數(shù)用于其操作。在另一實(shí)施例中,所述收集由中間服務(wù)器執(zhí)行,然后該中間服務(wù)器將聚集的數(shù)據(jù)傳送至傳輸端點(diǎn)。在一個(gè)或多個(gè)實(shí)施例中,所公開的主題使用會(huì)議級展示、按需展示、展示參數(shù)聚集和傳播、級聯(lián)(或網(wǎng)狀)操作的通知傳播、和展示參數(shù)提示(例如,比特率、窗口大小、像素率、每秒幀數(shù) fps)0
圖1示出了根據(jù)所公開主題的實(shí)施例的具有多個(gè)參與者和多個(gè)服務(wù)器的視聽通信系統(tǒng)的系統(tǒng)示意圖;圖2示出了根據(jù)所公開主題的實(shí)施例的客戶機(jī)和服務(wù)器中的系統(tǒng)模塊和相關(guān)聯(lián)的協(xié)議組件的示意圖;圖3描繪了根據(jù)所公開主題的一個(gè)方面的用于客戶機(jī)發(fā)起的加入和離開操作的示例性的CMCP消息交換;圖4描繪了根據(jù)所公開主題的一個(gè)方面的用于客戶機(jī)發(fā)起的加入和服務(wù)器發(fā)起的離開操作的示例性的CMCP消息交換;圖5描繪了根據(jù)所公開主題的一個(gè)方面的用于執(zhí)行自我觀看的示例性的CMCP消息交換;圖6描繪了根據(jù)所公開主題的一個(gè)方面的用于分析級聯(lián)CMCP操作的示例性的會(huì)議布置;圖7描繪了根據(jù)所公開主題的一個(gè)方面展示級聯(lián)配置中的本地源的過程;圖8描繪了根據(jù)所公開主題的一個(gè)方面展示級聯(lián)配置中的遠(yuǎn)程源的過程;圖9描繪了根據(jù)所公開主題的實(shí)施例展示級聯(lián)配置中的“所選”源的過程;
圖10是適合用于實(shí)現(xiàn)本公開的實(shí)施例的計(jì)算機(jī)系統(tǒng)的框圖。除非另外指明,否則在全部附圖中的相同附圖標(biāo)記和符號用來表示所示實(shí)施例的相似特征、要素、組件、或部分。而且,當(dāng)現(xiàn)在將參考附圖詳細(xì)描述所公開的主題時(shí),這一描述是結(jié)合說明性實(shí)施例來完成的。詳細(xì)描述所公開的主題描述了用于管理和控制多點(diǎn)會(huì)議的技術(shù),該技術(shù)被稱為會(huì)議管理和控制協(xié)議(‘CMCP’)。它是用于控制和管理多媒體會(huì)議中的成員資格、會(huì)議中的多媒體流選擇以及對用于接收流的特性選擇的協(xié)議。CMCP是用于控制基于集中點(diǎn)的多點(diǎn)多媒體會(huì)議的協(xié)議。‘集中點(diǎn)’或服務(wù)器是MCU (多點(diǎn)控制單元)、SVCS (如上所述)、或其他媒體知曉網(wǎng)絡(luò)要素(MANE)。其他協(xié)議(SIP、Jingle等等)被用于在端點(diǎn)和服務(wù)器之間建立多媒體會(huì)話。一旦會(huì)話被建立,其可被用于傳輸與一個(gè)或多個(gè)會(huì)議相關(guān)聯(lián)的流。圖1描繪了根據(jù)所公開主題的實(shí)施例的視聽通信系統(tǒng)100的一般體系結(jié)構(gòu)。該系統(tǒng)以多個(gè)服務(wù)器110和端點(diǎn)120為特征。通過示例的方式,圖1示出了 7個(gè)端點(diǎn)和4個(gè)服務(wù)器;可容納任何數(shù)量的端點(diǎn)和服務(wù)器。在所公開主題的一些實(shí)施例中,服務(wù)器為SVCS,而在所公開主題的其他實(shí)施例中,服務(wù)器可以為MCU (切換或轉(zhuǎn)碼)、網(wǎng)關(guān)(例如,VidyoGateway)或任何其他類型的服務(wù)器。圖1將所有服務(wù)器110描繪為SVCS。SVCS的示例為商用VidyoRouter0端點(diǎn)可以是能夠接收/傳輸音頻或視頻數(shù)據(jù)的任何設(shè)備:從獨(dú)立的會(huì)議系統(tǒng)(例如,商用VidyoRoom220)到運(yùn)行適當(dāng)?shù)能浖耐ㄓ糜?jì)算設(shè)備(例如,運(yùn)行商用VidyoDesktop軟件的計(jì)算機(jī))、電話或平板設(shè)備(例如,運(yùn)行VidyoMobile的蘋果iPhone或iPad)。在一些實(shí)施例中,一些端點(diǎn)可僅發(fā)送媒體,而一些其他端點(diǎn)可僅接收接收。在另一實(shí)施例中,一些端點(diǎn)甚至可以是記錄或重放設(shè)備(即,不需要話筒、攝像機(jī)或監(jiān)視器)。每個(gè)端點(diǎn)連接至一個(gè)服務(wù)器。服務(wù)器可連接至一個(gè)以上端點(diǎn)和連接至一個(gè)以上服務(wù)器。在所公開主題的一些實(shí)施例中,端點(diǎn)與服務(wù)器集成,在該情況下,端點(diǎn)可連接至一個(gè)以上服務(wù)器和/或其他端點(diǎn)。繼續(xù)參照圖1,示出了按照級聯(lián)配置的服務(wù)器110:從一個(gè)端點(diǎn)到另一個(gè)端點(diǎn)的路徑穿過一個(gè)以上服務(wù)器110。在一些實(shí)施例中,可以存在單個(gè)服務(wù)器110 (或根本沒有服務(wù)器,如果服務(wù)器的功能與一個(gè)或兩個(gè)端點(diǎn)集成)。每個(gè)端點(diǎn)到服務(wù)器連接130或服務(wù)器到服務(wù)器連接140是會(huì)話,并且建立用于傳輸包括音頻和視頻的RTP數(shù)據(jù)的點(diǎn)到點(diǎn)連接。注意,可通過每個(gè)此類連接傳輸一個(gè)以上相同類型的流。一個(gè)示例為當(dāng)端點(diǎn)通過基于SVCS的服務(wù)器從多個(gè)參與者接收視頻時(shí)。其相關(guān)聯(lián)的服務(wù)器可通過單個(gè)會(huì)話向端點(diǎn)傳輸所有視頻流。使用圖1的示例可以是來自端點(diǎn)BI和B2的視頻通過服務(wù)器SVCS B和SVCS A傳輸至端點(diǎn)Al。端點(diǎn)Al和服務(wù)器SVCS A之間的會(huì)話可攜帶來自BI和B2 (通過服務(wù)器SVCS B)的兩個(gè)視頻流。在另一實(shí)施例中,服務(wù)器可建立多個(gè)會(huì)話,例如,為每個(gè)視頻流建立一個(gè)會(huì)話。包含多個(gè)流的另一示例為具有多個(gè)視頻源的端點(diǎn)。這樣的端點(diǎn)可在與其相關(guān)聯(lián)的服務(wù)器所建立的會(huì)話上傳輸多個(gè)視頻。端點(diǎn)120和服務(wù)器110運(yùn)行適當(dāng)?shù)能浖詧?zhí)行信令和傳輸功能。在一個(gè)實(shí)施例中,這些組件可被結(jié)構(gòu)化為在每個(gè)組件(端點(diǎn)或服務(wù)器)中使用的整個(gè)系統(tǒng)軟件體系結(jié)構(gòu)中的插件。在一個(gè)實(shí)施例中,系統(tǒng)軟件體系結(jié)構(gòu)是基于包括執(zhí)行上述功能的可替換插件的軟件開發(fā)工具包(SDK)。圖2中示出了在所公開主題的一些實(shí)施例中的每個(gè)端點(diǎn)120和每個(gè)服務(wù)器110中的系統(tǒng)軟件的邏輯組織。存在三個(gè)功能級別:會(huì)話、成員資格和訂閱。每個(gè)功能與插件組件以及處理抽象相關(guān)聯(lián)。會(huì)話級別涉及建立會(huì)話所需要的必要信令操作。在一些實(shí)施例中,信令可涉及基于標(biāo)準(zhǔn)的信令協(xié)議,諸如XMPP或SIP (可能使用在RFC3262“會(huì)話發(fā)起協(xié)議中臨時(shí)響應(yīng)的可靠性(Reliability of provisional response in the Session Initiation Protocol),,中定義的PRACK,該文獻(xiàn)的全部內(nèi)容通過引用結(jié)合于此)。在一些實(shí)施例中,信令可以是專有的,例如使用SCIP協(xié)議。SCIP為具有實(shí)質(zhì)上與XMPP和SIP相同的狀態(tài)機(jī)的協(xié)議(實(shí)際上,可能將SCIP的消息一對一地映射至SIP)。在圖2中,其示出了使用SCIP協(xié)議。為了所公開主題的目的,信令協(xié)議的精確選擇是不相關(guān)的。繼續(xù)參照圖2,第二功能級別是會(huì)議成員資格級別。會(huì)議是一組端點(diǎn)和服務(wù)器,以及它們相關(guān)聯(lián)的會(huì)話。注意,會(huì)話的概念與會(huì)議的概念不同,結(jié)果,一個(gè)會(huì)話可以是一個(gè)以上會(huì)議的一部分。這允許端點(diǎn)(當(dāng)然,還有服務(wù)器)作為一個(gè)以上會(huì)議的一部分。所公開主題的實(shí)施例中的成員資格操作由CMCP協(xié)議中的功能執(zhí)行。成員資格操作包括多種操作(例如,用于進(jìn)入和離開會(huì)議的“加入”和“離開”操作),和用于指示端點(diǎn)或服務(wù)器提供具有所需特征的介質(zhì)流的消息。稍后詳細(xì)描述這些功能。最后,繼續(xù)參照圖2,第三功能級別處理訂閱。訂閱也是CMCP協(xié)議的一部分,并且在針對SIP (RFC3265,“會(huì)話發(fā)起協(xié)議(SIP)-特定事件通知”,該文獻(xiàn)的全部內(nèi)容通過引用結(jié)合于此)定義的訂閱/通知操作之后被建模。使用該機(jī)制以允許當(dāng)他們參加的會(huì)議的狀態(tài)改變(參與者已離開會(huì)議,等等)時(shí),能夠通知端點(diǎn)和服務(wù)器。現(xiàn)詳細(xì)描述CMCP協(xié)議及其功能。在所公開主題的一些實(shí)施例中,CMCP允許客戶機(jī)將會(huì)話與會(huì)議相關(guān)聯(lián)(ConferenceJoin (會(huì)議加入)和ConferenceLeave (會(huì)議離開))、接收有關(guān)會(huì)議的信息(Subscribe (訂閱)和Notify (通知))、以及請求會(huì)議中特定的流或特定種類的流(ConferenceShow (會(huì)議展不)和ConferenceShowSelected (會(huì)議展不選擇))。CMCP具有兩種操作模式:在端點(diǎn)和服務(wù)器之間或在兩個(gè)服務(wù)器之間。后一種模式被稱為級聯(lián)或“網(wǎng)狀”模式并且稍后將進(jìn)行討論。CMCP被設(shè)計(jì)成通過多種可能的方法傳輸。在一個(gè)實(shí)施例中,CMCP可在SIP上傳輸。在所公開主題的另一實(shí)施例中,CMCP在SCIP Info消息上傳輸(類似于SIP Info消息)。在一個(gè)實(shí)施例中,CMCP被編碼為XML并且其句法由XSD模式定義。當(dāng)然還可能是其他方式的編碼,包括二進(jìn)制編碼或壓縮編碼。在一些實(shí)施例中,當(dāng)CMCP被用于控制多媒體會(huì)話時(shí),會(huì)話建立協(xié)議協(xié)商CMCP的使用以及CMCP如何被傳輸。在該CMCP會(huì)話上傳輸?shù)乃蠧MCP消息描述與對應(yīng)的多媒體會(huì)話相關(guān)聯(lián)的會(huì)議。在所公開主題的一個(gè)實(shí)施例中,CMCP作為基于對話的請求/響應(yīng)協(xié)議操作。多個(gè)命令可被捆綁成具有execute-all (執(zhí)行所有)或abort-on-first-failure (首次失敗即中止)語義的單個(gè)請求。如果命令被捆綁,則回復(fù)也相應(yīng)地被捆綁。通過成功響應(yīng)或錯(cuò)誤狀態(tài)來應(yīng)答每個(gè)命令;如上所述,一些命令在它們的響應(yīng)中還攜帶附加信息。
ConferenceJoin方法請求多媒體會(huì)話與會(huì)議相關(guān)聯(lián)。它攜帶要加入的會(huì)議的名稱或其他合適標(biāo)識(shí)符作為參數(shù)。在基于端點(diǎn)的CMCP會(huì)話中,該參數(shù)通常從端點(diǎn)被攜帶至服務(wù)器。在一些實(shí)施例中,ConferenceJoin消息還可攜帶端點(diǎn)希望包括在會(huì)議中的端點(diǎn)的源的列表(如在會(huì)話級上所指定)。如果該列表不存在,則該端點(diǎn)的所有當(dāng)前和未來的源對會(huì)議可用。對ConferenceJoin命令的協(xié)議級回復(fù)僅攜帶命令是否被服務(wù)器成功地接收的指示。一旦服務(wù)器確定端點(diǎn)實(shí)際上是否可加入會(huì)議,它就向端點(diǎn)發(fā)送ConferenceAcc印t或ConferenceReject 命令。ConferenceJoin 是對話建立的命令。ConferenceAccept 和 ConferenceRe ject 命令在由ConferenceJoin建立的對話中被發(fā)送。如果ConferenceReject被發(fā)送,貝U它終止由ConferenceJoin創(chuàng)建的對話。ConferenceLeave命令終止由ConferenceJoin建立的對話,并且從對應(yīng)的會(huì)議中移除該端點(diǎn)的會(huì)話。在所公開主題的一個(gè)實(shí)施例中,由于歷史和文檔的原因,該命令攜帶離開的會(huì)議的名稱,然而,作為對話中(in-dialog)請求,它終止到曾由對話建立的ConferenceJoin所創(chuàng)建的會(huì)議的連接。ConferenceLeave攜帶指示為何離開會(huì)議的可任選的狀態(tài)代碼。ConferenceLeave命令可由端點(diǎn)或由服務(wù)器發(fā)送。Subscribe命令指示CMCP客戶機(jī)希望接收有關(guān)會(huì)議的動(dòng)態(tài)信息,并且在信息變化時(shí)進(jìn)行更新。當(dāng)Notify命令可用時(shí),Notify命令提供該信息。如上所述,Subscribe命令是在SIP SUBSCRIBE和NOTIFY上類似建模的。Subscribe命令攜帶資源、包、持續(xù)時(shí)間以及可任選的suppressIfMatch參數(shù)。Subscribe命令建立對話。對Subscribe的回復(fù)攜帶持續(xù)時(shí)間參數(shù),持續(xù)時(shí)間參數(shù)可調(diào)節(jié)Subscribe中請求的持續(xù)時(shí)間。在一個(gè)實(shí)施例中,在由Subscribe命令建立的對話中,Notify命令周期地從服務(wù)器發(fā)送至客戶機(jī),以攜帶Subscribe中請求的信息。Notify命令攜帶資源、包、eTag和事件參數(shù);包的主體被包含在事件參數(shù)中。.eTag是指示信息的版本的唯一標(biāo)簽——它被設(shè)置在Subscribe命令的suppressIfMatch參數(shù)中以表示“我具有版本X,如果版本X沒有變化就不要再次發(fā)送它了”。這概念來自RFC5389,“用于NAT (STUN)的會(huì)話遍歷實(shí)用工具”,該文獻(xiàn)的全部內(nèi)容通過引用結(jié)合于此。Unsubscribe命令終止由Subscribe命令創(chuàng)建的對話。在所公開主題的一個(gè)實(shí)施例中,定義了參與者和所選參與者CMCP包。參與者包分配會(huì)議中的參與者的列表和每個(gè)參與者的媒體源的列表。參與者包通知包含會(huì)議參與者的列表。列表中的每個(gè)參與者具有參與者UR1、人類可讀顯示文本、有關(guān)參與者的端點(diǎn)軟件的信息、以及參與者的源的列表。針對參與者列出的每個(gè)源指示:其源ID (用于將其介質(zhì)發(fā)送至端點(diǎn)的RTP SSRC);其次源ID (用于重傳和FEC的RTP SSRC);其媒體類型(音頻、視頻、應(yīng)用、文本,等);其名稱;以及通用屬性/值對。在一個(gè)實(shí)施例中,如果參與者具有相同媒體類型的若干相關(guān)的源,則源的空間位置被用作屬性。一個(gè)這樣的示例為具有多個(gè)相機(jī)的遠(yuǎn)程監(jiān)控端點(diǎn)。
參與者包通知可以是全部或部分更新。部分更新僅包含相對于先前通知的改變。在部分更新中,每個(gè)參與者標(biāo)注有是否向列表添加、更新或從其移除。所選參與者包分配會(huì)議的“被選擇的(所選)”參與者的列表。所選參與者是會(huì)議中目前重要的參與者,并且是迅速變化的。選擇哪些參與者涉及會(huì)議服務(wù)器的本地策略。在所公開主題的一個(gè)實(shí)施例中,它可以是會(huì)議中的最響亮的發(fā)言者。所選參與者包更新包含目前被選擇的參與者的列表以及先前被選擇的參與者(被稱為前“代(generation)”所選參與者)的列表。在所公開主題的一個(gè)實(shí)施例中,列出了 16個(gè)先前被選擇的參與者。正如本領(lǐng)域技術(shù)人員顯而易見的,還可使用任何其他更小或更大數(shù)量。每個(gè)所選參與者通過它的URI (對應(yīng)于參與者包中它的URI)標(biāo)識(shí),并且用數(shù)字列出它的代(從O計(jì)數(shù))。參與者在列表中出現(xiàn)最多一次;如果先前被選擇的參與者再次成為被選擇的,則將它移動(dòng)至列表的頂部。在所公開主題的一個(gè)實(shí)施例中,所選參與者包不支持部分更新;每個(gè)通知包含整個(gè)目前所選參與者列表。這是由于所選參與者列表的尺寸通常很小。在其它實(shí)施例中,可能使用類似參與者包中所使用的部分更新方案。在一個(gè)實(shí)施例中,ConferenceShow命令被用于請求將被發(fā)送至端點(diǎn)的特定(“靜態(tài)”)源,以及提供提示以幫助服務(wù)器了解端點(diǎn)將如何呈現(xiàn)源的可任選的參數(shù)。在所公開主題的一個(gè)實(shí)施例中,ConferenceShow可指定以下用于源的三種模式中的一種:“on”(總是發(fā)送);“auto”(僅在被選擇的情況下才發(fā)送);或“off”(即使被選擇,也不發(fā)送一即,黑名單)。如果從來沒有針對源的ConferenceShow命令被發(fā)送,則該源開始處于“auto”狀態(tài)。如在參與者包中傳遞的那樣,源由其(主)源ID值來指定。ConferenceShow還包括提供有關(guān)端點(diǎn)的需求和它希望如何接收源的能力的提示的可任選參數(shù)。在一個(gè)實(shí)施例中,參數(shù)包括:windoWSiZe,呈現(xiàn)視頻源的窗口的寬度和高度;framesPerSec,端點(diǎn)用以顯示源的每秒最大巾貞數(shù)量;pixelRate,端點(diǎn)希望解碼源的每秒最多像素;以及優(yōu)先級,端點(diǎn)請求的所有源中的源相對重要性。服務(wù)器可使用這些參數(shù)來確定如何使源成形以在給定網(wǎng)絡(luò)和系統(tǒng)限制的情況下向終端系統(tǒng)提供最佳整體體驗(yàn)。windowSize>framesPerSec和pixelRate參數(shù)僅對視頻(和屏幕/應(yīng)用捕獲)源有意義。在這里,由于H.264SVC提供了可在進(jìn)行編碼后調(diào)整該信號的若干方式,所以H.264SVC的能力開始起作用。這意味著服務(wù)器可直接使用這些參數(shù),并且不需要將它們轉(zhuǎn)發(fā)至發(fā)送端點(diǎn)。這些參數(shù)也可能被轉(zhuǎn)發(fā)至發(fā)送端點(diǎn)。多組參數(shù)可被合并為單組參數(shù)以用于傳播至另一服務(wù)器(對于網(wǎng)狀操作)。例如,如果從特定的服務(wù)器請求15fps和30fps,則那個(gè)服務(wù)器可將請求聚集為單個(gè)30fps請求。正如對本領(lǐng)域技術(shù)人員顯而易見的,任何數(shù)量和類型的信號特性可被用作ConferenceShow中的可任選的參數(shù)。在一些實(shí)施例中,還可能使用參數(shù)的范圍來代替不同值或使用它們的組合。2011 年 I 月 20 日提交的題為 “Participant-aware configuration for videoencoder (用于視頻編碼器的參與者知曉配置)”的共同轉(zhuǎn)讓的國際專利申請N0.PCT/US11/021864描述了用于合并這樣的參數(shù)的技術(shù),包括編碼器使用H.264SVC視頻碼標(biāo)準(zhǔn)的情況,該申請的全部內(nèi)容通過引用結(jié)合于此。在所公開主題的一個(gè)實(shí)施例中,每個(gè)ConferenceShow命令僅請求單個(gè)源。然而,如上所示,多個(gè)CMCP命令可被捆綁為單個(gè)CMCP請求。在所公開主題的一些實(shí)施例中,ConferenceShow命令僅被發(fā)送至服務(wù)器,而不發(fā)送至端點(diǎn)。利用建立會(huì)話的協(xié)議作出服務(wù)器到端點(diǎn)源選擇。在SIP的情況下,這可利用RFC5576 “Source-Specific Media Attributes in the Session Description Protocol(會(huì)話描述協(xié)議(SDP)中的源特定媒體屬性)”和互聯(lián)網(wǎng)草案“Media Source Selection inthe Session Description Protocol (SDP)(會(huì)話描述協(xié)議(SDP)中的媒體源選擇)” (draft-lennox-mmusic-sdp-source-selection-02,工作在進(jìn)行中,2010 年 10 月 21 日)作出,上述兩個(gè)文獻(xiàn)的全部內(nèi)容通過引用結(jié)合于此。在一些實(shí)施例中,ConferenceShowSelected命令被用于請求將動(dòng)態(tài)源發(fā)送至端點(diǎn),以及將被觀看的源的參數(shù)。它具有兩部分,視頻部分和音頻部分,可存在兩者中的任一個(gè)。ConferenceShowSelected命令的視頻部分被用于選擇將被動(dòng)態(tài)接收的視頻源。它包括用于觀看的視頻代的列表,以及有關(guān)所選參與者列表的元素如何映射至所請求的代的策略選擇。被選擇的代的列表指示哪些所選參與者代應(yīng)當(dāng)被發(fā)送至端點(diǎn)。在一個(gè)實(shí)施例中,每個(gè)代通過其數(shù)字標(biāo)識(shí)符來標(biāo)識(shí),并且狀態(tài)(“開啟(on)”或“關(guān)閉(off)”)指示端點(diǎn)是否希望接收那個(gè)代。此外,每個(gè)代列出其展示參數(shù),該展示參數(shù)可與靜態(tài)觀看的源的參數(shù)相同:windowSize、framesPerSec、pixelRate和優(yōu)先級。也可以使用不同的一組參數(shù)。在ConferenceShowSelected命令中未被列出的所選參與者代保持它們先前的狀態(tài)。如果從來沒有針對代的ConferenceShowSelected命令被發(fā)送,則初始值為“關(guān)閉(off)”。在一個(gè)實(shí)施例中,在代的列表之后,視頻部分還指定兩個(gè)策略值:自我觀看策略和動(dòng)態(tài)觀看策略。自我觀看策略指定,當(dāng)端點(diǎn)成為所選參與者時(shí),端點(diǎn)自己的源是否應(yīng)當(dāng)被路由給它。可用選擇為“隱藏自我”(端點(diǎn)的源決不被路由給它自己展示自我”(如果端點(diǎn)為所選參與者,則端點(diǎn)的源將總是被路由給它自己);以及“如果沒有其他則展示自己”(端點(diǎn)的源僅在它是會(huì)議中唯一的參與者時(shí)才被路由給它自己)。如果該端點(diǎn)在列表中,則替代地路由ConferenceShowSelected中所請求的后一代。動(dòng)態(tài)觀看策略指定端點(diǎn)正在靜態(tài)觀看的源是否應(yīng)當(dāng)被計(jì)入它正在觀看的代中。值為“如果不是靜態(tài)觀看則展示”和“即使靜態(tài)觀看也展示”;在一個(gè)實(shí)施例中,后者是默認(rèn)值。在前一種情況中,所選參與者列表中的后一代被路由用于ConferenceShowSelected命令。在“即使靜態(tài)觀看也展示”的情況下,如果源是所選參與者而且正在被靜態(tài)觀看,則它的優(yōu)先級為它的靜態(tài)和動(dòng)態(tài)優(yōu)先級中的最大值。在一個(gè)實(shí)施例中,ConferenceShowSelected命令僅被發(fā)送至服務(wù)器,而不發(fā)送給端點(diǎn)。在一個(gè)實(shí)施例中,ConferenceShowSelected命令的音頻部分被用于選擇將被動(dòng)態(tài)接收的音頻源。它包括要接收的動(dòng)態(tài)音頻源的數(shù)量和動(dòng)態(tài)音頻流選擇策略。它應(yīng)當(dāng)包括音頻選擇策略“ 1udestSpeaker (最響亮的發(fā)言者)”。ConferenceUpdate命令被用于改變ConferenceJoin中發(fā)送的參數(shù)。具體而言,如果端點(diǎn)希望改變它的哪一個(gè)源將被發(fā)送至特定的會(huì)議,則使用該命令。圖3示出了用于客戶發(fā)起會(huì)議加入和離開操作的端點(diǎn)(客戶機(jī))和服務(wù)器之間的CMCP協(xié)議的操作。在所公開主題的一個(gè)實(shí)施例中,我們假設(shè)系統(tǒng)軟件是建立在SDK上。消息交換示出傳輸側(cè)上涉及的方法(通過SDK調(diào)用的插入方法)以及接收側(cè)上觸發(fā)的回調(diào)(對SDK的插入回調(diào))。事務(wù)從客戶調(diào)用MembershipJoin開始,MembershipJoin觸發(fā)指示加入動(dòng)作的ConfHostJoined。值得注意的是,與所有此類消息一樣,所發(fā)送的“conf-join”消息被確認(rèn)。在某些點(diǎn),服務(wù)器發(fā)布指示參與者已被會(huì)議接受的ConfPartAccept。這將觸發(fā)“conf-acc印t”消息給客戶機(jī),該消息又將觸發(fā)用以指示加入操作的結(jié)論的MembershipJoinCompIeted0客戶機(jī)然后發(fā)布指示其需要離開會(huì)議的MembershipLeave。所產(chǎn)生的“conf-leave”消息觸發(fā)服務(wù)器側(cè)上的ConfHostLeft回調(diào)并觸發(fā)“ack”消息給客戶機(jī)?!癮ck”消息觸發(fā)離開操作已完成的指示。圖4示出了類似的場景。這里具有客戶機(jī)發(fā)起的加入和服務(wù)器發(fā)起的離開。離開操作的觸發(fā)是服務(wù)器側(cè)上的ConfParticipantBoot方法,該方法產(chǎn)生客戶機(jī)處的MembershipTerminated 回調(diào)。圖5示出了觀看特定源(在本情形下,是自我觀看)時(shí)涉及的操作。在這個(gè)實(shí)施例中,客戶機(jī)調(diào)用標(biāo)識(shí)源(本身)的MembershipShowRemoteSource,這產(chǎn)生“conf-show”消息° 該消息角蟲發(fā) ConferenceHandlerShowSource, ConferenceHandlerShowSource 指示該會(huì)議被安排成將該特定源傳送至客戶機(jī)。會(huì)議處理器將產(chǎn)生從服務(wù)器到能提供特定源的客戶機(jī)的SessionShowSource ;在該示例中,該客戶機(jī)為展示請求的始發(fā)者。SessionShowSource將創(chuàng)建“session-1nitiate (會(huì)話發(fā)起)”消息,該消息將觸發(fā)客戶機(jī)處的SessionShowLocalSource以開始發(fā)送相關(guān)流。在一些實(shí)施例中,媒體發(fā)送不在加入會(huì)議時(shí)開始;服務(wù)器產(chǎn)生展示命令給客戶機(jī)時(shí)它才真正開始。我們現(xiàn)在檢查級聯(lián)或網(wǎng)狀配置中的CMCP的操作。在這種情況下,如圖1所示,在兩個(gè)端點(diǎn)的路徑中存在一個(gè)以上服務(wù)器。一般而言,可包括任何數(shù)量的服務(wù)器。在一個(gè)實(shí)施例中,當(dāng)包括一個(gè)以上服務(wù)器時(shí),我們假設(shè)每個(gè)服務(wù)器已經(jīng)通過信令的方式(本文未詳述)完全知曉系統(tǒng)的拓?fù)?。一個(gè)簡單方式是通過靜態(tài)配置提供這個(gè)信息。替代的方法包括通過在創(chuàng)建它的每個(gè)步驟期間傳輸圖表信息的動(dòng)態(tài)配置。我們進(jìn)一步假設(shè),連接圖是沒有回路的,并且存在將每個(gè)端點(diǎn)連接到每個(gè)其它端點(diǎn)的路徑。所有這些限制被放寬的替代實(shí)施例也是可能的,但是為了考慮路由側(cè)的作用而增加了復(fù)雜性。級聯(lián)拓?fù)湫畔⒓缺挥糜谕ㄟ^多個(gè)服務(wù)器將媒體從一個(gè)端點(diǎn)路由至另一個(gè)端點(diǎn),還用于按需在系統(tǒng)組件之間傳播CMCP協(xié)議消息。我們將采用圖6中所示的會(huì)議配置作為示例,來描述用于級聯(lián)配置的CMCP協(xié)議的操作。會(huì)議600包括被稱為“SVCS A”到“SVCS C”的每個(gè)具有兩個(gè)端點(diǎn)120 (Al和A2、BI和B2、Cl和C2)的三個(gè)服務(wù)器110。端點(diǎn)以它們被分配的SVCS服務(wù)器的字母命名(例如,對于SVCS A,為Al和A2)。特定的配置不旨在限制而是僅作為示例使用;所提供的描述可應(yīng)用于任何拓?fù)?。圖7示出了當(dāng)需要本地展示命令時(shí)CMCP的操作。在這個(gè)示例中,我們假設(shè)端點(diǎn)Al希望觀看端點(diǎn)A2。為了視覺清楚起見,我們移除了組件之間的會(huì)話連接;這些會(huì)話連接與圖6中所示的相同。直箭頭線(例如,710)指示CMCP消息的傳輸。彎箭頭線(例如,712)指示媒體數(shù)據(jù)的傳輸。作為第一步驟,端點(diǎn)Al向其SVCS A發(fā)起SH0W(A2)命令710。SVCS A知道端點(diǎn)A2被分配給它,并且它將SH0W(A2)命令711轉(zhuǎn)發(fā)給端點(diǎn)A2。在收到后,端點(diǎn)A2開始將其媒體712發(fā)送給其SVCS A0最后,SVCS A又將媒體713轉(zhuǎn)發(fā)給端點(diǎn)Al。我們注意到,SH0W()命令是如何通過會(huì)議傳播到正確的發(fā)送者(經(jīng)由SVCS A)。圖8示出了類似的場景,但現(xiàn)在針對遠(yuǎn)程源。在該示例中,我們假設(shè)端點(diǎn)Al想要觀看來自端點(diǎn)B2的媒體。再次,作為第一步驟,端點(diǎn)Al向其相關(guān)聯(lián)的SVCS A發(fā)布SH0W(B2)命令810。SHOffO命令將被傳播至端點(diǎn)B2。這通常伴隨消息SHOW(B2) 811從SVCS A傳播到SVCS B,以及SHOW(B2) 812從SVCS B傳播到端點(diǎn)B2而發(fā)生。一經(jīng)接收,端點(diǎn)B2就開始向SVCS B發(fā)送媒體813,SVCS B通過消息814將它轉(zhuǎn)發(fā)給SVCS A,SVCS A又通過消息815轉(zhuǎn)發(fā)給最初請求它的端點(diǎn)Al。此外,我們注意到SHOWO命令和相關(guān)聯(lián)的媒體如何通過會(huì)議被路由。由于服務(wù)器知曉會(huì)議拓?fù)?,所以它們總是能向適當(dāng)?shù)亩它c(diǎn)路由SHOW命令請求。同樣地,從端點(diǎn)發(fā)送的媒體數(shù)據(jù)通過相關(guān)聯(lián)的服務(wù)器被路由至正確的服務(wù)器和端點(diǎn)?,F(xiàn)假設(shè)端點(diǎn)A2還想要看B2。A2向SVCS A發(fā)布SH0W(B2)命令。這一次,SHOW請求不必傳播回SVCS B(和端點(diǎn)B),因?yàn)镾VCS A已經(jīng)從B2接收流。SVCS A然后可直接開始向端點(diǎn)A2轉(zhuǎn)發(fā)它的副本,作為817。如果端點(diǎn)A2向SVCS A提交與端點(diǎn)Al不同的請求(例如,不同的空間分辨率),則SVCS A可合并兩個(gè)請求的性能參數(shù)并將它們傳播回B2,以便選擇適當(dāng)?shù)木幋a器配置。這稱為“展示聚集”。聚集可能以將兩個(gè)不同參數(shù)合并成一個(gè)的形式(例如,如果一個(gè)請求QVGA而另一個(gè)請求VGA,則服務(wù)器將它們合并為VGA分辨率請求),或者它也可包括范圍。替代的聚集策略可權(quán)衡不同的系統(tǒng)性能參數(shù)。例如,假設(shè)服務(wù)器接收一個(gè)720p分辨率請求和5個(gè)180p請求。代替將它們合并為720p請求,可選擇360p分辨率并且使請求720p的端點(diǎn)升級。如對本領(lǐng)域技術(shù)人員顯而易見的,其他類型的聚集是可能的,包括多數(shù)表決、平均值或中值、最小值和最大值等。如果服務(wù)器確定需要新配置,貝U它發(fā)送新的SessionShowSource命令(還參照圖5)。在另一或相同實(shí)施例中,如果可能,服務(wù)器自身可執(zhí)行這種自適應(yīng)。圖9示出了具有所選參與者的場景(動(dòng)態(tài)SHOW)。在這個(gè)示例中,端點(diǎn)事先不知道它們想要觀看哪個(gè)參與者,因?yàn)檫@是由系統(tǒng)動(dòng)態(tài)確定的??赡芤匀舾煞绞竭M(jìn)行確定。在一個(gè)實(shí)施例中,每個(gè)服務(wù)器可通過檢查接收的媒體流或包含在流中的元數(shù)據(jù)(例如,音頻音量指示器)來自己進(jìn)行確定。在另一實(shí)施例中,可通過諸如單獨(dú)的音頻橋之類的另一系統(tǒng)組件來進(jìn)行確定。在又一實(shí)施例中,不同的標(biāo)準(zhǔn)(例如,運(yùn)動(dòng))可用于選擇。繼續(xù)參照圖9,在第一步驟中,我們假設(shè)端點(diǎn)Al、A2、Cl和B2向它們相應(yīng)的SVCS發(fā)送SHOW(Selected)命令910。在一個(gè)實(shí)施例中,SVCS利用音頻級別指示或其他方法確定所選參與者是C2。在另一實(shí)施例中,通過處理音頻流的音頻橋提供信息。在替代的實(shí)施例中,有可能選擇一個(gè)以上端點(diǎn)(例如,N個(gè)最近發(fā)言者)。在確定被選擇的端點(diǎn)后,SVCS A、B和C專門針對端點(diǎn)C2傳輸特定SH0W(C2)消息911。利用對會(huì)議拓?fù)涞闹獣詠磙D(zhuǎn)發(fā)消息。這樣,SVCS A向SVCS B發(fā)送其請求,SVCS B向SVCS C發(fā)送其請求,以及SVCS C向端點(diǎn)C2發(fā)送其請求。然后,媒體數(shù)據(jù)從端點(diǎn)C2通過912流向SVCS C,之后通過913流向端點(diǎn)Cl和SVCS B、通過914流向端點(diǎn)B2和SVCS A,以及最后通過915流向端點(diǎn)Al和A2。ConferenceInvite或ConferenceRefer命令被用于服務(wù)器到端點(diǎn)的通信以建議端點(diǎn)加入特定會(huì)議。上述用于控制和管理多點(diǎn)會(huì)議的方法可被實(shí)現(xiàn)為使用計(jì)算機(jī)可讀指令并且物理存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)中的計(jì)算機(jī)軟件。計(jì)算機(jī)軟件可使用任何合適的計(jì)算機(jī)語言來編碼。軟件指令可在多種類型的計(jì)算機(jī)上執(zhí)行。例如,圖10示出了適合于實(shí)現(xiàn)本發(fā)明的實(shí)施例的計(jì)算機(jī)系統(tǒng)500.
圖10中所示的計(jì)算機(jī)系統(tǒng)1000的組件本質(zhì)上是示例性的并且不旨在暗示關(guān)于實(shí)現(xiàn)本發(fā)明的實(shí)施例的計(jì)算機(jī)軟件的使用范圍或功能范圍的任何限制。不應(yīng)當(dāng)將組件的配置解釋為具有與在計(jì)算機(jī)系統(tǒng)的示例性實(shí)施例中示出的組件的任何一個(gè)或組合有關(guān)的任何依賴或要求。計(jì)算機(jī)系統(tǒng)1000可具有包括集成電路、印刷電路板、小手持設(shè)備(例如,移動(dòng)電話或PDA)、個(gè)人計(jì)算機(jī)或超級計(jì)算機(jī)的多種物理形式。計(jì)算機(jī)系統(tǒng)1000包括顯示器1032、一個(gè)或多個(gè)輸入設(shè)備1033 (例如,小鍵盤、鍵盤、鼠標(biāo)、輸入筆等等)、一個(gè)或多個(gè)輸出設(shè)備1034 (例如,揚(yáng)聲器)、一個(gè)或多個(gè)存儲(chǔ)設(shè)備1035、多種類型的存儲(chǔ)介質(zhì)1036。系統(tǒng)總線1040連接各種各樣的子系統(tǒng)。如本領(lǐng)域技術(shù)人員所理解的,“總線”是指服務(wù)于共同功能的多個(gè)數(shù)字信號線。系統(tǒng)總線1040可以是包括存儲(chǔ)器總線、外圍總線和利用任何多種總線體系結(jié)構(gòu)的本地總線的若干類型中任何一種的總線結(jié)構(gòu)。作為示例而非限制,這種體系結(jié)構(gòu)包括工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(ISA)總線、增強(qiáng)ISA (EISA)總線、微通道體系結(jié)構(gòu)(MCA)總線、視頻電子標(biāo)準(zhǔn)協(xié)會(huì)本地(VLB)總線、外圍組件互連(PCI)總線、PC1-Express總線(PC1-X)和加速圖形端口(AGP)總線。處理器1001 (也稱為中央處理單元或CPU)任選地包含用于臨時(shí)本地存儲(chǔ)指令、數(shù)據(jù)或計(jì)算機(jī)地址的高速緩存存儲(chǔ)器單元1002。處理器1001耦合至包括存儲(chǔ)器1003的存儲(chǔ)設(shè)備。存儲(chǔ)器1003包括隨機(jī)存取存儲(chǔ)器(RAM) 1004和只讀存儲(chǔ)器(ROM) 1005。如本領(lǐng)域已知,R0M1005用作單向地向處理器1001傳輸數(shù)據(jù)和指令,以及RAM1004通常用于以雙向的方式傳遞數(shù)據(jù)和指令。這些類型存儲(chǔ)器都可包括以下所述的任何合適的計(jì)算機(jī)可讀媒體。固定存儲(chǔ)1008還任選地經(jīng)由存儲(chǔ)控制單元1007雙向耦合至處理器1001。它提供附加的數(shù)據(jù)存儲(chǔ)能力并且還可包括以下所述的任何計(jì)算機(jī)可讀媒體。存儲(chǔ)1008可被用于存儲(chǔ)操作系統(tǒng) 1009、EXEC1010、應(yīng)用程序1012、數(shù)據(jù)1011等等,并且通常為比主存儲(chǔ)慢的次級存儲(chǔ)介質(zhì)(例如,硬盤)。應(yīng)當(dāng)理解,在適當(dāng)?shù)那闆r下,保存在存儲(chǔ)1008中的信息可按照標(biāo)準(zhǔn)方式被納入作為存儲(chǔ)器1003中的虛擬存儲(chǔ)器。處理器1001也耦合至例如圖形控制1021、視頻接口 1022、輸入接口 1023、輸出接口、存儲(chǔ)接口的各種接口,并且這些接口又耦合至適當(dāng)?shù)脑O(shè)備。一般而言,輸入/輸出設(shè)備可為以下項(xiàng)中的任一種:視頻顯示器、軌跡球、鼠標(biāo)、鍵盤、話筒、觸敏顯示器、換能器讀卡器、磁或紙帶讀取器、平板、輸入筆、語音或手寫識(shí)別器、生物識(shí)別讀取器或其他計(jì)算機(jī)。處理器1001可利用網(wǎng)絡(luò)接口 1020耦合至另一計(jì)算機(jī)或電信網(wǎng)絡(luò)1030。采用這種網(wǎng)絡(luò)接口1020,可預(yù)期CPU1001可從網(wǎng)絡(luò)1030接收信息,或可在執(zhí)行上述方法的過程中將信息輸出至網(wǎng)絡(luò)。此外,本公開的方法實(shí)施例可單獨(dú)地在CPU1001上執(zhí)行或可在諸如因特網(wǎng)之類的網(wǎng)絡(luò)1030上協(xié)同遠(yuǎn)程CPU1001來執(zhí)行,該遠(yuǎn)程CPU1001共享該處理的一部分。
根據(jù)各個(gè)實(shí)施例,當(dāng)在網(wǎng)絡(luò)環(huán)境中時(shí),即,當(dāng)計(jì)算機(jī)系統(tǒng)1000連接至網(wǎng)絡(luò)1030時(shí),計(jì)算機(jī)系統(tǒng)1000可與也連接至網(wǎng)絡(luò)1030的其他設(shè)備通信。通信可經(jīng)由網(wǎng)絡(luò)接口 1020向和從計(jì)算機(jī)系統(tǒng)1000發(fā)送。例如,傳入的通信,例如,來自另一設(shè)備的以一個(gè)或多個(gè)分組形式的請求或響應(yīng),可在網(wǎng)絡(luò)接口 1020處從網(wǎng)絡(luò)1030接收并且可存儲(chǔ)在存儲(chǔ)器1003的被選擇的部分中用于處理。傳出的通信,例如,對另一設(shè)備的仍以一個(gè)或多個(gè)分組形式的請求或響應(yīng),也可以存儲(chǔ)在存儲(chǔ)器1003的被選擇的部分中并且在網(wǎng)絡(luò)接口 1020處送往網(wǎng)絡(luò)1030。處理器1001可訪問存儲(chǔ)在存儲(chǔ)器1003中的這些通信分組以用于處理。此外,本公開的實(shí)施例還涉及具有計(jì)算機(jī)可讀介質(zhì)的計(jì)算機(jī)存儲(chǔ)產(chǎn)品,其上具有用于執(zhí)行多種計(jì)算機(jī)實(shí)現(xiàn)的操作的計(jì)算機(jī)代碼。介質(zhì)和計(jì)算機(jī)代碼可以那些針對本發(fā)明的目的而專門設(shè)計(jì)和構(gòu)造,或它們可以是計(jì)算機(jī)軟件領(lǐng)域的普通技術(shù)人員已知并且可獲得的類型。計(jì)算機(jī)可讀介質(zhì)的示例包括,但不限于:諸如硬盤、軟盤和磁帶之類的磁介質(zhì);諸如CD-ROM和全息設(shè)備之類的光介質(zhì);諸如光軟盤之類的磁光介質(zhì);以及諸如專用集成電路(ASIC)、可編程邏輯器件(PLD)以及ROM和RAM設(shè)備之類的專門配置成存儲(chǔ)和執(zhí)行程序代碼的硬件設(shè)備。計(jì)算機(jī)代碼的示例包括例如由編譯器產(chǎn)生的機(jī)器碼,和包含由計(jì)算機(jī)利用解釋器執(zhí)行的更高等級代碼的文件。本領(lǐng)域普通技術(shù)人員也應(yīng)當(dāng)理解,與本公開的主題有關(guān)的術(shù)語“計(jì)算機(jī)可讀介質(zhì)”不包含傳輸介質(zhì)、載波或其他瞬態(tài)信號。作為示例而非限制,具有體系結(jié)構(gòu)1000的計(jì)算機(jī)系統(tǒng)可提供作為處理器1001執(zhí)行具體化為諸如存儲(chǔ)器1003之類的一個(gè)或多個(gè)有形的計(jì)算機(jī)可讀介質(zhì)的結(jié)果的功能。實(shí)現(xiàn)本公開的各個(gè)實(shí)施例的軟件可存儲(chǔ)在存儲(chǔ)器1003中并且可由處理器1001執(zhí)行。根據(jù)特定需要,計(jì)算機(jī)可讀介質(zhì)可包括一個(gè)或多個(gè)存儲(chǔ)器設(shè)備。存儲(chǔ)器1003可從諸如大容量存儲(chǔ)器1035之類的一個(gè)或多個(gè)其他計(jì)算機(jī)可讀介質(zhì)或經(jīng)由通信接口從一個(gè)或多個(gè)其他源讀取軟件。軟件可使得處理器1001執(zhí)行本文所描述的特定進(jìn)程或特定進(jìn)程的特定部分,包括定義存儲(chǔ)在存儲(chǔ)器1003中的數(shù)據(jù)結(jié)構(gòu)和根據(jù)軟件定義的進(jìn)程修改這樣的數(shù)據(jù)結(jié)構(gòu)。作為附加或者作為替代,計(jì)算機(jī)系統(tǒng)可提供作為硬連接的或以其他方式具體化在電路中的邏輯的結(jié)果的功能,該邏輯可代替軟件或與軟件一起操作以執(zhí)行本文所述的特定進(jìn)程或特定進(jìn)程的特定部分。在適當(dāng)?shù)那闆r下,對軟件的提及可涵蓋邏輯,反之亦然。在適當(dāng)?shù)那闆r下,對計(jì)算機(jī)可讀介質(zhì)的提及可涵蓋存儲(chǔ)用于執(zhí)行的軟件的電路(例如,集成電路(1C))、具體化用于執(zhí)行的邏輯的電路,或以上兩種電路。本公開包括硬件和軟件的任何合適組合。盡管本公開內(nèi)容描述了若干示例性實(shí)施例,但是存在落在所公開主題的范圍內(nèi)的變化、置換、和各種等價(jià)替換。還應(yīng)當(dāng)注意,存在實(shí)現(xiàn)所公開主題的方法和裝置的多種替代方式。
權(quán)利要求
1.一種視聽通信系統(tǒng),包括: 一個(gè)或多個(gè)端點(diǎn),用于通過通信網(wǎng)絡(luò)發(fā)送或接收媒體數(shù)據(jù);以及 一個(gè)或多個(gè)服務(wù)器,通過通信網(wǎng)絡(luò)耦合至所述一個(gè)或多個(gè)端點(diǎn)并且互相耦合, 其中,所述一個(gè)或多個(gè)服務(wù)器被配置成: 在直接或通過所述一個(gè)或多個(gè)服務(wù)器接收到來自所述一個(gè)或多個(gè)端點(diǎn)中第一端點(diǎn)的提供來自所述一個(gè)或多個(gè)端點(diǎn)中第二端點(diǎn)的媒體數(shù)據(jù)的請求之后,將所述請求直接或通過所述一個(gè)或多個(gè)服務(wù)器轉(zhuǎn)發(fā)至所述一個(gè)或多個(gè)端點(diǎn)中的所述第二端點(diǎn);以及 在直接或通過所述一個(gè)或多個(gè)服務(wù)器接收到來自所述一個(gè)或多個(gè)端點(diǎn)中所述第二端點(diǎn)的媒體數(shù)據(jù)之后,將所述媒體數(shù)據(jù)直接或通過所述一個(gè)或多個(gè)服務(wù)器轉(zhuǎn)發(fā)至所述一個(gè)或多個(gè)端點(diǎn)中的所述第一端點(diǎn), 其中,所述一個(gè)或多個(gè)端點(diǎn)被配置成: 在接收到來自一個(gè)或多個(gè)端點(diǎn)中的一個(gè)端點(diǎn)的提供媒體數(shù)據(jù)的請求之后,開始直接或通過所述一個(gè)或多個(gè)服務(wù)器將媒體數(shù)據(jù)發(fā)送至所述一個(gè)或多個(gè)端點(diǎn)中請求所述媒體數(shù)據(jù)的所述一個(gè)端點(diǎn)。
2.如權(quán)利要求1所述的系統(tǒng),其特征在于,根據(jù)由所述一個(gè)或多個(gè)服務(wù)器保存的路由信息執(zhí)行請求的轉(zhuǎn)發(fā)和媒體數(shù)據(jù)的轉(zhuǎn)發(fā)。
3.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述請求包括一個(gè)或多個(gè)媒體參數(shù),并且其中所述一個(gè)或多個(gè)端點(diǎn)進(jìn)一步被配置成在接收到所述請求后利用所述參數(shù)調(diào)節(jié)它們發(fā)送的媒體數(shù)據(jù)。`
4.如權(quán)利要求3所述的系統(tǒng),其特征在于,所述一個(gè)或多個(gè)媒體參數(shù)包括窗口尺寸、t匕特率、像素率、以及每秒幀數(shù)中的至少一個(gè)。
5.如權(quán)利要求3所述的系統(tǒng),其特征在于,所述一個(gè)或多個(gè)服務(wù)器被配置成將來自要被轉(zhuǎn)發(fā)至相同端點(diǎn)的請求的多組已接收媒體參數(shù)合并為單組媒體參數(shù),所述單組媒體參數(shù)而后被轉(zhuǎn)發(fā)至所述端點(diǎn)。
6.一種視聽通信系統(tǒng),包括: 一個(gè)或多個(gè)端點(diǎn),用于通過通信網(wǎng)絡(luò)發(fā)送或接收媒體數(shù)據(jù);以及 一個(gè)或多個(gè)服務(wù)器,通過通信網(wǎng)絡(luò)耦合至所述一個(gè)或多個(gè)端點(diǎn)并且互相耦合, 其中,所述一個(gè)或多個(gè)服務(wù)器被配置成: 在直接或通過所述一個(gè)或多個(gè)服務(wù)器接收到來自所述一個(gè)或多個(gè)端點(diǎn)中第一端點(diǎn)的提供來自所述一個(gè)或多個(gè)端點(diǎn)中所選子集的媒體數(shù)據(jù)的請求之后,直接或通過所述一個(gè)或多個(gè)服務(wù)器應(yīng)用所述選擇并將當(dāng)前接收的來自所述一個(gè)或多個(gè)端點(diǎn)中所選子集的媒體數(shù)據(jù)轉(zhuǎn)發(fā)給請求所述媒體數(shù)據(jù)的所述一個(gè)或多個(gè)端點(diǎn)中的所述第一端點(diǎn)。
7.如權(quán)利要求6所述的系統(tǒng),其特征在于,所述一個(gè)或多個(gè)服務(wù)器進(jìn)一步被配置成在接收到請求后,將所述請求轉(zhuǎn)發(fā)至與所述一個(gè)或多個(gè)服務(wù)器耦合的其他服務(wù)器。
8.如權(quán)利要求7所述的系統(tǒng),其特征在于,利用由所述一個(gè)或多個(gè)服務(wù)器保存的路由信息執(zhí)行所述請求的轉(zhuǎn)發(fā)。
9.如權(quán)利要求6所述的系統(tǒng),其特征在于,所述一個(gè)或多個(gè)服務(wù)器進(jìn)一步被配置成計(jì)算所述一個(gè)或多個(gè)端點(diǎn)的所選子集。
10.如權(quán)利要求9所述的系統(tǒng),其特征在于,所述計(jì)算操作計(jì)算一個(gè)或多個(gè)最近活動(dòng)的發(fā)言者的列表。
11.如權(quán)利要求6所述的系統(tǒng),其特征在于,所述一個(gè)或多個(gè)服務(wù)器進(jìn)一步被配置成從外部裝置獲得所述所選子集的計(jì)算。
12.如權(quán)利要求11所述的系統(tǒng),其特征在于,所述外部裝置為音頻橋。
13.如權(quán)利要求6所述的系統(tǒng),其特征在于,所述請求包括一個(gè)或多個(gè)選擇參數(shù)。
14.如權(quán)利要求13所述的系統(tǒng),其特征在于,所述選擇參數(shù)包括最近活動(dòng)的發(fā)言者的數(shù)量。
15.一種用于視聽通信的方法,所述方法包括在服務(wù)器處: 直接或通過另一服務(wù)器接收來自第一端點(diǎn)的提供來自第二端點(diǎn)的媒體數(shù)據(jù)的請求,以及 直接或通過另一服務(wù)器向所述第二端點(diǎn)轉(zhuǎn)發(fā)所述請求, 直接或通過另一服務(wù)器接收來自第二端點(diǎn)的媒體數(shù)據(jù),以及 直接或通過所述一個(gè)或多個(gè) 服務(wù)器向所述第一端點(diǎn)轉(zhuǎn)發(fā)所述媒體數(shù)據(jù)。
16.如權(quán)利要求15所述的方法,所述方法進(jìn)一步包括在第二端點(diǎn)處: 接收來自所述第一端點(diǎn)的提供媒體數(shù)據(jù)的請求,以及 直接或通過所述一個(gè)或多個(gè)服務(wù)器向所述第一端點(diǎn)發(fā)送所述媒體數(shù)據(jù)。
17.如權(quán)利要求15所述的方法,其特征在于,根據(jù)由所述服務(wù)器保存的路由信息執(zhí)行所述請求的轉(zhuǎn)發(fā)和媒體數(shù)據(jù)的轉(zhuǎn)發(fā)。
18.如權(quán)利要求16所述的方法,其特征在于,所述請求包括一個(gè)或多個(gè)媒體參數(shù),以及其中所述第二端點(diǎn)進(jìn)一步被配置成在接收到所述請求后利用所述參數(shù)調(diào)節(jié)它們所發(fā)送的媒體數(shù)據(jù)。
19.如權(quán)利要求18所述的方法,其特征在于,所述一個(gè)或多個(gè)媒體參數(shù)包括窗口尺寸、比特率、像素率、以及每秒幀數(shù)中的一個(gè)或多個(gè)。
20.如權(quán)利要求18所述的方法,其特征在于,所述服務(wù)器被配置成將來自要被轉(zhuǎn)發(fā)至第二端點(diǎn)的請求的多組已接收媒體參數(shù)合并為單組媒體參數(shù),并且而后將所述單組媒體參數(shù)轉(zhuǎn)發(fā)至所述端點(diǎn)。
21.一種用于視聽通信的方法,所述方法包括在服務(wù)器處: 直接或通過另一服務(wù)器接收來自第一端點(diǎn)的提供來自端點(diǎn)的所選子集的媒體數(shù)據(jù)的請求, 應(yīng)用所述選擇,以及 直接或通過所述一個(gè)或多個(gè)服務(wù)器將來自當(dāng)前接收的端點(diǎn)的所選子集的媒體數(shù)據(jù)轉(zhuǎn)發(fā)至所述第一端點(diǎn)。
22.如權(quán)利要求21所述的方法,其特征在于,所述服務(wù)器進(jìn)一步被配置成在接收到請求后,將所述請求轉(zhuǎn)發(fā)至與所述服務(wù)器連接的其他服務(wù)器。
23.如權(quán)利要求22所述的方法,其特征在于,利用由所述服務(wù)器保存的路由信息執(zhí)行所述請求的轉(zhuǎn)發(fā)。
24.如權(quán)利要求21所述的方法,其特征在于,所述服務(wù)器進(jìn)一步被配置成計(jì)算端點(diǎn)的所選子集。
25.如權(quán)利要求24所述的方法,其特征在于,所述計(jì)算操作計(jì)算一個(gè)或多個(gè)最近活動(dòng)的發(fā)言者的列表。
26.如權(quán)利要求21所述的方法,其特征在于,所述一個(gè)或多個(gè)服務(wù)器進(jìn)一步被配置成從外部裝置獲得所選子集的計(jì)算。
27.如權(quán)利要求26所述的方法,其特征在于,所述外部裝置為音頻橋。
28.如權(quán)利要求21所述的方法,其特征在于,所述請求包括一個(gè)或多個(gè)選擇參數(shù)。
29.如權(quán)利要求28所述的方法,其特征在于,所述選擇參數(shù)包括最近活動(dòng)的發(fā)言者的數(shù)量。
30.一種包括一組指令的非瞬態(tài)計(jì)算機(jī)可讀介質(zhì),所述指令用于執(zhí)行權(quán)利要求15 - 29中的至少一項(xiàng)所 述的方法。
全文摘要
本文公開了用于控制和管理多點(diǎn)會(huì)議的系統(tǒng)和方法,其中端點(diǎn)可選擇性地且單獨(dú)地管理將被傳輸至它們的流。描述允許發(fā)送端點(diǎn)收集來自其他接收端點(diǎn)的信息,或聚集來自服務(wù)器的此類信息,并且將它們處理為而后用于其操作的一組操作參數(shù)的技術(shù)。描述用于執(zhí)行會(huì)議級展示、按需展示、展示參數(shù)聚集和傳播、通知的傳播的算法。在展示請求中標(biāo)識(shí)用于描述源的參數(shù)包括比特率、窗口尺寸、像素率和每秒幀數(shù)。
文檔編號H04N7/14GK103109528SQ201180045002
公開日2013年5月15日 申請日期2011年9月20日 優(yōu)先權(quán)日2010年9月20日
發(fā)明者S·希伯利, J·倫諾克斯, S·奈爾, B·皮特昌蒂, R·薩西恩, M·薩克希納 申請人:維德約股份有限公司