一種媒體流傳輸方法及裝置制造方法
【專利摘要】本發(fā)明公開了一種媒體流傳輸方法及裝置,以解決現(xiàn)有技術(shù)中由于丟包、抖動(dòng)和/或斷鏈等原因?qū)е碌拿襟w流傳輸過程中,音視頻質(zhì)量下降的問題。本發(fā)明中,根據(jù)主叫端發(fā)送的建鏈請(qǐng)求消息和被叫端對(duì)所述建鏈請(qǐng)求消息的響應(yīng)消息,在主叫端與被叫端之間進(jìn)行媒體能力協(xié)商,并建立至少兩路媒體通道;根據(jù)協(xié)商后的媒體能力,通過第一路媒體通道進(jìn)行媒體流的傳輸;當(dāng)檢測(cè)到第一路媒體通道的媒體流傳輸出現(xiàn)異常時(shí),在所述至少兩路媒體通道中選擇其余一路媒體通道作為第二路媒體通道,并將所述媒體流由所述第一路媒體通道切換至所述第二路媒體通道進(jìn)行傳輸。通過本發(fā)明能夠確保通信雙方的音視頻質(zhì)量。
【專利說明】一種媒體流傳輸方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及媒體傳輸【技術(shù)領(lǐng)域】,尤其涉及一種媒體流冗余傳輸方法及裝置。
【背景技術(shù)】
[0002]媒體傳輸過程中,當(dāng)兩個(gè)終端需要進(jìn)行媒體流交互時(shí),需要先進(jìn)行媒體能力的協(xié)商,媒體能力一般包括:終端的媒體通道IP地址及端口號(hào),音視頻媒體及編碼類型和相關(guān)參數(shù)。通過媒體能力協(xié)商完成媒體通道的建立,然后在建立的媒體通道上,根據(jù)協(xié)商后的音視頻媒體數(shù)據(jù)編碼類型和相關(guān)參數(shù)完成音視頻媒體數(shù)據(jù)的編碼,將編碼后的媒體數(shù)據(jù)進(jìn)行封裝打包發(fā)送至對(duì)端。
[0003]現(xiàn)有技術(shù)中,一般通過信令協(xié)商建立通信雙方的媒體通道,在媒體通信開始時(shí),由主叫端發(fā)起建鏈請(qǐng)求,并在請(qǐng)求消息中攜帶主叫端的媒體能力,當(dāng)被叫端接收到主叫端發(fā)送的建鏈請(qǐng)求后,會(huì)根據(jù)自身的媒體能力,進(jìn)行媒體能力的協(xié)商,從接收到的主叫端的媒體能力中選擇本次通信過程中采用的媒體能力,并通過響應(yīng)消息發(fā)送給主叫端,進(jìn)而完成通信雙方媒體通道的建立。
[0004]然而,上述通過信令協(xié)商建立的媒體通道只有一路,通信過程中,很容易由于網(wǎng)絡(luò)擁塞或者其他各種原因,造成丟包,抖動(dòng)以及斷鏈等問題,影響通信雙方的音視頻質(zhì)量。目前采用媒體流冗余傳輸技術(shù)解決媒體流傳輸?shù)倪^程中的丟包問題,即在傳送數(shù)據(jù)包的過程中,攜帶冗余數(shù)據(jù)。通過上述攜帶冗余數(shù)據(jù)的媒體流冗余傳輸技術(shù),能夠解決丟包問題,但是,其并不能解決抖動(dòng)、斷鏈等對(duì)音視頻質(zhì)量造成影響的問題,并且,攜帶冗余數(shù)據(jù)包會(huì)占用帶寬,占用更多的網(wǎng)絡(luò)資源,因此,目前的媒體流傳輸技術(shù)有待于改進(jìn)和發(fā)展。
【發(fā)明內(nèi)容】
[0005]本發(fā)明的目的是提供一種媒體流傳輸方法及裝置,以解決現(xiàn)有技術(shù)中媒體流傳輸過程中,由于丟包、抖動(dòng)和/或斷鏈等原因?qū)е碌囊粢曨l質(zhì)量下降的問題。
[0006]本發(fā)明的目的是通過以下技術(shù)方案實(shí)現(xiàn)的:
[0007]本發(fā)明一方面提供了一種媒體流傳輸方法,該方法包括:
[0008]根據(jù)主叫端發(fā)送的建鏈請(qǐng)求消息和被叫端對(duì)所述建鏈請(qǐng)求消息的響應(yīng)消息,在主叫端與被叫端之間進(jìn)行媒體能力協(xié)商,并建立至少兩路媒體通道;
[0009]根據(jù)協(xié)商后的媒體能力,通過第一路媒體通道進(jìn)行媒體流的傳輸;
[0010]當(dāng)檢測(cè)到第一路媒體通道的媒體流傳輸出現(xiàn)異常時(shí),在所述至少兩路媒體通道中選擇其余一路媒體通道作為第二路媒體通道,并將所述媒體流由所述第一路媒體通道切換至所述第二路媒體通道進(jìn)行傳輸。
[0011]本發(fā)明另一方面還提供了 一種媒體流傳輸裝置,該裝置包括:
[0012]媒體通道建立單元,用于根據(jù)主叫端發(fā)送的建鏈請(qǐng)求消息和被叫端對(duì)所述建鏈請(qǐng)求消息的響應(yīng)消息,在主叫端與被叫端之間進(jìn)行媒體能力協(xié)商,并建立至少兩路媒體通道;[0013]傳輸單元,用于根據(jù)協(xié)商后的媒體能力,通過第一路媒體通道進(jìn)行媒體流的傳輸;
[0014]切換單元,用于當(dāng)檢測(cè)到第一路媒體通道的媒體流傳輸出現(xiàn)異常時(shí),在所述至少兩路媒體通道中選擇其余一路媒體通道作為第二路媒體通道,并將所述媒體流由所述第一路媒體通道切換至所述第二路媒體通道進(jìn)行傳輸。
[0015]本發(fā)明提供的媒體流傳輸方法及裝置,通過在主叫端與被叫端之間建立多個(gè)冗余媒體通道,在媒體流通信過程中,若當(dāng)前媒體通道的媒體流傳輸出現(xiàn)異常,則切換到其他媒體通道中進(jìn)行媒體流的傳輸,解決由于丟包、抖動(dòng)和/或斷鏈等原因?qū)е碌囊粢曨l質(zhì)量下降的問題,確保通信雙方的音視頻質(zhì)量,能很好的應(yīng)用在對(duì)通信質(zhì)量要求較高的場(chǎng)合。
【專利附圖】
【附圖說明】
[0016]圖1為本發(fā)明實(shí)施例提供的媒體流傳輸方法的流程圖;
[0017]圖2為本發(fā)明實(shí)施例提供的媒體通道建立流程圖;
[0018]圖3為本發(fā)明實(shí)施例提供的媒體流傳輸示意圖;
[0019]圖4為本發(fā)明實(shí)施例提供的媒體流傳輸裝置構(gòu)成示意圖。
【具體實(shí)施方式】
[0020]本發(fā)明提供的媒體流傳輸方法,在主叫端與被叫端之間進(jìn)行媒體能力協(xié)商并建立多路媒體通道,進(jìn)行媒體流通信時(shí),先在第一路媒體通道上進(jìn)行媒體流的傳輸,當(dāng)?shù)谝宦访襟w通道的媒體流傳輸出現(xiàn)異常時(shí),將當(dāng)前媒體流切換到其余媒體通道中進(jìn)行傳輸,確保通信雙方的媒體通信質(zhì)量。
[0021]本發(fā)明實(shí)施例一提供了一種媒體流傳輸方法,實(shí)現(xiàn)過程如圖1所示,具體包括:
[0022]步驟SlOl:在主叫端與被叫端之間進(jìn)行媒體能力協(xié)商,并建立至少兩路媒體通道。
[0023]具體的,在媒體通信開始時(shí),主叫端發(fā)起建鏈請(qǐng)求消息,并在此請(qǐng)求消息中攜帶主叫端的媒體能力,當(dāng)被叫端接收到該建鏈請(qǐng)求后,將被叫端自身的媒體能力,通過響應(yīng)消息發(fā)送至主叫端,完成主叫端與被叫端之間的媒體能力的協(xié)商,在主叫端與被叫端之間建立至少兩路媒體通道。
[0024]步驟S102:根據(jù)協(xié)商后的媒體能力,通過第一路媒體通道進(jìn)行媒體流的傳輸。
[0025]具體的,主叫端與被叫端之間完成媒體能力協(xié)商后,根據(jù)各自的媒體能力建立了多路媒體通道,媒體通信開始時(shí),先在第一路媒體通道上進(jìn)行媒體流的傳輸,并實(shí)時(shí)檢測(cè)媒體流的傳輸情況,當(dāng)檢測(cè)到第一路媒體通道的媒體流傳輸出現(xiàn)異常時(shí),轉(zhuǎn)至步驟S103。
[0026]步驟S103:切換媒體流到第二路媒體通道上進(jìn)行傳輸。
[0027]具體的,當(dāng)檢測(cè)到第一路媒體通道的媒體流傳輸出現(xiàn)異常時(shí),在建立的至少兩路媒體通道中選擇其余一路媒體通道作為第二路媒體通道,并將媒體流由當(dāng)前第一路媒體通道切換至選擇的第二路媒體通道進(jìn)行傳輸。
[0028]本發(fā)明實(shí)施例提供的媒體流傳輸方法,通過在主叫端與被叫端之間建立多路冗余媒體通道,在媒體流通信過程中,若當(dāng)前媒體通道的媒體流傳輸出現(xiàn)異常,則選擇其他媒體通道中的一路媒體通道進(jìn)行當(dāng)前媒體流的傳輸,避免了丟包、抖動(dòng)和/或斷鏈等原因造成音視頻質(zhì)量下降,確保通信雙方的音視頻質(zhì)量,能很好的應(yīng)用在對(duì)通信質(zhì)量要求較高的場(chǎng)
口 O
[0029]本發(fā)明實(shí)施例二將結(jié)合實(shí)際應(yīng)用對(duì)實(shí)施例一中的媒體流傳輸方法做進(jìn)一步詳細(xì)的說明,當(dāng)然并不引以為限。
[0030]本發(fā)明實(shí)施例中,在主叫端與被叫端通過RTSP(Real Time Streaming Protocol,實(shí)時(shí)流傳輸協(xié)議)、SIP(Session Initiation Protocol,應(yīng)用層信令控制協(xié)議)等控制協(xié)議進(jìn)行媒體能力的協(xié)商,完成媒體通道的建立,并進(jìn)行媒體流的傳輸,如圖2所示,具體實(shí)現(xiàn)過程如下:
[0031]步驟S201:解析主叫端向被叫端發(fā)起的建鏈請(qǐng)求消息。
[0032]具體的,主叫端向被叫端發(fā)起的建鏈請(qǐng)求消息中攜帶主叫端的至少兩個(gè)媒體通道IP地址(Internet Protocol,網(wǎng)絡(luò)互聯(lián)協(xié)議)及對(duì)應(yīng)的至少兩個(gè)媒體通道端口號(hào)。
[0033]優(yōu)選的,主叫端向被叫端發(fā)起建鏈請(qǐng)求時(shí),可通過SDP (Session DescriptionProtocol,會(huì)話描述協(xié)議)協(xié)議描述主叫端的媒體能力,包括主叫端的媒體通道IP地址及端口號(hào),音視頻媒體及編碼類型和相關(guān)參數(shù)等。其中,c屬性行描述媒體通道的IP地址,m屬性行描述媒體通道的音視頻端口號(hào),a屬性行描述音視頻編碼類型和相關(guān)參數(shù)。
[0034]具體的,本發(fā)明實(shí)施例中采用擴(kuò)展SDP協(xié)議的方式,根據(jù)SDP協(xié)議在主叫端發(fā)送的建鏈請(qǐng)求消息中攜帶主叫端的至少兩個(gè)媒體通道IP地址及對(duì)應(yīng)的至少兩個(gè)媒體通道端口號(hào)。其中,在通過SDP協(xié)議描述主叫端媒體能力時(shí),C屬性行中描述主叫端媒體通道的多個(gè)IP地址,例如:IPA1、IPA2、……,m屬性行中描述媒體通道的多個(gè)音視頻端口號(hào),例如:PortAl、PortA2、……;并且,c屬性行中的IP地址與m屬性行中的音頻端口號(hào)和視頻端口號(hào),在順序上保持一致,相同順序的IP地址以及音視頻端口號(hào)組成主叫端的一個(gè)主叫端端口,例如 IPAl =PortAU IPA2:PortA2、......。
[0035]步驟S202:將被叫端對(duì)主叫端發(fā)送的建鏈請(qǐng)求消息的響應(yīng)消息,轉(zhuǎn)發(fā)給主叫端。
[0036]具體的,被叫端響應(yīng)主叫端發(fā)送的建鏈請(qǐng)求消息的響應(yīng)消息中攜帶被叫端的至少兩個(gè)媒體通道IP地址及對(duì)應(yīng)的至少兩個(gè)媒體通道端口號(hào)。
[0037]優(yōu)選的,被叫端可通過SDP (Session Description Protocol,會(huì)話描述協(xié)議)協(xié)議描述被叫端的媒體能力,包括被叫端的媒體通道IP地址及端口號(hào),音視頻媒體及編碼類型和相關(guān)參數(shù)等。其中,C屬性行描述媒體通道的IP地址,m屬性行描述媒體通道的音視頻端口號(hào),a屬性行描述音視頻編碼類型和相關(guān)參數(shù)。
[0038]具體的,本發(fā)明實(shí)施例中采用擴(kuò)展SDP協(xié)議的方式,根據(jù)SDP協(xié)議在被叫端響應(yīng)建鏈請(qǐng)求消息的響應(yīng)消息中攜帶被叫端的至少兩個(gè)媒體通道IP地址及對(duì)應(yīng)的至少兩個(gè)媒體通道端口號(hào)。其中,在通過SDP協(xié)議描述被叫端媒體能力時(shí),C屬性行中描述被叫端媒體通道的多個(gè)IP地址,例如:IPB1、IPB2、……,m屬性行中描述媒體通道的多個(gè)音視頻端口號(hào),例如=PortBl、PortB2、……;并且,c屬性行中的IP地址與m屬性行中的音頻端口號(hào)和視頻端口號(hào),在順序上保持一致,相同順序的IP地址以及音視頻端口號(hào)組成被叫端的一個(gè)被叫端端口,例如 IPBl =PortBU IPB2:PortB2、......。
[0039]步驟S203:在主叫端端口與被叫端端口之間建立媒體通道。
[0040]具體的,被叫端接收到主叫端的建鏈請(qǐng)求并應(yīng)答后,根據(jù)自身的媒體能力,結(jié)合主叫端的媒體能力,在與主叫端的媒體通道端口號(hào)對(duì)應(yīng)的主叫端端口,及與被叫端的媒體通道端口號(hào)對(duì)應(yīng)的被叫端端口之間,建立媒體通道。
[0041]優(yōu)選的,主叫端與被叫端采用SDP協(xié)議描述本端的媒體能力時(shí),主叫端與被叫端完成媒體能力協(xié)商后,建立多條物理鏈路上的媒體通道,例如:IPA1 =PortAl-1PBl:PortBU IPA2:PortA2—IPB2:PortB2,……。當(dāng)完成多條媒體通道的建立后,主叫端與被叫端選擇本次通信過程中采用的音視頻媒體及編碼類型和相關(guān)參數(shù),分別將本端得音視頻數(shù)據(jù)進(jìn)行編碼,并采用STP協(xié)議封裝為RTP數(shù)據(jù),通過選擇的第一路媒體通道發(fā)送至對(duì)端,開始媒體流的通信。
[0042]進(jìn)一步的,本發(fā)明實(shí)施例開始媒體流通信時(shí),首先在建立的多條冗余媒體通道中選擇第一路媒體通道進(jìn)行媒體流的傳輸,在媒體流傳輸過程中,實(shí)時(shí)檢測(cè)第一路媒體通道中的媒體流傳輸情況,當(dāng)檢測(cè)到第一路媒體流傳輸出現(xiàn)異常時(shí),切換到與第一路媒體通道不同的第二路媒體通道進(jìn)行媒體流的傳輸。
[0043]較佳的,本發(fā)明實(shí)施例中可通過檢測(cè)主叫端的媒體流傳輸情況,進(jìn)行媒體流傳輸情況的判斷,具體實(shí)現(xiàn)如下:
[0044]分析主叫端接收到的媒體流丟包率和/或抖動(dòng)值;當(dāng)超過設(shè)定閾值時(shí),確定主叫端的第一主叫端端口對(duì)應(yīng)的第一路媒體通道中媒體流傳輸出現(xiàn)異常,通知主叫端將當(dāng)前媒體流由主叫端的第一主叫端端口對(duì)應(yīng)的第一路媒體通道切換至第二主叫端端口對(duì)應(yīng)的第二路媒體通道進(jìn)行傳輸。例如,主叫端若發(fā)現(xiàn)IPAl =PortAl對(duì)應(yīng)的媒體通道出現(xiàn)異常,則通過IPA2:PortA2向被叫端發(fā)送媒體數(shù)據(jù)。
[0045]具體的,媒體流通信過程中,主叫端接收到的RTP (Real-time TransportProtocol,實(shí)時(shí)傳輸協(xié)議)數(shù)據(jù)包后,通過分析RTP丟包率、抖動(dòng)值等,若發(fā)現(xiàn)RTP丟包率、抖動(dòng)值超過設(shè)定的閾值,則可確定當(dāng)前端口對(duì)應(yīng)的第一路媒體通道中媒體流傳輸出現(xiàn)異常。
[0046]優(yōu)選的,第一路媒體通道中媒體流傳輸出現(xiàn)異常,可能是由于端口本身導(dǎo)致,也可能是由于網(wǎng)絡(luò)原因?qū)е?,?dāng)由端口本身導(dǎo)致的媒體流傳輸出現(xiàn)異常時(shí),主叫端可在當(dāng)前網(wǎng)絡(luò)環(huán)境中,選擇與第一端口處于相同網(wǎng)絡(luò)環(huán)境的第二端口對(duì)應(yīng)的第二媒體通道進(jìn)行媒體流的傳輸,該第二媒體通道的被叫端端口可以是第一媒體通道的被叫端端口,也可以不是。例如,若當(dāng)前媒體流傳輸異常是由IPAl =PortAl端口本身引起的,此時(shí)IPA2:PortA2與IPBl:PortBl和IPB2:PortB2都建立有媒體通道,則主叫端可以選擇IPA2:PortA2-1PBl =PortBl傳輸媒體數(shù)據(jù),也可以選擇IPA2:PortA2-1PB2:PortB2傳輸媒體數(shù)據(jù)。
[0047]優(yōu)選的,當(dāng)由于網(wǎng)絡(luò)原因?qū)е碌谝宦访襟w通道中媒體流傳輸出現(xiàn)異常時(shí),為了避免當(dāng)前網(wǎng)絡(luò)對(duì)媒體通信質(zhì)量的影響,主叫端進(jìn)行媒體通道切換前后的兩路媒體通道則是處于不同網(wǎng)絡(luò)中的,并且主叫端端口和被叫端端口之間僅建立唯一的一路媒體通道,即第一主叫端端口對(duì)應(yīng)的第一路媒體通道與第二主叫端端口對(duì)應(yīng)的第二路媒體通道處于不同網(wǎng)絡(luò),且第一主叫端端口僅和第一被叫端端口之間建立一路媒體通道,第一被叫端端口也僅和第一主叫端端口建立一路媒體通道,第二主叫端口和第二被叫端口也是一樣的。例如,若當(dāng)前媒體流傳輸異常是由網(wǎng)絡(luò)原因引起的,則主叫端只能選擇與當(dāng)前IPAl =PortAl-1PBl:PortBl處于不同網(wǎng)絡(luò)的,IPA2:PortA2-1PB2:PortB2傳輸媒體數(shù)據(jù)。
[0048]較佳的,本發(fā)明實(shí)施例中還可通過檢測(cè)被叫端的媒體流傳輸情況,進(jìn)行媒體流傳輸情況的判斷,具體實(shí)現(xiàn)如下:
[0049]分析被叫端接收到的媒體流丟包率和/或抖動(dòng)值;當(dāng)超過設(shè)定閾值時(shí),確定被叫端的第一被叫端端口對(duì)應(yīng)的第一路媒體通道中媒體流傳輸出現(xiàn)異常,通知被叫端將當(dāng)前媒體流由被叫端的第一被叫端端口對(duì)應(yīng)的第一路媒體通道切換至第二被叫端端口對(duì)應(yīng)的第二路媒體通道進(jìn)行傳輸。例如,被叫端若發(fā)現(xiàn)IPBl =PortBl對(duì)應(yīng)的媒體通道出現(xiàn)異常,則通過IPB2:PortB2向主叫端發(fā)送媒體數(shù)據(jù)。
[0050]具體的,媒體流通信過程中,被叫端接收到的RTP數(shù)據(jù)包后,通過分析RTP丟包率、抖動(dòng)值等,若發(fā)現(xiàn)RTP丟包率、抖動(dòng)值超過設(shè)定的閾值,則可確定當(dāng)前端口對(duì)應(yīng)的第一路媒體通道中媒體流傳輸出現(xiàn)異常。
[0051]優(yōu)選的,第一路媒體通道中媒體流傳輸出現(xiàn)異常,可能是由于被叫端端口本身導(dǎo)致,也可能是由于網(wǎng)絡(luò)原因?qū)е?,?dāng)由被叫端端口本身導(dǎo)致的媒體流傳輸出現(xiàn)異常時(shí),被叫端可在當(dāng)前網(wǎng)絡(luò)環(huán)境中,選擇與第一被叫端端口處于相同網(wǎng)絡(luò)環(huán)境的第二被叫端端口對(duì)應(yīng)的第二路媒體通道進(jìn)行媒體流的傳輸,該第二路媒體通道的被叫端端口可以是第一路媒體通道的主叫端端口 ,也可以不是。例如,若當(dāng)前媒體流傳輸異常是由IPBl =PortBl端口本身引起的,此時(shí)IPB2 =PortAB與IPAl =PortAl和IPA2:PortA2都建立有媒體通道,則被叫端可以選擇 IPB2:PortB2-1PAl =PortAl 傳輸媒體數(shù)據(jù),也可以選擇 IPB2:PortB2-1PA2:PortA2傳輸媒體數(shù)據(jù)。
[0052]優(yōu)選的,當(dāng)由于網(wǎng)絡(luò)原因?qū)е碌谝宦访襟w通道中媒體流傳輸出現(xiàn)異常時(shí),為了避免當(dāng)前網(wǎng)絡(luò)對(duì)媒體通信質(zhì)量的影響,被叫端進(jìn)行媒體通道切換前后的兩路媒體通道應(yīng)是處于不同網(wǎng)絡(luò)中的,并且被叫端端口和被叫端端口之間僅建立唯一的一路媒體通道,即第一被叫端端口對(duì)應(yīng)的第一路媒體通道與第二被叫端端口對(duì)應(yīng)的第二路媒體通道處于不同網(wǎng)絡(luò),且第一被叫端端口僅和第一主叫端端口之間建立一路媒體通道,第一主叫端端口也僅和第一被叫端端口建立一路媒體通道,第二主叫端口和第二被叫端口也是一樣的。例如,若當(dāng)前媒體流傳輸異常是由網(wǎng)絡(luò)原因引起的,則被叫端只能選擇與當(dāng)前IPBl =PortBl-1PAl =PortAl處于不同網(wǎng)絡(luò)的,IPB2:PortB2-1PA2:PortA2傳輸媒體數(shù)據(jù)。
[0053]本發(fā)明實(shí)施例提供的上述媒體流傳輸示意圖如圖3所示:
[0054]步驟S301:主叫端向被叫端發(fā)送建鏈請(qǐng)求,并攜帶主叫端的媒體能力,包括:IPAl:PortAK IPA2:ΡοΑ2λ......。
[0055]步驟S302:主叫端與被叫端進(jìn)行媒體能力協(xié)商。
[0056]步驟S303:被叫端對(duì)建鏈請(qǐng)求進(jìn)行響應(yīng),并在響應(yīng)消息中攜帶被叫端的媒體能力,包括:IPB1 =PortBU ΙΡΒ2:PortB2、......。
[0057]步驟S304:在 IPAl =PortAl-1PBl =PortBl媒體通道上進(jìn)行媒體流的傳輸。
[0058]步驟S305:檢測(cè)到IPAl =PortAl-1PBl =PortBl媒體通道的網(wǎng)絡(luò)出現(xiàn)異常。
[0059]步驟S306:在IPA2:PortA2-1PB2:PortB2媒體通道上傳輸媒體流數(shù)據(jù)。
[0060]本發(fā)明提供的媒體流傳輸方法,通過在主叫端與被叫端之間建立多個(gè)冗余媒體通道,在媒體流通信過程中,若檢測(cè)到第一路媒體通道的媒體流傳輸出現(xiàn)異常,則切換到與第一路媒體通道不同的第二路媒體通道進(jìn)行媒體流的傳輸,解決了由于丟包、抖動(dòng)和/或斷鏈等原因?qū)е碌囊粢曨l質(zhì)量下降的問題,確保通信雙方的音視頻質(zhì)量,能很好的應(yīng)用在對(duì)通信質(zhì)量要求較高的場(chǎng)合。
[0061]本發(fā)明實(shí)施例三提供了一種媒體流傳輸裝置,該裝置的構(gòu)成框圖如圖4所示,包括:[0062]媒體通道建立單元41,用于根據(jù)主叫端發(fā)送的建鏈請(qǐng)求消息和被叫端對(duì)建鏈請(qǐng)求消息的響應(yīng)消息,在主叫端與被叫端之間進(jìn)行媒體能力協(xié)商,并建立至少兩路媒體通道。
[0063]傳輸單元42,用于根據(jù)協(xié)商后的媒體能力,通過第一路媒體通道進(jìn)行媒體流的傳輸。
[0064]切換單元43,用于當(dāng)檢測(cè)到第一路媒體通道的媒體流傳輸出現(xiàn)異常時(shí),在至少兩路媒體通道中選擇其余一路媒體通道作為第二路媒體通道,并將所述媒體流由所述第一路媒體通道切換至所述第二路媒體通道進(jìn)行傳輸。
[0065]其中,媒體通道建立單元41,具體用于:
[0066]解析主叫端向被叫端發(fā)起的建鏈請(qǐng)求消息,其中,建鏈請(qǐng)求消息中攜帶主叫端的至少兩個(gè)媒體通道IP地址及對(duì)應(yīng)的至少兩個(gè)媒體通道端口號(hào);
[0067]將被叫端對(duì)建鏈請(qǐng)求消息的響應(yīng)消息,轉(zhuǎn)發(fā)給主叫端,其中,響應(yīng)消息中攜帶被叫端的至少兩個(gè)媒體通道IP地址及對(duì)應(yīng)的至少兩個(gè)媒體通道端口號(hào);
[0068]在與主叫端的媒體通道端口號(hào)對(duì)應(yīng)的主叫端端口,及與被叫端的媒體通道端口號(hào)對(duì)應(yīng)的被叫端端口之間,建立媒體通道。
[0069]較佳的,媒體通道建立單元41,還用于:
[0070]根據(jù)SDP協(xié)議在主叫端發(fā)送的建鏈請(qǐng)求消息中攜帶主叫端的至少兩個(gè)媒體通道IP地址及對(duì)應(yīng)的至少兩個(gè)媒體通道端口號(hào);和/或
[0071]根據(jù)SDP協(xié)議在被叫端響應(yīng)建鏈請(qǐng)求消息的響應(yīng)消息中攜帶被叫端的至少兩個(gè)媒體通道IP地址及對(duì)應(yīng)的至少兩個(gè)媒體通道端口號(hào)。
[0072]較佳的,切換單元43,具體用于:
[0073]分析主叫端接收到的媒體流丟包率和/或抖動(dòng)值;
[0074]當(dāng)超過設(shè)定閾值時(shí),確定主叫端的第一主叫端端口對(duì)應(yīng)的第一路媒體通道中媒體流傳輸出現(xiàn)異常,通知主叫端將媒體流由主叫端的第一主叫端端口對(duì)應(yīng)的第一路媒體通道切換至第二主叫端端口對(duì)應(yīng)的第二路媒體通道進(jìn)行傳輸。
[0075]較佳的,第一主叫端端口對(duì)應(yīng)的第一路媒體通道與第二主叫端端口對(duì)應(yīng)的第二路媒體通道處于不同網(wǎng)絡(luò),且第一主叫端端口僅和第一被叫端端口之間建立一路媒體通道,第一被叫端端口僅和第一主叫端端口建立一路媒體通道。
[0076]較佳的,切換單元43,具體用于:
[0077]分析被叫端接收到的媒體流丟包率和/或抖動(dòng)值;
[0078]當(dāng)超過設(shè)定閾值時(shí),確定第一被叫端端口對(duì)應(yīng)的第一路媒體通道中媒體流傳輸出現(xiàn)異常,通知被叫端將媒體流由被叫端的第一被叫端端口對(duì)應(yīng)的第一路媒體通道切換至第二被叫端端口對(duì)應(yīng)的第二路媒體通道進(jìn)行傳輸。
[0079]其中,第一被叫端端口對(duì)應(yīng)的第一路媒體通道與第二被叫端端口對(duì)應(yīng)的第二路媒體通道處于不同網(wǎng)絡(luò),且第一被叫端端口僅和第一主叫端端口建立一路媒體通道,第一主叫端端口僅和第一被叫端端口之間建立一路媒體通道。
[0080]本發(fā)明實(shí)施例提供的媒體流傳輸裝置,通過在主叫端與被叫端之間建立多個(gè)冗余媒體通道,在媒體流通信過程中,若檢測(cè)到第一路媒體通道的媒體流傳輸出現(xiàn)異常,則切換到與第一路媒體通道不同的第二路媒體通道進(jìn)行媒體流的傳輸,解決了由于丟包、抖動(dòng)和/或斷鏈等原因?qū)е碌囊粢曨l質(zhì)量下降的問題,確保通信雙方的音視頻質(zhì)量,能很好的應(yīng)用在對(duì)通信質(zhì)量要求較高的場(chǎng)合。
[0081]顯然,本領(lǐng)域的技術(shù)人員可以對(duì)本發(fā)明進(jìn)行各種改動(dòng)和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型在內(nèi)。
【權(quán)利要求】
1.一種媒體流傳輸方法,其特征在于,該方法包括: 根據(jù)主叫端發(fā)送的建鏈請(qǐng)求消息和被叫端對(duì)所述建鏈請(qǐng)求消息的響應(yīng)消息,在主叫端與被叫端之間進(jìn)行媒體能力協(xié)商,并建立至少兩路媒體通道; 根據(jù)協(xié)商后的媒體能力,通過第一路媒體通道進(jìn)行媒體流的傳輸; 當(dāng)檢測(cè)到第一路媒體通道的媒體流傳輸出現(xiàn)異常時(shí),在所述至少兩路媒體通道中選擇其余一路媒體通道作為第二路媒體通道,并將所述媒體流由所述第一路媒體通道切換至所述第二路媒體通道進(jìn)行傳輸。
2.如權(quán)利要求1所述的方法,其特征在于,所述根據(jù)主叫端發(fā)送的建鏈請(qǐng)求消息和被叫端對(duì)所述建鏈請(qǐng)求消息的響應(yīng)消息,在主叫端與被叫端之間進(jìn)行媒體能力協(xié)商,并建立至少兩路媒體通道,具體包括: 解析主叫端向被叫端發(fā)起的建鏈請(qǐng)求消息,其中,所述建鏈請(qǐng)求消息中攜帶所述主叫端的至少兩個(gè)媒體通道網(wǎng)絡(luò)互聯(lián)協(xié)議IP地址及對(duì)應(yīng)的至少兩個(gè)媒體通道端口號(hào); 將被叫端對(duì)所述建鏈請(qǐng)求消息的響應(yīng)消息,轉(zhuǎn)發(fā)給所述主叫端,其中,所述響應(yīng)消息中攜帶被叫端的至少兩個(gè)媒體通道IP地址及對(duì)應(yīng)的至少兩個(gè)媒體通道端口號(hào); 在與所述主叫端的媒體通道端口號(hào)對(duì)應(yīng)的主叫端端口,及與所述被叫端的媒體通道端口號(hào)對(duì)應(yīng)的被叫端端口之間,建立媒體通道。
3.如權(quán)利要求2所述的方法,其特征在于,根據(jù)會(huì)話描述協(xié)議SDP協(xié)議在主叫端發(fā)送的建鏈請(qǐng)求消息中攜帶所述主叫端的至少兩個(gè)媒體通道IP地址及對(duì)應(yīng)的至少兩個(gè)媒體通道端口號(hào);和/或 根據(jù)會(huì)話描述協(xié)議SDP協(xié)議在被叫端響應(yīng)所述建鏈請(qǐng)求消息的響應(yīng)消息中攜帶所述被叫端的至少兩個(gè)媒體通道IP地址及對(duì)應(yīng)的至少兩個(gè)媒體通道端口號(hào)。
4.如權(quán)利要求2所述的方法,其特征在于,當(dāng)檢測(cè)到第一路媒體通道媒體流傳輸出現(xiàn)異常時(shí),在所述至少兩路媒體通道中選擇其余一路媒體通道作為第二媒體通道,并將所述媒體流由第一路媒體通道切換至所述第二路媒體通道進(jìn)行傳輸,具體包括: 分析主叫端接收到的媒體流丟包率和/或抖動(dòng)值; 當(dāng)超過設(shè)定閾值時(shí),確定主叫端的第一主叫端端口對(duì)應(yīng)的第一路媒體通道中媒體流傳輸出現(xiàn)異常,通知主叫端將所述媒體流由主叫端的第一主叫端端口對(duì)應(yīng)的第一路媒體通道切換至第二主叫端端口對(duì)應(yīng)的第二路媒體通道進(jìn)行傳輸。
5.如權(quán)利要求4所述的方法,其特征在于,所述第一主叫端端口對(duì)應(yīng)的第一路媒體通道與第二主叫端端口對(duì)應(yīng)的第二路媒體通道處于不同網(wǎng)絡(luò),且所述第一主叫端端口僅和第一被叫端端口之間建立一路媒體通道,所述第一被叫端端口僅和所述第一主叫端端口建立一路媒體通道。
6.如權(quán)利要求2所述的方法,其特征在于,當(dāng)檢測(cè)到第一路媒體通道媒體流傳輸出現(xiàn)異常時(shí),在所述至少兩路媒體通道中選擇其余一路媒體通道作為第二媒體通道,并將所述媒體流由第一路媒體通道切換至所述第二路媒體通道進(jìn)行傳輸,具體包括: 分析被叫端接收到的媒體流丟包率和/或抖動(dòng)值; 當(dāng)超過設(shè)定閾值時(shí),確定第一被叫端端口對(duì)應(yīng)的第一路媒體通道中媒體流傳輸出現(xiàn)異常,通知被叫端將所述媒體流由被叫端的第一被叫端端口對(duì)應(yīng)的第一路媒體通道切換至第二被叫端端口對(duì)應(yīng)的第二路媒體通道進(jìn)行傳輸。
7.如權(quán)利要求6所述的方法,其特征在于,所述第一被叫端端口對(duì)應(yīng)的第一路媒體通道與第二被叫端端口對(duì)應(yīng)的第二路媒體通道處于不同網(wǎng)絡(luò),且所述第一被叫端端口僅和第一主叫端端口建立一路媒體通道,所述第一主叫端端口僅和所述第一被叫端端口之間建立一路媒體通道。
8.一種媒體流傳輸裝置,其特征在于,該裝置包括: 媒體通道建立單元,用于根據(jù)主叫端發(fā)送的建鏈請(qǐng)求消息和被叫端對(duì)所述建鏈請(qǐng)求消息的響應(yīng)消息,在主叫端與被叫端之間進(jìn)行媒體能力協(xié)商,并建立至少兩路媒體通道; 傳輸單元,用于根據(jù)協(xié)商后的媒體能力,通過第一路媒體通道進(jìn)行媒體流的傳輸; 切換單元,用于當(dāng)檢測(cè)到第一路媒體通道的媒體流傳輸出現(xiàn)異常時(shí),在所述至少兩路媒體通道中選擇其余一路媒體通道作為第二路媒體通道,并將所述媒體流由所述第一路媒體通道切換至所述第二路媒體通道進(jìn)行傳輸。
9.如權(quán)利要求8所述的裝置,其特征在于,所述媒體通道建立單元,具體用于: 解析主叫端向被叫端發(fā)起的建鏈請(qǐng)求消息,其中,所述建鏈請(qǐng)求消息中攜帶所述主叫端的至少兩個(gè)媒體通道網(wǎng)絡(luò)互聯(lián)協(xié)議IP地址及對(duì)應(yīng)的至少兩個(gè)媒體通道端口號(hào); 將被叫端對(duì)所述建鏈請(qǐng)求消息的響應(yīng)消息,轉(zhuǎn)發(fā)給所述主叫端,其中,所述響應(yīng)消息中攜帶被叫端的至少兩個(gè)媒體通道IP地址及對(duì)應(yīng)的至少兩個(gè)媒體通道端口號(hào); 在與所述主叫端的媒體通道端口號(hào)對(duì)應(yīng)的主叫端端口,及與所述被叫端的媒體通道端口號(hào)對(duì)應(yīng)的被叫端端口之間,建立媒體通道。
10.如權(quán)利要求9所述的裝置,其特征在于,所述媒體通道建立單元,還用于: 根據(jù)會(huì)話描述協(xié)議SDP協(xié)議在主叫端發(fā)送的建鏈請(qǐng)求消息中攜帶所述主叫端的至少兩個(gè)媒體通道IP地址及對(duì)應(yīng)的至少兩個(gè)媒體通道端口號(hào);和/或 根據(jù)會(huì)話描述協(xié)議SDP協(xié)議在被叫端響應(yīng)所述建鏈請(qǐng)求消息的響應(yīng)消息中攜帶所述被叫端的至少兩個(gè)媒體通道IP地址及對(duì)應(yīng)的至少兩個(gè)媒體通道端口號(hào)。
11.如權(quán)利要求9所述的裝置,其特征在于,所述切換單元,具體用于: 分析主叫端接收到的媒體流丟包率和/或抖動(dòng)值; 當(dāng)超過設(shè)定閾值時(shí),確定主叫端的第一主叫端端口對(duì)應(yīng)的第一路媒體通道中媒體流傳輸出現(xiàn)異常,通知主叫端將所述媒體流由主叫端的第一主叫端端口對(duì)應(yīng)的第一路媒體通道切換至第二主叫端端口對(duì)應(yīng)的第二路媒體通道進(jìn)行傳輸。
12.如權(quán)利要求11所述的裝置,其特征在于,所述第一主叫端端口對(duì)應(yīng)的第一路媒體通道與第二主叫端端口對(duì)應(yīng)的第二路媒體通道處于不同網(wǎng)絡(luò),且所述第一主叫端端口僅和第一被叫端端口之間建立一路媒體通道,所述第一被叫端端口僅和所述第一主叫端端口建立一路媒體通道。
13.如權(quán)利要求9所述的裝置,其特征在于,所述切換單元,具體用于: 分析被叫端接收到的媒體流丟包率和/或抖動(dòng)值; 當(dāng)超過設(shè)定閾值時(shí),確定第一被叫端端口對(duì)應(yīng)的第一路媒體通道中媒體流傳輸出現(xiàn)異常,通知被叫端將所述媒體流由被叫端的第一被叫端端口對(duì)應(yīng)的第一路媒體通道切換至第二被叫端端口對(duì)應(yīng)的第二路媒體通道進(jìn)行傳輸。
14.如權(quán)利要求13所述的裝置,其特征在于,所述第一被叫端端口對(duì)應(yīng)的第一路媒體通道與第二被叫端端口對(duì)應(yīng)的第二路媒體通道處于不同網(wǎng)絡(luò),且所述第一被叫端端口僅和第一主叫端端口建立一路媒體通道,所述第一主叫端端口僅和所述第一被叫端端口之間建立一路媒體通道。`
【文檔編號(hào)】H04L29/06GK103685144SQ201210319178
【公開日】2014年3月26日 申請(qǐng)日期:2012年8月31日 優(yōu)先權(quán)日:2012年8月31日
【發(fā)明者】廖凱, 張偉, 賀彬 申請(qǐng)人:中興通訊股份有限公司