專利名稱:流媒體碼率控制方法、系統(tǒng)和設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種流媒體碼率控制方法、系統(tǒng)和設(shè)備。
背景技術(shù):
隨著通信技術(shù),特別是無線移動(dòng)網(wǎng)絡(luò)技術(shù)的發(fā)展,網(wǎng)絡(luò)帶寬已經(jīng)能夠滿足開展實(shí)時(shí)流媒體業(yè)務(wù)的需求,流媒體業(yè)務(wù)已經(jīng)成為未來通信增值業(yè)務(wù)的發(fā)展方向。為了充分利用已有的網(wǎng)絡(luò)資源,同時(shí)提高用戶的體驗(yàn),需要在開展流媒體業(yè)務(wù)的同時(shí)引入QoS(Quality of Service,業(yè)務(wù)質(zhì)量)控制機(jī)制。特別是對(duì)于帶寬差異很大的無線網(wǎng)絡(luò),通過QoS控制機(jī)制,可以大大增強(qiáng)用戶業(yè)務(wù)體驗(yàn),增加對(duì)用戶的吸引力。
現(xiàn)有技術(shù)中,通過MBR(Multiple Bit Rate,多碼率)的方式進(jìn)行流媒體QoS控制。其原理為在編碼器進(jìn)行內(nèi)容編碼的時(shí)候,選擇不同的編碼速率,例如30kbps、60kbps、100kbps等,流媒體文件將同一節(jié)目源以這些不同編碼速率制作到一個(gè)流媒體文件內(nèi),流媒體服務(wù)器存儲(chǔ)該包括多個(gè)編碼速率的流媒體文件作為節(jié)目源。在流媒體播放過程中,流媒體服務(wù)器和終端播放器通過QoS控制協(xié)議進(jìn)行交互。流媒體服務(wù)器根據(jù)用戶終端的反饋,了解當(dāng)前的網(wǎng)絡(luò)狀況,選擇合適碼率的碼流發(fā)送給用戶終端的播放器進(jìn)行播放,如在網(wǎng)絡(luò)情況較好時(shí),采用100kbps的編碼速率向用戶播放;在網(wǎng)絡(luò)狀況不佳時(shí),降低編碼速率,使用60kbps或30kbps的編碼速率向用戶播放。
由上述方案可知,通過MBR的方式進(jìn)行流媒體QoS控制,需要將同一節(jié)目使用不同的碼率編碼到同一流媒體文件中,增加了流媒體服務(wù)器上存儲(chǔ)空間的占用。另外,MBR文件在制作時(shí),只能選擇有限的幾種速率進(jìn)行編碼,播放時(shí)可選擇的碼率參數(shù)很少,不能很好的滿足帶寬適配的要求。最后,播放MBR文件,需要占用較多的流媒體服務(wù)器硬件和軟件資源,增加業(yè)務(wù)的運(yùn)營成本。尤其在進(jìn)行多個(gè)服務(wù)器集群組網(wǎng)時(shí),每一個(gè)流媒體服務(wù)器都需要很高的性能,增加運(yùn)營成本。
發(fā)明內(nèi)容
本發(fā)明的實(shí)施例提供一種流媒體碼率控制方法,包括以下步驟流媒體服務(wù)器根據(jù)用戶終端反饋的網(wǎng)絡(luò)狀況,判斷是否調(diào)整向所述用戶終端發(fā)送的媒體流的碼率;需要進(jìn)行所述調(diào)整時(shí),所述流媒體服務(wù)器向碼率適配服務(wù)器發(fā)送原始媒體流及適配參數(shù);所述流媒體服務(wù)器接收所述碼率適配服務(wù)器根據(jù)所述適配參數(shù)進(jìn)行碼率適配處理后的媒體流并向所述用戶終端發(fā)送。
本發(fā)明的實(shí)施例還提供一種流媒體碼率控制系統(tǒng),包括用戶終端,用于接收流媒體服務(wù)器發(fā)送的媒體流,并向所述流媒體服務(wù)器反饋網(wǎng)絡(luò)狀況;流媒體服務(wù)器,用于在根據(jù)用戶終端反饋的網(wǎng)絡(luò)狀況判斷需要調(diào)整向所述用戶終端發(fā)送的媒體流的碼率時(shí),向碼率適配服務(wù)器發(fā)送原始媒體流及適配參數(shù),并將所述碼率適配服務(wù)器發(fā)送的碼率適配處理后的媒體流發(fā)送給所述用戶終端;碼率適配服務(wù)器,用于根據(jù)流媒體服務(wù)器發(fā)送的適配參數(shù),將所述流媒體服務(wù)器發(fā)送的原始媒體流進(jìn)行碼率適配處理,并發(fā)送給所述流媒體服務(wù)器。
本發(fā)明的實(shí)施例還提供一種流媒體服務(wù)器,包括判斷模塊,用于根據(jù)用戶終端反饋的網(wǎng)絡(luò)狀況判斷是否需要對(duì)向所述用戶終端發(fā)送的媒體流的碼率進(jìn)行適配,將需要進(jìn)行所述碼率適配的判斷結(jié)果發(fā)送給所述流媒體轉(zhuǎn)發(fā)模塊;流媒體轉(zhuǎn)發(fā)模塊,用于向網(wǎng)絡(luò)中的碼率適配服務(wù)器發(fā)送待適配的原始媒體流及適配參數(shù);流媒體接收模塊,用于接收網(wǎng)絡(luò)中的碼率適配服務(wù)器發(fā)送的適配后的媒體流。
本發(fā)明的實(shí)施例還提供一種碼率適配服務(wù)器,包括接收模塊,用于將流媒體服務(wù)器發(fā)送的原始媒體流存儲(chǔ)到緩存,并提供給所述碼率轉(zhuǎn)換模塊;碼率轉(zhuǎn)換模塊,用于根據(jù)所述流媒體服務(wù)器發(fā)送的適配參數(shù),對(duì)所述接收模塊接收的媒體流進(jìn)行碼率適配處理;發(fā)送模塊,用于將所述碼率轉(zhuǎn)換模塊進(jìn)行碼率適配處理后的媒體流向所述流媒體服務(wù)器發(fā)送。
與現(xiàn)有技術(shù)相比,本發(fā)明的實(shí)施例具有以下優(yōu)點(diǎn)碼率適配服務(wù)器對(duì)流媒體服務(wù)器所需的流媒體碼率進(jìn)行適配處理,在流媒體服務(wù)器上只需要將片源按照單一碼率存儲(chǔ),節(jié)省了流媒體服務(wù)器上的存儲(chǔ)空間,同時(shí)減少了流媒體片源編碼復(fù)雜度。
圖1是本發(fā)明的實(shí)施例一中流媒體碼率控制方法的流程圖;圖2是本發(fā)明的實(shí)施例二中對(duì)不同的用戶終端進(jìn)行流媒體碼率控制的信令流程圖;圖3是本發(fā)明的實(shí)施例三中流媒體碼率控制系統(tǒng)的結(jié)構(gòu)示意圖;圖4是本發(fā)明的實(shí)施例四中流媒體服務(wù)器的結(jié)構(gòu)示意圖;圖5是本發(fā)明的實(shí)施例五中碼率適配服務(wù)器的結(jié)構(gòu)示意圖;圖6是本發(fā)明的實(shí)施例六中碼率適配服務(wù)器集群組網(wǎng)的結(jié)構(gòu)示意圖。
具體實(shí)施例方式
下面結(jié)合附圖和實(shí)施例,對(duì)本發(fā)明的實(shí)施方式做進(jìn)一步說明。
本發(fā)明的實(shí)施例一中,一種流媒體碼率控制方法如圖1所示,包括以下步驟步驟s101、用戶終端向流媒體服務(wù)器發(fā)送流媒體播放請(qǐng)求。
該步驟中,用戶終端通過RTSP(Real Time Streaming Protocol,實(shí)時(shí)流)協(xié)議向流媒體服務(wù)器發(fā)送流媒體播放請(qǐng)求。
步驟s102、流媒體服務(wù)器向用戶終端發(fā)送媒體流。
該步驟中,用戶終端通過流媒體服務(wù)器的鑒權(quán)認(rèn)證后,流媒體服務(wù)器向該用戶終端發(fā)送媒體流,用戶終端進(jìn)行媒體流的播放。流媒體服務(wù)器在選擇媒體流的初始發(fā)送碼率時(shí),需要參照網(wǎng)絡(luò)帶寬、正常情況下的傳輸速率等。綜合考慮以上因素后,流媒體服務(wù)器可以使用網(wǎng)絡(luò)正常狀態(tài)下的編碼速率作為初始發(fā)送碼率,以使各用戶終端在正常情況下能夠達(dá)到最佳的媒體流播放效果,對(duì)于向不同的用戶終端發(fā)送的媒體流,流媒體服務(wù)器通過會(huì)話連接ID進(jìn)行標(biāo)識(shí)。
步驟s103、用戶終端實(shí)時(shí)向流媒體服務(wù)器反饋當(dāng)前網(wǎng)絡(luò)狀況。
該步驟中,用戶終端在播放過程中,通過RTCP(Real Time ControlProtocol,實(shí)時(shí)傳輸控制協(xié)議)協(xié)議,實(shí)時(shí)向流媒體服務(wù)器反饋當(dāng)前網(wǎng)絡(luò)狀況。在反饋的RTCP數(shù)據(jù)包中包括用戶終端已接收數(shù)據(jù)包的最大序列號(hào)、丟失的數(shù)據(jù)包數(shù)目、延時(shí)抖動(dòng)和時(shí)間戳等參數(shù)。
步驟s104、流媒體服務(wù)器判斷是否需要進(jìn)行碼率適配處理,不需要時(shí)進(jìn)行步驟s105,需要時(shí)進(jìn)行步驟s106。
該步驟中,流媒體服務(wù)器根據(jù)解析RTCP數(shù)據(jù)包中的參數(shù)可以估計(jì)出時(shí)延,并且可以根據(jù)數(shù)據(jù)包丟失數(shù)目和延時(shí)抖動(dòng)等網(wǎng)絡(luò)狀況確定是否需要進(jìn)行碼率適配處理。在實(shí)際應(yīng)用中各用戶終端所處的環(huán)境不同,如由于移動(dòng)性、傳輸信道的信號(hào)質(zhì)量、帶寬等因素不斷變化,可能會(huì)導(dǎo)致用戶終端在播放高碼率的媒體流時(shí)出現(xiàn)停頓、馬賽克等現(xiàn)象,降低了用戶終端的使用體驗(yàn)。同時(shí),流媒體服務(wù)器可以根據(jù)這些參數(shù)估算出應(yīng)如何調(diào)整媒體流的發(fā)送速率,即估算出與該用戶終端所在網(wǎng)絡(luò)狀況相匹配的匹配碼率,以使用戶終端能夠得到質(zhì)量較好的流媒體文件播放效果。
步驟s105、流媒體服務(wù)器直接將原始媒體流發(fā)送給終端,不需要進(jìn)行適配。
該步驟中,在流媒體服務(wù)器發(fā)現(xiàn)用戶終端所處的網(wǎng)絡(luò)狀況能夠正常的播放媒體流文件時(shí),則不需要對(duì)媒體流的碼率進(jìn)行適配。
步驟s106、流媒體服務(wù)器將原始媒體流和需要的相關(guān)適配帶寬參數(shù)發(fā)送給碼率適配服務(wù)器。
該步驟中,在流媒體服務(wù)器發(fā)現(xiàn)用戶終端所處的網(wǎng)絡(luò)狀況不能正常的播放媒體流文件時(shí),則需要對(duì)媒體流的碼率進(jìn)行適配。流媒體服務(wù)器根據(jù)預(yù)先設(shè)置好的碼率適配服務(wù)器IP地址,將原始媒體流和需要的相關(guān)適配帶寬參數(shù)發(fā)送給碼率適配服務(wù)器。該適配帶寬參數(shù)包括原始媒體流所屬的會(huì)話連接ID、轉(zhuǎn)換后的匹配碼率等。其中,在發(fā)送原始媒體流時(shí),采用標(biāo)準(zhǔn)RTP(Real-timeTransport Protocol,實(shí)時(shí)傳送協(xié)議)協(xié)議承載。
步驟s107、碼率適配服務(wù)器對(duì)原始媒體流進(jìn)行碼率適配處理。
該步驟中,碼率適配服務(wù)器根據(jù)適配帶寬參數(shù),對(duì)流媒體服務(wù)器發(fā)送的原始媒體流進(jìn)行碼率適配處理。具體的,碼率適配服務(wù)器接收到從流媒體服務(wù)器轉(zhuǎn)發(fā)過來的原始媒體流時(shí),將該原始媒體流存儲(chǔ)到緩存中,在每接收到一個(gè)完整的多媒體幀之后,對(duì)該多媒體幀進(jìn)行碼率適配,得到以步驟s106中接收到的匹配碼率編碼的媒體流。
步驟s108、碼率適配服務(wù)器將適配后的媒體流發(fā)送給相應(yīng)的流媒體服務(wù)器。
該步驟中,碼率適配服務(wù)器根據(jù)發(fā)送原始媒體流的流媒體服務(wù)器地址,每完成一個(gè)多媒體幀的碼率適配轉(zhuǎn)換,就將包括該適配轉(zhuǎn)換后的多媒體幀的媒體流發(fā)送給相應(yīng)的流媒體服務(wù)器,其中需要攜帶該適配后的媒體流所屬的會(huì)話連接ID,該ID與媒體流在適配前所屬的會(huì)話連接ID相同,即為步驟s106中碼率適配服務(wù)器接收到的該原始媒體流所屬的會(huì)話連接ID。
步驟s109、流媒體服務(wù)器將適配后的媒體流發(fā)送給終端。
該步驟中,流媒體服務(wù)器根據(jù)適配后的媒體流所屬的會(huì)話連接ID,將適配后的媒體流發(fā)送給對(duì)應(yīng)的終端。
通過采用如上述實(shí)施例一所描述的具體場(chǎng)景下流媒體碼率控制方法,由流媒體服務(wù)器根據(jù)用戶終端反饋的網(wǎng)絡(luò)狀況,實(shí)時(shí)判斷是否需要調(diào)整向用戶終端發(fā)送的流媒體碼率;并在需要調(diào)整時(shí)由碼率適配服務(wù)器對(duì)原始媒體流進(jìn)行適配處理,再由流媒體服務(wù)器將適配處理后的媒體流發(fā)送給用戶終端。因此,流媒體服務(wù)器上只需存儲(chǔ)一種碼率的片源,節(jié)省了流媒體服務(wù)器上的存儲(chǔ)空間,減少了流媒體片源編碼復(fù)雜度。
本發(fā)明的實(shí)施例二以3G無線網(wǎng)絡(luò)為例,說明對(duì)于3G無線網(wǎng)絡(luò)中不同的用戶終端流媒體碼率的控制方法。該實(shí)施例中,設(shè)3G無線網(wǎng)絡(luò)中流媒體服務(wù)器與用戶終端間流媒體的正常播放碼率為100Kbps,此時(shí)流媒體服務(wù)器上存放的片源只以100Kbps來進(jìn)行編碼。設(shè)一IP地址為192.168.1.2的流媒體服務(wù)器同時(shí)對(duì)用戶終端1與用戶終端2提供流媒體業(yè)務(wù)服務(wù),該流媒體服務(wù)器的碼率適配處理需求由一IP地址為192.168.1.10的碼率適配服務(wù)器完成。其中,流媒體服務(wù)器與用戶終端間媒體流的可選播放碼率可以為連續(xù)可變的任意編碼速率。但在考慮到無線網(wǎng)絡(luò)復(fù)雜多變的環(huán)境網(wǎng)絡(luò)狀況時(shí),為了避免網(wǎng)絡(luò)狀況的細(xì)微變化即造成適用的碼率變化、導(dǎo)致碼率轉(zhuǎn)換的頻繁發(fā)生,也可以將將碼率適配服務(wù)器適配處理后的可選碼率設(shè)置為離散的數(shù)值,如30Kbps、40Kbps、50Kbps、60Kbps、70Kbps、80Kbps、90Kbps、100Kbps。本實(shí)施例中的描述將以可選播放碼率為以上離散數(shù)值為例。
以用戶終端1的媒體流不需要進(jìn)行碼率適配處理為例,如圖2所示,包括如下步驟步驟s201、用戶終端1通過RTSP協(xié)議向流媒體服務(wù)器發(fā)送流媒體播放請(qǐng)求。
步驟s202、流媒體服務(wù)器向用戶終端1發(fā)送媒體流,用戶終端1播放該媒體流,該媒體流的碼率為100Kbps。
步驟s203、用戶終端1通過RTCP協(xié)議實(shí)時(shí)向流媒體服務(wù)器反饋當(dāng)前網(wǎng)絡(luò)狀況。
步驟s204、流媒體服務(wù)器解析用戶終端1發(fā)送的RTCP數(shù)據(jù)包,根據(jù)該數(shù)據(jù)包中攜帶的參數(shù)估算用戶終端1所在網(wǎng)絡(luò)的網(wǎng)絡(luò)狀況,判斷不需要對(duì)媒體流的碼率進(jìn)行適配。
該RTCP數(shù)據(jù)包中包括已接收數(shù)據(jù)包的最大序列號(hào)、丟失的數(shù)據(jù)包數(shù)目、延時(shí)抖動(dòng)和時(shí)間戳等參數(shù),流媒體服務(wù)器根據(jù)這些參數(shù)可以估計(jì)出時(shí)延,并且可以根據(jù)數(shù)據(jù)包丟失數(shù)目和延時(shí)抖動(dòng)等情況,判斷當(dāng)前向用戶終端1發(fā)送的媒體流所采用的碼率是否合適,這里以判斷結(jié)果為不需要進(jìn)行適配為例。
步驟s205、流媒體服務(wù)器繼續(xù)向用戶終端1發(fā)送媒體流,用戶終端1播放該媒體流并結(jié)束。
以用戶終端2的媒體流需要進(jìn)行碼率適配處理為例,如圖2所示,包括如下步驟步驟s211、用戶終端2通過RTSP協(xié)議向流媒體服務(wù)器發(fā)送流媒體播放請(qǐng)求。
步驟s212、流媒體服務(wù)器向用戶終端2發(fā)送媒體流,用戶終端2播放該媒體流,該媒體流的碼率為100Kbps。
步驟s213、用戶終端2通過RTCP協(xié)議實(shí)時(shí)向流媒體服務(wù)器反饋當(dāng)前網(wǎng)絡(luò)狀況。步驟s214、流媒體服務(wù)器解析用戶終端2發(fā)送的RTCP數(shù)據(jù)包,根據(jù)該數(shù)據(jù)包中攜帶的參數(shù)估算用戶終端2所在網(wǎng)絡(luò)的網(wǎng)絡(luò)狀況,判斷需要對(duì)媒體流的碼率進(jìn)行適配。
該RTCP數(shù)據(jù)包中包括已接收數(shù)據(jù)包的最大序列號(hào)、丟失的數(shù)據(jù)包數(shù)目、延時(shí)抖動(dòng)和時(shí)間戳等參數(shù),流媒體服務(wù)器根據(jù)這些參數(shù)可以估計(jì)出時(shí)延,并且可以根據(jù)數(shù)據(jù)包丟失數(shù)目和延時(shí)抖動(dòng)等情況估算出應(yīng)如何調(diào)整媒體流的發(fā)送速率,以使用戶終端能夠得到質(zhì)量較好的流媒體文件播放效果。此步驟中,設(shè)流媒體服務(wù)器根據(jù)該數(shù)據(jù)包中攜帶的參數(shù),估算出與用戶終端2所在無線網(wǎng)絡(luò)狀況相匹配的匹配碼率約為82Kbps。
步驟s215、流媒體服務(wù)器將原始媒體流和需要的相關(guān)適配帶寬參數(shù)發(fā)送給碼率適配服務(wù)器。
發(fā)送時(shí),目的碼率適配服務(wù)器的IP地址為192.168.1.10,發(fā)送的內(nèi)容和參數(shù)包括以RTP數(shù)據(jù)包形式表示的原始媒體流、適配碼率82Kbps、流媒體服務(wù)器IP地址192.168.1.2以及當(dāng)前媒體流所屬的會(huì)話連接ID(假設(shè)為101)。
步驟s216、碼率適配服務(wù)器對(duì)媒體流進(jìn)行碼率適配處理。
接收到IP地址為192.168.1.2的流媒體服務(wù)器發(fā)送的參數(shù)后,碼率適配服務(wù)器對(duì)流媒體服務(wù)器發(fā)送的原始媒體流進(jìn)行緩存,每接收到一幀完整的數(shù)據(jù)后,對(duì)該幀進(jìn)行碼率適配處理。在選擇該適配處理的目標(biāo)碼率時(shí),由于流媒體服務(wù)器發(fā)送的匹配碼率為82Kbps,為了避免頻繁的碼率轉(zhuǎn)換,碼率適配服務(wù)器獲取設(shè)置中小于82Kbps且最接近82Kbps的碼率作為目標(biāo)速率,此例中為80Kbps。因此,碼率為100Kbps的原始媒體流經(jīng)適配處理后,碼率為80Kbps。
步驟s217、碼率適配服務(wù)器將適配后的媒體流發(fā)送給流媒體服務(wù)器。
每轉(zhuǎn)換完成一幀,碼率適配服務(wù)器將該幀發(fā)送到IP地址為192.168.1.2的流媒體服務(wù)器,同時(shí)攜帶該適配后的媒體流所屬的會(huì)話連接ID,該ID與媒體流在適配前所屬的會(huì)話連接ID相同,此例中為101。
步驟s218、流媒體服務(wù)器將適配后的媒體流發(fā)送用戶給終端2。
流媒體服務(wù)器根據(jù)媒體流所屬的會(huì)話連接ID,將適配后的碼率為80Kbps的媒體流發(fā)送給用戶終端2,用戶終端2進(jìn)行新媒體流的播放。
在步驟s218后,流媒體服務(wù)器仍按照以上流程實(shí)時(shí)根據(jù)用戶終端2的反饋判斷是否需要調(diào)整向用戶終端2發(fā)送的媒體流的編碼速率。假設(shè)接下來某一時(shí)刻t1,流媒體服務(wù)器估算出用戶終端2能夠支持的碼率約為85Kbps,則流媒體服務(wù)器向碼率適配服務(wù)器發(fā)送原始媒體流及匹配碼率85Kbps,碼率適配服務(wù)器按照步驟s216描述的過程仍將原始媒體流的碼率適配為80Kbps;再接下來的一時(shí)刻t2,若流媒體服務(wù)器估算出用戶終端2能夠支持的碼率約為75Kbps,則碼率適配服務(wù)器會(huì)將原始媒體流的碼率適配為70Kbps;再接下來的一時(shí)刻t3,若流媒體服務(wù)器估算出用戶終端2能夠支持的碼率約為100Kbps,則流媒體服務(wù)器直接將原始媒體流發(fā)送給用戶終端,無需碼率適配服務(wù)器進(jìn)行適配轉(zhuǎn)換。以上描述的t1、t2、t3時(shí)刻的流媒體碼率控制流程與步驟s211至步驟s218描述的流程相似,在此不作重復(fù)描述。
通過采用如上述實(shí)施例二所描述的具體場(chǎng)景下的流媒體碼率控制方法,實(shí)現(xiàn)了由流媒體服務(wù)器和碼率適配服務(wù)器相配合,進(jìn)行流媒體碼率控制。其中,由流媒體服務(wù)器根據(jù)用戶終端反饋判斷是否需要調(diào)整向用戶終端發(fā)送的流媒體碼率;并在需要調(diào)整時(shí)將碼率適配服務(wù)器適配處理后的媒體流發(fā)送給用戶終端。因此,流媒體服務(wù)器上只需存儲(chǔ)一種碼率的片源,節(jié)省了流媒體服務(wù)器上的存儲(chǔ)空間。另外,碼率適配服務(wù)器的加入使得網(wǎng)絡(luò)側(cè)能夠使用的流媒體碼率種類更加多樣,能夠適應(yīng)不同網(wǎng)絡(luò)條件下流媒體文件的播放要求。
本發(fā)明的實(shí)施例三中,一種流媒體碼率控制系統(tǒng)包括用戶終端、流媒體服務(wù)器和碼率適配服務(wù)器。如圖3所示,系統(tǒng)中包括碼率適配服務(wù)器10、流媒體服務(wù)器20以及多個(gè)用戶終端30。其中,流媒體服務(wù)器1為與其連接的三個(gè)用戶終端提供流媒體服務(wù),流媒體服務(wù)器2為與其連接的兩個(gè)用戶終端提供流媒體服務(wù)。碼率適配服務(wù)器同時(shí)為流媒體服務(wù)器1和流媒體服務(wù)器2提供碼率適配處理服務(wù)。
具體的,用戶終端30,接收流媒體服務(wù)器20發(fā)送的媒體流,并實(shí)時(shí)向流媒體服務(wù)器20反饋其當(dāng)前所處網(wǎng)絡(luò)的狀況。
流媒體服務(wù)器20,根據(jù)用戶終端30反饋的網(wǎng)絡(luò)狀況,判斷是否需要調(diào)整向用戶終端30發(fā)送的媒體流的碼率。需要進(jìn)行適配調(diào)整時(shí),向碼率適配服務(wù)器10發(fā)送原始媒體流以及與該用戶終端所處網(wǎng)絡(luò)狀況相匹配的的匹配速率,并將碼率適配服務(wù)器10發(fā)送的碼率適配處理后的媒體流發(fā)送給與該媒體流對(duì)應(yīng)的用戶終端30。
碼率適配服務(wù)器10,按照流媒體服務(wù)器20的適配處理要求,將流媒體服務(wù)器20發(fā)送的原始媒體流的碼率適配處理為目標(biāo)碼率后,發(fā)送給流媒體服務(wù)器20。
本發(fā)明的實(shí)施例四中,一種流媒體服務(wù)器的結(jié)構(gòu)如圖4所示,進(jìn)一步包括終端業(yè)務(wù)處理模塊11、判斷模塊12、流媒體轉(zhuǎn)發(fā)模塊13、流媒體接收模塊14和存儲(chǔ)模塊15。
終端業(yè)務(wù)處理模塊11,進(jìn)行流媒體的并行發(fā)送、緩存控制,以及簡(jiǎn)單的RTCP協(xié)議解析和控制機(jī)制,提供流媒體服務(wù)的基本功能。在接收到用戶終端發(fā)送的媒體流播放請(qǐng)求時(shí),向用戶終端發(fā)送原始媒體流,或向用戶終端發(fā)送從流媒體接收模塊14接收到的適配后的媒體流。另外,接收用戶終端實(shí)時(shí)發(fā)送的網(wǎng)絡(luò)狀況并轉(zhuǎn)發(fā)給判斷模塊12。
判斷模塊12,根據(jù)終端業(yè)務(wù)處理模塊11接收到的用戶終端反饋的網(wǎng)絡(luò)情況,判斷是否需要對(duì)當(dāng)前向用戶終端發(fā)送的媒體流的碼率進(jìn)行適配,需要適配時(shí),將需要對(duì)媒體流的碼率進(jìn)行適配的判斷結(jié)果發(fā)送給流媒體轉(zhuǎn)發(fā)模塊13。
流媒體轉(zhuǎn)發(fā)模塊13,接收到判斷模塊12發(fā)送的消息時(shí),向網(wǎng)絡(luò)中的碼率適配服務(wù)器發(fā)送待適配的原始媒體流,在發(fā)送時(shí)還需要攜帶該媒體流所屬的會(huì)話連接ID、轉(zhuǎn)換后的匹配碼率等適配帶寬參數(shù)。
流媒體接收模塊14,接收網(wǎng)絡(luò)中的碼率適配服務(wù)器發(fā)送的適配后的媒體流,并將該適配后的媒體流以及對(duì)應(yīng)的會(huì)話連接ID發(fā)送給終端業(yè)務(wù)處理模塊11。
存儲(chǔ)模塊15,存儲(chǔ)原始媒體流文件。在終端業(yè)務(wù)處理模塊11需要向用戶終端發(fā)送原始媒體流時(shí),或在流媒體轉(zhuǎn)發(fā)模塊13需要向網(wǎng)絡(luò)中的碼率適配服務(wù)器發(fā)送原始媒體流時(shí),提供原始媒體流。
本發(fā)明的實(shí)施例五中,一種碼率適配服務(wù)器的結(jié)構(gòu)如圖5所示,進(jìn)一步包括接收模塊21、碼率轉(zhuǎn)換模塊22和發(fā)送模塊23。
接收模塊21,接收網(wǎng)絡(luò)中流媒體服務(wù)器發(fā)送的原始媒體流并將其存儲(chǔ)在緩存中,同時(shí)接收流媒體服務(wù)器發(fā)送的適配帶寬參數(shù),該適配帶寬參數(shù)包括媒體流所屬的會(huì)話連接ID、轉(zhuǎn)換后的匹配碼率等。
碼率轉(zhuǎn)換模塊22,根據(jù)接收模塊21存儲(chǔ)在緩存中的原始媒體流以及轉(zhuǎn)換后的目標(biāo)碼率,對(duì)原始媒體流進(jìn)行碼率轉(zhuǎn)換,并實(shí)時(shí)將轉(zhuǎn)換后的媒體流發(fā)送至發(fā)送模塊23。
發(fā)送模塊23,將碼率轉(zhuǎn)換模塊22轉(zhuǎn)換后的媒體流實(shí)時(shí)向?qū)?yīng)的媒體服務(wù)器發(fā)送,其中還需要攜帶該轉(zhuǎn)換后的媒體流所屬的會(huì)話連接ID。
在上述實(shí)施例三中,以不同的流媒體服務(wù)器共享一臺(tái)碼率適配服務(wù)器為例,對(duì)流媒體碼率控制系統(tǒng)的結(jié)構(gòu)進(jìn)行了說明。在實(shí)際應(yīng)用中,如果在業(yè)務(wù)量很大的情況下,一臺(tái)碼率適配服務(wù)器不能滿足要求,也可以通過增加碼率適配服務(wù)器、通過集群組網(wǎng)的方式提供流媒體碼率適配服務(wù)。如本發(fā)明的實(shí)施例四中圖6所示的組網(wǎng)方式,由兩臺(tái)碼率適配服務(wù)器為三臺(tái)流媒體服務(wù)器提供流媒體碼率轉(zhuǎn)換服務(wù)。例如,兩臺(tái)碼率適配服務(wù)器的IP分別為192.168.1.10和192.168.1.11,三臺(tái)流媒體服務(wù)器的IP分別為192.168.1.2、192.168.1.3和192.168.1.2。在三臺(tái)流媒體服務(wù)器都向碼率適配服務(wù)器發(fā)送需要進(jìn)行適配的原始媒體流時(shí),如果因業(yè)務(wù)量很大,導(dǎo)致一臺(tái)碼率適配服務(wù)器的處理速度不能滿足要求,則兩臺(tái)碼率適配服務(wù)器可以對(duì)業(yè)務(wù)進(jìn)行分流,以滿足三臺(tái)流媒體服務(wù)器的業(yè)務(wù)需求。例如,IP為192.168.1.10的碼率適配服務(wù)器在業(yè)務(wù)量接近極限時(shí),將新接收到的業(yè)務(wù)請(qǐng)求轉(zhuǎn)發(fā)給IP為192.168.1.11的碼率適配服務(wù)器;或通知該新業(yè)務(wù)請(qǐng)求的發(fā)送方將該請(qǐng)求發(fā)送至IP為192.168.1.11的碼率適配服務(wù)器。在處理過程中,流媒體服務(wù)器與碼率適配服務(wù)器之間可以根據(jù)不同的IP區(qū)分同種設(shè)備,進(jìn)行彼此的聯(lián)系。
通過采用如上述實(shí)施例三至實(shí)施例六所描述的流媒體碼率控制系統(tǒng)、流媒體服務(wù)器和碼率適配服務(wù)器,在流媒體服務(wù)器需要調(diào)整向用戶終端發(fā)送的流媒體碼率時(shí),由碼率適配服務(wù)器對(duì)需要進(jìn)行碼率調(diào)整的媒體流進(jìn)行適配處理,并由流媒體服務(wù)器將適配處理后的媒體流發(fā)送給用戶終端。因此,流媒體服務(wù)器上只需存儲(chǔ)一種碼率的片源,節(jié)省了流媒體服務(wù)器上的存儲(chǔ)空間。另外,通過碼率適配服務(wù)器的加入使得網(wǎng)絡(luò)側(cè)可使用的流媒體碼率種類更加豐富,能夠適應(yīng)不同網(wǎng)絡(luò)條件下流媒體文件的播放要求。
以上公開的僅為本發(fā)明的幾個(gè)具體實(shí)施例,但是,本發(fā)明并非局限于此,任何本領(lǐng)域的技術(shù)人員能思之的變化都應(yīng)落入本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種流媒體碼率控制方法,其特征在于,包括以下步驟流媒體服務(wù)器根據(jù)用戶終端反饋的網(wǎng)絡(luò)狀況,判斷是否調(diào)整向所述用戶終端發(fā)送的媒體流的碼率;需要進(jìn)行所述調(diào)整時(shí),所述流媒體服務(wù)器向碼率適配服務(wù)器發(fā)送原始媒體流及適配參數(shù);所述流媒體服務(wù)器接收所述碼率適配服務(wù)器根據(jù)所述適配參數(shù)進(jìn)行碼率適配處理后的媒體流并向所述用戶終端發(fā)送。
2.如權(quán)利要求1所述流媒體碼率控制方法,其特征在于,所述流媒體服務(wù)器向碼率適配服務(wù)器發(fā)送原始媒體流及適配參數(shù)的步驟具體包括所述流媒體服務(wù)器獲取所述碼率適配服務(wù)器的地址;所述流媒體服務(wù)器根據(jù)所述地址,向所述碼率適配服務(wù)器發(fā)送所述原始媒體流及適配參數(shù),所述適配參數(shù)包括所述原始媒體流所屬會(huì)話的標(biāo)識(shí)、以及與所述網(wǎng)絡(luò)狀況相匹配的匹配碼率。
3.如權(quán)利要求2所述流媒體碼率控制方法,其特征在于,所述碼率適配服務(wù)器適配處理后的目標(biāo)碼率為連續(xù)碼率值時(shí),所述碼率適配服務(wù)器根據(jù)所述適配參數(shù)進(jìn)行碼率適配處理的步驟具體包括所述碼率適配服務(wù)器將所述流媒體服務(wù)器發(fā)送的所述原始媒體流存儲(chǔ)到緩存;每存儲(chǔ)一個(gè)完整的多媒體幀,所述碼率適配服務(wù)器將所述多媒體幀的碼率適配為所述匹配碼率;所述碼率適配服務(wù)器向所述流媒體服務(wù)器發(fā)送所述碼率適配處理后的多媒體幀。
4.如權(quán)利要求2所述流媒體碼率控制方法,其特征在于,所述碼率適配服務(wù)器適配處理后的目標(biāo)碼率為離散碼率值時(shí),所述碼率適配服務(wù)器根據(jù)所述適配參數(shù)進(jìn)行碼率適配處理的步驟具體包括所述碼率適配服務(wù)器將所述流媒體服務(wù)器發(fā)送的所述原始媒體流存儲(chǔ)到緩存;每存儲(chǔ)一個(gè)完整的多媒體幀,所述碼率適配服務(wù)器將所述多媒體幀的碼率適配為所述離散碼率值中小于所述匹配碼率且最接近所述匹配碼率的碼率;所述碼率適配服務(wù)器向所述流媒體服務(wù)器發(fā)送所述碼率適配處理后的多媒體幀。
5.如權(quán)利要求3或4所述流媒體碼率控制方法,其特征在于,所述流媒體服務(wù)器接收所述碼率適配服務(wù)器進(jìn)行碼率適配處理后的媒體流并向所述用戶終端發(fā)送的步驟具體包括所述流媒體服務(wù)器接收包括所述碼率適配處理后的多媒體幀的媒體流;所述流媒體服務(wù)器獲取所述媒體流所屬會(huì)話的標(biāo)識(shí);所述流媒體服務(wù)器向與所述標(biāo)識(shí)對(duì)應(yīng)的用戶終端發(fā)送所述碼率適配處理后的媒體流。
6.一種流媒體碼率控制系統(tǒng),其特征在于,包括用戶終端,用于接收流媒體服務(wù)器發(fā)送的媒體流,并向所述流媒體服務(wù)器反饋網(wǎng)絡(luò)狀況;流媒體服務(wù)器,用于在根據(jù)用戶終端反饋的網(wǎng)絡(luò)狀況判斷需要調(diào)整向所述用戶終端發(fā)送的媒體流的碼率時(shí),向碼率適配服務(wù)器發(fā)送原始媒體流及適配參數(shù),并將所述碼率適配服務(wù)器發(fā)送的碼率適配處理后的媒體流發(fā)送給所述用戶終端;碼率適配服務(wù)器,用于根據(jù)流媒體服務(wù)器發(fā)送的適配參數(shù),將所述流媒體服務(wù)器發(fā)送的原始媒體流進(jìn)行碼率適配處理,并發(fā)送給所述流媒體服務(wù)器。
7.如權(quán)利要求6所述流媒體碼率控制系統(tǒng),其特征在于,所述碼率適配服務(wù)器適配處理后的目標(biāo)碼率為連續(xù)碼率值,所述碼率適配服務(wù)器將所述流媒體服務(wù)器發(fā)送的所述原始媒體流存儲(chǔ)到緩存;每存儲(chǔ)一個(gè)完整的多媒體幀,將所述多媒體幀的碼率適配為所述適配參數(shù)中攜帶的匹配碼率,并向所述流媒體服務(wù)器發(fā)送所述碼率適配處理后的多媒體幀。
8.如權(quán)利要求6所述流媒體碼率控制系統(tǒng),其特征在于,所述碼率適配服務(wù)器適配處理后的目標(biāo)碼率為離散碼率值,所述碼率適配服務(wù)器將所述流媒體服務(wù)器發(fā)送的所述原始媒體流存儲(chǔ)到緩存;每存儲(chǔ)一個(gè)完整的多媒體幀,將所述多媒體幀的碼率適配為所述離散碼率值中小于所述適配參數(shù)中攜帶的匹配碼率且最接近所述匹配碼率的碼率,并向所述流媒體服務(wù)器發(fā)送所述碼率適配處理后的多媒體幀。
9.一種流媒體服務(wù)器,其特征在于,包括判斷模塊,用于根據(jù)用戶終端反饋的網(wǎng)絡(luò)狀況判斷是否需要對(duì)向所述用戶終端發(fā)送的媒體流的碼率進(jìn)行適配,將需要進(jìn)行所述碼率適配的判斷結(jié)果發(fā)送給所述流媒體轉(zhuǎn)發(fā)模塊;流媒體轉(zhuǎn)發(fā)模塊,用于向網(wǎng)絡(luò)中的碼率適配服務(wù)器發(fā)送待適配的原始媒體流及適配參數(shù);流媒體接收模塊,用于接收網(wǎng)絡(luò)中的碼率適配服務(wù)器發(fā)送的適配后的媒體流。
10.如權(quán)利要求9所述流媒體服務(wù)器,其特征在于,還包括終端業(yè)務(wù)處理模塊,用于向用戶終端發(fā)送媒體流,并將用戶終端反饋的網(wǎng)絡(luò)狀況發(fā)送給所述判斷模塊;存儲(chǔ)模塊,用于存儲(chǔ)原始流媒體文件并提供給所述終端業(yè)務(wù)處理模塊和流媒體轉(zhuǎn)發(fā)模塊。
11.一種碼率適配服務(wù)器,其特征在于,包括接收模塊,用于將流媒體服務(wù)器發(fā)送的原始媒體流存儲(chǔ)到緩存,并提供給所述碼率轉(zhuǎn)換模塊;碼率轉(zhuǎn)換模塊,用于根據(jù)所述流媒體服務(wù)器發(fā)送的適配參數(shù),對(duì)所述接收模塊接收的媒體流進(jìn)行碼率適配處理;發(fā)送模塊,用于將所述碼率轉(zhuǎn)換模塊進(jìn)行碼率適配處理后的媒體流向所述流媒體服務(wù)器發(fā)送。
12.如權(quán)利要求11所述碼率適配服務(wù)器,其特征在于,所述碼率適配服務(wù)器適配處理后的目標(biāo)碼率為連續(xù)碼率值,所述碼率轉(zhuǎn)換模塊將所述接收模塊存儲(chǔ)到緩存的原始媒體流的碼率,適配為所述適配參數(shù)中攜帶的匹配碼率。
13.如權(quán)利要求11所述碼率適配服務(wù)器,其特征在于,所述碼率適配服務(wù)器適配處理后的目標(biāo)碼率為離散碼率值,所述碼率轉(zhuǎn)換模塊將所述接收模塊存儲(chǔ)到緩存的原始媒體流的碼率,適配為所述離散碼率值中小于所述適配參數(shù)中攜帶的匹配碼率且最接近所述匹配碼率的碼率。
全文摘要
本發(fā)明的實(shí)施例公開了一種流媒體碼率控制方法,包括以下步驟流媒體服務(wù)器根據(jù)用戶終端反饋的網(wǎng)絡(luò)狀況,判斷是否調(diào)整向用戶終端發(fā)送的媒體流的碼率;需要進(jìn)行調(diào)整時(shí),流媒體服務(wù)器向碼率適配服務(wù)器發(fā)送原始媒體流及適配參數(shù);流媒體服務(wù)器接收碼率適配服務(wù)器根據(jù)適配參數(shù)進(jìn)行碼率適配處理后的媒體流并向用戶終端發(fā)送。本發(fā)明還公開了一種流媒體碼率控制系統(tǒng)和設(shè)備。通過碼率適配服務(wù)器對(duì)流媒體服務(wù)器所需的流媒體進(jìn)行的碼率適配處理,在流媒體服務(wù)器上只需要將片源按照單一碼率存儲(chǔ),節(jié)省了流媒體服務(wù)器上的存儲(chǔ)空間,同時(shí)減少了流媒體片源編碼復(fù)雜度。
文檔編號(hào)H04L12/56GK101068236SQ20071009012
公開日2007年11月7日 申請(qǐng)日期2007年4月13日 優(yōu)先權(quán)日2007年4月13日
發(fā)明者王志敏 申請(qǐng)人:華為技術(shù)有限公司