專利名稱:基于混合器的實時傳輸協(xié)議數(shù)據(jù)包配置方法
技術領域:
本發(fā)明涉及通信領域,并且特別地,涉及一種基于混合器的實時傳輸協(xié)議(Real-time Transport Protocol,RTP)數(shù)據(jù)包配置方法。
背景技術:
互聯(lián)網(wǎng)Internet已經(jīng)成為當今信息社會的最重要的信息基礎設施,同時,互聯(lián)網(wǎng)的主要應用類型也在不斷變化,最初的以遠程登陸(telnet)為主的應用在經(jīng)歷了以文件傳輸(ftp)、主頁瀏覽(web)應用為主的熱潮以后,正在逐漸向以音頻、視頻為主的實時多媒體應用發(fā)展。
實時傳輸協(xié)議是為多媒體數(shù)據(jù)的實時傳輸而設計的傳輸協(xié)議,用于端到端的數(shù)據(jù)傳輸,具有復用和解復用功能,RTP與下層協(xié)議無關,任何可以建立端對端連接的協(xié)議都可以被RTP利用,RTP協(xié)議通常運行于用戶數(shù)據(jù)報(UDP)之上,也可以基于AAL5/ATM或IPX等其他無連接的通信協(xié)議。傳輸過程中,通常利用底層的UDP協(xié)議對實時音/視頻數(shù)據(jù)進行多播或單播,從而實現(xiàn)多點或單點的信息傳輸。網(wǎng)絡中多點之間的RTP數(shù)據(jù)傳輸、通信量的監(jiān)控、和身份識別功能由實時傳輸控制協(xié)議(Real-time Transport ControlProtocol,RTCP)來完成控制信息的管理。
在工作時,RTP協(xié)議從上層接收流媒體信息碼流(如H.263),裝配成RTP數(shù)據(jù)包發(fā)送給下層,下層協(xié)議提供RTP和RTCP的分流,例如在UDP中,RTP使用一個偶數(shù)號端口,則相應的RTCP使用其后的奇數(shù)號端口。RTP數(shù)據(jù)包沒有長度限制,它的最大包長只受下層協(xié)議的限制。
如圖1所示,RTP利用混合器(mixer)和解釋器(translator)來完成實時數(shù)據(jù)的傳輸,s1、s2、s3、和s4為數(shù)據(jù)源的發(fā)送端,r1為最終RTP包流的接收端。
其中,混合器是從一個或多個源中接收RTP包的中間系統(tǒng),它將接收的這些包混合,并形成一個新的RTP包,一般來說,由于多個輸入流并不同步,所以混合器需要對這些輸入源進行時間判斷,然后形成混合流自己的時間。這樣,一個混合器就可以作為一個同步源。
具體來說,混合器從由一個或多個源發(fā)出的RTP包中提取內(nèi)容,并將它們通過某種方式混合,然后從一個新的RTP包中送出。在這個過程中,數(shù)據(jù)格式可能被改變,而且由于多個輸入源的計時一般不會同步,所以混合器會對各個流的計時做出調(diào)整,并為組合流生成一個新的計時。在RTP包組合好后,混合器將被標識成它所產(chǎn)生所有數(shù)據(jù)包的同步源。在該過程中,混合器如何組合數(shù)據(jù)格式如何調(diào)整計時器是關鍵。
此外,解釋器(又可稱為轉(zhuǎn)換器)是通過完整的同步源標識符轉(zhuǎn)發(fā)RTP數(shù)據(jù)包的中間系統(tǒng)。轉(zhuǎn)換器的主要作用是轉(zhuǎn)發(fā)RTP包而不改變各個數(shù)據(jù)包的同步源標識符,例如,轉(zhuǎn)換器可以不執(zhí)行混頻,將多播復制到單播的重復裝置以及防火墻中應用層的過濾器。
圖2示出了RTP中混合器的應用。在圖2中,E表示終端,T表示解釋器,M表示混合器。如圖所示,解釋器T2同時收到E6、M1、E4、M3發(fā)來的數(shù)據(jù),T2對數(shù)據(jù)不做處理,直接將所有的數(shù)據(jù)轉(zhuǎn)發(fā)給終端E7。使用者可以在不同的實時媒體傳輸應用中組合使用混合器和解釋器,以滿足不同的應用需要。
在相關技術中,來自同一源的數(shù)據(jù)流通過混合器時被加上新的SSRC(Synchronization Source,同步源)標識,之后直接送到接收端,這樣處理存在以下缺陷(1)無線連接脆弱,誤碼率高;(2)無線連接的帶寬較?。?3)單元內(nèi)的有效帶寬動態(tài)改變,降低了系統(tǒng)的性能。
然而,目前尚未提出能夠在混合器中對RTP數(shù)據(jù)包進行處理、使得接收端容易地識別來自不同發(fā)送方的非同步到達的數(shù)據(jù)的技術方案。
發(fā)明內(nèi)容
考慮到上述問題而做出本發(fā)明,為此,根據(jù)本發(fā)明的實施例,提供了一種基于混合器的實時傳輸協(xié)議數(shù)據(jù)包配置方法。
該方法包括步驟S302,在實時傳輸協(xié)議數(shù)據(jù)包的頭部中預先設置擴展字段、貢獻源標識符、以及貢獻源計數(shù)字段,并由發(fā)送源將實時傳輸協(xié)議數(shù)據(jù)包發(fā)送給混合器;步驟S304,混合器對實時傳輸協(xié)議數(shù)據(jù)包進行混合操作,并在實時傳輸協(xié)議數(shù)據(jù)包的頭部中設置以下中的一個或多個與混合器對應的混合器標識符、與發(fā)送源對應的同步源標識符、以及貢獻源標識符列表;以及步驟S306,混合器增加擴展字段和貢獻源計數(shù)字段的值,并傳輸實時傳輸協(xié)議數(shù)據(jù)包。
其中,通過擴展字段來標識實時傳輸協(xié)議數(shù)據(jù)包經(jīng)過的混合器的數(shù)量;通過貢獻源計數(shù)字段來標識實時傳輸協(xié)議數(shù)據(jù)包中的貢獻源標識符的數(shù)目。
在步驟S304中,通過混合器標識符來標識混合器;通過同步源標識符來標識發(fā)送源。并且,同步源標識符是隨機生成的,并且相同的發(fā)送源發(fā)送的實時傳輸協(xié)議數(shù)據(jù)包具有相同的同步源標識符。
此外,在步驟S304中,通過貢獻源標識符列表來標識在實時傳輸協(xié)議數(shù)據(jù)包中對有效負荷起作用的貢獻源,其中,貢獻源用于使能混合器。其中,貢獻源標識符列表至少包含所傳輸?shù)膶崟r傳輸協(xié)議數(shù)據(jù)包的類型和編碼方法,還可以進一步包括時間戳,通過時間戳來標識發(fā)送源發(fā)送實時傳輸協(xié)議數(shù)據(jù)包的時間。
在步驟S306之后,進一步包括以下處理混合器將實時傳輸協(xié)議數(shù)據(jù)包傳輸?shù)浇邮斩耍唤邮斩烁鶕?jù)混合器標識符、同步源標識符、以及貢獻源標識符列表中的一個或多個來解析實時傳輸協(xié)議數(shù)據(jù)包。
通過本發(fā)明的上述技術方案,可以在混合器中對實時傳輸協(xié)議數(shù)據(jù)包頭進行相應的標識,使接收端容易地識別來自同一發(fā)送源的實時傳輸協(xié)議數(shù)據(jù)包,從而提高了網(wǎng)絡的速度,降低了誤碼率與網(wǎng)絡延遲。
此處所說明的附圖用來提供對本發(fā)明的進一步理解,構成本申請的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構成對本發(fā)明的不當限定。在附圖中圖1是根據(jù)相關技術的實時傳輸協(xié)議數(shù)據(jù)包的傳輸流程的示意圖;
圖2是根據(jù)相關技術的混合器在實時傳輸協(xié)議中的應用的示意圖;圖3是根據(jù)本發(fā)明實施例的基于混合器的實時傳輸協(xié)議數(shù)據(jù)包配置方法的流程圖;以及圖4是根據(jù)本發(fā)明實施例的基于混合器的實時傳輸協(xié)議數(shù)據(jù)包配置方法中混合器標識符結構的示意圖。
具體實施例方式
在實際應用中,并非所有站點都收到相同格式的媒體數(shù)據(jù),例如,一個地方的參與者只能低速接入會議,而其他大部分參與者都能享受高速連接。此時,通過在只能低速接入的地方設置混合器,由混合器對收到的RTP數(shù)據(jù)包進行處理,可以使得接收端能夠容易地識別來自相同發(fā)送源的數(shù)據(jù)包。
在本實施例中,提供了一種基于混合器的RTP數(shù)據(jù)包配置方法。RTP數(shù)據(jù)包由RTP頭和不定長的連續(xù)媒體數(shù)據(jù)組成,本實施例中的方法主要對RTP頭進行了相應處理。
在實際應用根據(jù)本實施例的方法時,混合器對輸入的音頻包重新進行同步,重建發(fā)送方產(chǎn)生的20ms的固定間隔,將已重建的音頻流混合為單一的流,將音頻編碼轉(zhuǎn)換為低帶寬格式,最后通過低帶寬連接轉(zhuǎn)發(fā)數(shù)據(jù)包流(package stream)。這些包可能被單播到一個接收方,也可能多播到另一個的地址而發(fā)給多個接收方。
下面將參照附圖詳細描述本發(fā)明的實施例。具體地,如圖3所示,該方法包括如下步驟
步驟S302,在RTP數(shù)據(jù)包的頭部中預先設置擴展字段(用X表示,優(yōu)選地,為1比特,當通過混合器時,將其設置為1)、貢獻源標識符、以及貢獻源計數(shù)字段(CC)(優(yōu)選地,為4比特),并由發(fā)送源將RTP數(shù)據(jù)包發(fā)送給混合器;步驟S304,混合器對RTP數(shù)據(jù)包進行混合操作,并在RTP數(shù)據(jù)包的頭部中設置以下中的一個或多個與混合器對應的混合器標識符(優(yōu)選地,為16比特,并且還可以附加在RTP數(shù)據(jù)頭后面)、與發(fā)送源對應的同步源(SSRC)標識符(優(yōu)選地,可以為32比特,表示正在為會話產(chǎn)生RTP包的源)、以及貢獻源標識符列表(CSRClist);步驟S306,混合器增加擴展字段和貢獻源計數(shù)字段的值,并傳輸RTP數(shù)據(jù)包(當數(shù)據(jù)流通過混合器時,X=1,CC為非零值)。
以下首先詳細描述通過上述字段進行的處理擴展字段(Extension,X)通過擴展字段來標識RTP數(shù)據(jù)包經(jīng)過的混合器的數(shù)量;貢獻源計數(shù)字段(CSRC count,CC)通過CC來標識RTP數(shù)據(jù)包中的貢獻源標識符的數(shù)目,隨著通過混合器的數(shù)量的增加,CC的值遞增。
混合器標識符通過來標識混合器,具有相同混合器標識符的RTP通過同一個混合器,混合器標識符的結構如圖4所示;同步源標識符(SSRC)通過同步源標識符來標識發(fā)送源,其中,同步源標識符是隨機生成的,以避免在同一個RTP會話中兩個源具有相同的標識符;另外,相同的發(fā)送源發(fā)送的RTP數(shù)據(jù)包具有相同的同步源標識符。
貢獻源標識符列表在步驟S304中,通過貢獻源標識符列表來標識在RTP數(shù)據(jù)包中對有效負荷起作用的貢獻源(根據(jù)CC的限定,最大數(shù)量為15,如果超過15個,則標識前15個);其中,貢獻源(Contributing Source,CSRC)用于使能混合器。
其中,貢獻源標識符列表至少包含所傳輸?shù)腞TP數(shù)據(jù)包的類型和編碼方法。并且,貢獻源標識符列表進一步包括時間戳,通過時間戳可以標識發(fā)送源發(fā)送RTP數(shù)據(jù)包的時間,優(yōu)選地,其長度為32比特,當RTP通過混合器時,如果需要緩沖20ms的音頻數(shù)據(jù),無論包是被傳遞了還是被丟失了,每處理完一個包RTP時間戳都增加160。
優(yōu)選地,在RTP數(shù)據(jù)包的頭部中還可以包括以下字段版本號(Version(V)),這個域長度可以為2比特,當前的版本為2.0;填充(Padding(P)),這個域長度可以為1比特,如果P被置位,則在包的結尾處包含有一個或多個附加的填充字節(jié),這些填充字節(jié)不是有效負荷的一部分;標識位(Marked bit(M)),這個域長度可以為1比特,如果M被置位,則表示一些重要的項目(例如,幀邊界)在包中被標記;有效負荷類型(Payload type(PT)),這個域長度可以為7比特,PT指示的是有RTP包中的有效負荷的類型;序列號(Sequence number) 這個域的長度可以為16個比特,每送一個RTP包數(shù)目就增加1,其初始值被設為一個隨機數(shù),接收方不僅可以通過該序列號檢測包丟失,還可以重組包序列。
另外,在步驟S306之后,進一步包括以下處理混合器將RTP數(shù)據(jù)包傳輸?shù)浇邮斩?;接收端根?jù)混合器標識符、同步源標識符、以及貢獻源標識符列表中的一個或多個來解析RTP數(shù)據(jù)包。
本發(fā)明通過設置RTP頭,使混合器能辨識出對混合后的包有用的源,RTP頭中包括的混合器標識符可以表明該資源是混合的,從而將正確的談話者的指示提供給接收者。如步驟S306中的處理,當數(shù)據(jù)流通過混合器時,X=1,CC為非零值,且X隨通過混合器的數(shù)目CC的值增加,并且,還可以在RTP數(shù)據(jù)頭后面值附加擴展的16位的混合器標志位。該混合器再次同步接收到的音頻包來重組這個由發(fā)送者生成的連續(xù)的20毫秒間隔,并將這些重組的音頻流混合為一個單獨的數(shù)據(jù)包流。之后,可以將該音頻編碼轉(zhuǎn)換到低帶寬編碼,并將該低帶寬包流穿過低帶寬鏈接推向前,這些包可能單播到一個單獨的接收者,或多播到多個接收者。
綜上所述,借助于本發(fā)明的技術方案,可以在混合器中對實時傳輸協(xié)議數(shù)據(jù)包頭進行相應的標識,使接收端容易地識別來自同一發(fā)送源的RTP包,從而提高了網(wǎng)絡的速度,降低了誤碼率與網(wǎng)絡延遲。
以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領域的技術人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內(nèi)。
權利要求
1.一種基于混合器的實時傳輸協(xié)議數(shù)據(jù)包配置方法,其特征在于,包括步驟S302,在實時傳輸協(xié)議數(shù)據(jù)包的頭部中預先設置擴展字段、貢獻源標識符、以及貢獻源計數(shù)字段,并由發(fā)送源將所述實時傳輸協(xié)議數(shù)據(jù)包發(fā)送給混合器;步驟S304,所述混合器對所述實時傳輸協(xié)議數(shù)據(jù)包進行混合操作,并在所述實時傳輸協(xié)議數(shù)據(jù)包的頭部中設置以下中的一個或多個與所述混合器對應的混合器標識符、與所述發(fā)送源對應的同步源標識符、以及貢獻源標識符列表;以及步驟S306,所述混合器增加所述擴展字段和所述貢獻源計數(shù)字段的值,并傳輸所述實時傳輸協(xié)議數(shù)據(jù)包。
2.根據(jù)權利要求1所述的實時傳輸協(xié)議數(shù)據(jù)包配置方法,其特征在于,通過所述擴展字段來標識所述實時傳輸協(xié)議數(shù)據(jù)包經(jīng)過的混合器的數(shù)量。
3.根據(jù)權利要求1所述的實時傳輸協(xié)議數(shù)據(jù)包配置方法,其特征在于,通過所述貢獻源計數(shù)字段來標識所述實時傳輸協(xié)議數(shù)據(jù)包中的所述貢獻源標識符的數(shù)目。
4.根據(jù)權利要求1所述的實時傳輸協(xié)議數(shù)據(jù)包配置方法,其特征在于,在所述步驟S304中,通過所述混合器標識符來標識混合器;通過所述同步源標識符來標識發(fā)送源。
5.根據(jù)權利要求4所述的實時傳輸協(xié)議數(shù)據(jù)包配置方法,其特征在于,在所述步驟S304中,隨機生成所述同步源標識符,并且相同的發(fā)送源發(fā)送的實時傳輸協(xié)議數(shù)據(jù)包具有相同的同步源標識符。
6.根據(jù)權利要求1所述的實時傳輸協(xié)議數(shù)據(jù)包配置方法,其特征在于,在所述步驟S304中,通過所述貢獻源標識符列表來標識在所述實時傳輸協(xié)議數(shù)據(jù)包中對有效負荷起作用的貢獻源,其中,所述貢獻源用于使能所述混合器。
7.根據(jù)權利要求6所述的實時傳輸協(xié)議數(shù)據(jù)包配置方法,其特征在于,所述貢獻源標識符列表至少包含所傳輸?shù)乃鰧崟r傳輸協(xié)議數(shù)據(jù)包的類型和編碼方法。
8.根據(jù)權利要求7所述的實時傳輸協(xié)議數(shù)據(jù)包配置方法,其特征在于,所述貢獻源標識符列表進一步包括時間戳,通過所述時間戳來標識所述發(fā)送源發(fā)送所述實時傳輸協(xié)議數(shù)據(jù)包的時間。
9.根據(jù)權利要求1所述的實時傳輸協(xié)議數(shù)據(jù)包配置方法,其特征在于,在所述步驟S306之后,進一步包括以下處理所述混合器將所述實時傳輸協(xié)議數(shù)據(jù)包傳輸?shù)浇邮斩耍灰约八鼋邮斩烁鶕?jù)所述混合器標識符、所述同步源標識符、以及所述貢獻源標識符列表中的一個或多個來解析所述實時傳輸協(xié)議數(shù)據(jù)包。
全文摘要
本發(fā)明公開了一種基于混合器的實時傳輸協(xié)議數(shù)據(jù)包配置方法,包括步驟S302,在實時傳輸協(xié)議數(shù)據(jù)包的頭部中預先設置擴展字段、貢獻源標識符、以及貢獻源計數(shù)字段,并由發(fā)送源將實時傳輸協(xié)議數(shù)據(jù)包發(fā)送給混合器;步驟S304,混合器對實時傳輸協(xié)議數(shù)據(jù)包進行混合操作,并在實時傳輸協(xié)議數(shù)據(jù)包的頭部中設置以下中的一個或多個與混合器對應的混合器標識符、與發(fā)送源對應的同步源標識符、以及貢獻源標識符列表;以及步驟S306,混合器增加擴展字段和貢獻源計數(shù)字段的值,并傳輸實時傳輸協(xié)議數(shù)據(jù)包。通過使用本發(fā)明,可以使接收端容易地識別來自同一發(fā)送源的實時傳輸協(xié)議包,從而提高了網(wǎng)絡的速度,降低了誤碼率與網(wǎng)絡延遲。
文檔編號H04L12/56GK101039325SQ20071009699
公開日2007年9月19日 申請日期2007年4月26日 優(yōu)先權日2007年4月26日
發(fā)明者趙凝霞, 施元慶, 張桂蘭 申請人:中興通訊股份有限公司