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