專利名稱:流媒體業(yè)務處理系統(tǒng)及其方法、網絡設備的制作方法
技術領域:
本發(fā)明實施例涉及通信領域,尤其涉及一種流媒體業(yè)務處理系統(tǒng)及其方法、網絡設備。
背景技術:
隨著網絡技術的不斷發(fā)展以及終端能力的大幅提升,基于網絡的流媒體業(yè)務,例如音視頻業(yè)務,迅猛發(fā)展。面對流媒體業(yè)務的競爭壓力,運營商推出了多屏融合的業(yè)務,構建了流媒體業(yè)務處理系統(tǒng),從而可以針對不同的終端類型,采用不同方式傳輸直播節(jié)目內容。例如,針對傳統(tǒng)的機頂盒(Set Top Box,以下簡稱STB)終端,可以采用實時傳輸協(xié)議上的運動圖像專家 組版本2-傳輸流(Moving PicturesExperts Group 2-Transport Stream over Real-TimeTransport Protocol,以下簡稱MPEG2_TS over RTP)來傳輸直播節(jié)目內容;針對其他終端如智能手機、上網本、計算機等,可以采用超文本傳輸協(xié)議(Hypertext TransferProtocol,以下簡稱HTTP)技術傳輸直播節(jié)目內容。發(fā)明人在實現(xiàn)本發(fā)明的過程中發(fā)現(xiàn),現(xiàn)有的流媒體業(yè)務處理系統(tǒng)中需要大量的服務器和交換機,網絡架構復雜,增加了運營成本。
發(fā)明內容
本發(fā)明實施例提供一種流媒體業(yè)務處理系統(tǒng)及其方法、網絡設備,以簡化網絡架構,降低運營成本。本發(fā)明實施例提供一種流媒體業(yè)務處理系統(tǒng),包括網絡設備以及編碼器,所述網絡設備內嵌有流化功能模塊,所述編碼器包括兩個出端口,所述編碼器的兩個出端口分別與所述網絡設備的主輸入端口和備份輸入端口連接;所述編碼器,用于接收流媒體業(yè)務信號,對所述流媒體業(yè)務信號進行編碼處理,生成流媒體業(yè)務編碼信號,并將所述流媒體業(yè)務編碼信號發(fā)送給所述網絡設備;所述網絡設備,用于通過內嵌的流化功能模塊在所述主輸入端口或備份輸入端口上接收所述編碼器發(fā)送的流媒體業(yè)務編碼信號,并將所述流媒體業(yè)務編碼信號提供給終端。本發(fā)明實施例提供一種網絡設備,所述網絡設備內嵌有流化功能模塊;所述網絡設備,用于通過內嵌的流化功能模塊分別在主輸入端口上或備份輸入端口上接收編碼器發(fā)送的流媒體業(yè)務編碼信號,并將所述流媒體業(yè)務編碼信號提供給終端。本發(fā)明上述實施例,在網絡設備中內嵌流化功能模塊,因此,該網絡設備可以直接從編碼器接收流媒體業(yè)務編碼信號,省去以太網交換機以及流化服務器的網絡部署,從而簡化了網絡架構,降低了運營成本。本發(fā)明實施例提供一種如上述系統(tǒng)的故障檢測處理方法,包括內嵌在網絡設備中的流化功能模塊在第一輸入端口上接收編碼器發(fā)送的流媒體報文;所述內嵌在網絡設備中的流化功能模塊根據所述流媒體報文檢查所述編碼器是否發(fā)生故障;若發(fā)生故障,則所述內嵌在網絡設備中的流化功能模塊將輸入端口從所述第一輸入端口切換到第二輸入端口,并在所述第二輸入端口上接收流媒體報文;所述第一輸入端口為主輸入端口,所述第二輸入端口為備份輸入端口 ;或者,所述第一輸入端口為備份輸入端口,所述第二輸入端口為主輸入端口。本發(fā)明上述實施例可以通過多媒體報文對編碼器是否發(fā)生故障進行檢測,并在編碼器發(fā)生故障時,切換到備份輸入端口上接收多媒體報文,從而可以及時有效地對系統(tǒng)進行維護。
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。圖I為現(xiàn)有技術中的流媒體業(yè)務處理系統(tǒng)結構示意圖;圖2為本發(fā)明流媒體業(yè)務處理系統(tǒng)一個實施例的結構示意圖;圖3為本發(fā)明流媒體業(yè)務處理系統(tǒng)另一個實施例的結構示意圖;圖4為本發(fā)明流媒體業(yè)務處理系統(tǒng)再一個實施例的結構示意圖;圖5為本發(fā)明網絡設備一個實施例的結構示意圖;圖6為本發(fā)明故障檢測處理方法一個實施例的流程圖;圖7為本發(fā)明故障檢測處理方法另一個實施例的流程圖;圖8為本發(fā)明流媒體業(yè)務處理方法一個實施例的流程圖;圖9為本發(fā)明流媒體業(yè)務處理方法另一個實施例的流程圖;圖10為本發(fā)明流媒體業(yè)務處理裝置一個實施例的結構示意圖;圖11為本發(fā)明流媒體業(yè)務處理裝置另一個實施例的結構示意圖;圖12為本發(fā)明流媒體業(yè)務處理裝置再一個實施例的結構示意圖。
具體實施例方式為使本發(fā)明實施例的目的、技術方案和優(yōu)點更加清楚,下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。圖I為現(xiàn)有技術中的流媒體業(yè)務處理系統(tǒng)結構示意圖,如圖I所示,該系統(tǒng)包括多個編碼器、四個以太網交換機、多個流化服務器和兩個路由器,其中,各編碼器具有兩個出端口,這兩個出端口分別與兩個以太網交換機的入端口連接,一個以太網交換機的出端口與各流化服務器的一個入端口連接,另一個以太網交換機的出端口與各流化服務器的另一個入端口連接,每個流化服務器的兩個出端口分別與另兩個以太網交換機的入端口連接,這兩個以太網交換機的出端口分別與一個路由器連接。具體來說,編碼器可以從視頻源信號接收設備接收原始視頻信號,每個編碼器針對同一個節(jié)目可以輸出兩份相同的編碼流,輸出的編碼流為組播形式的流媒體報文,每個節(jié)目對應唯一的組播組地址。考慮到冗余,對應同一個節(jié)目的兩個相同的流會被送到兩個不同的以太網交換機的網絡接口,也即入端口上;流化服務器通過以太網交換機與編碼器相連接,流化服務器加入到對應的組播組接收直播節(jié)目流。流化服務器通過兩個網卡,即兩個入端口分別接到兩個不同的以太網交換機上,不過,這兩個網卡有主備之分,同一時間只有一個網卡加入到組播組;流化服務器收到來自編碼器的直播節(jié)目流后,按照設置的規(guī)則進行加擾,添加RTP報文頭,然后緩存RTP報文,輸出組播的RTP報文到下游以太網交換機,其中組播地址保持不變;下游以太網交換機收到組播的直播節(jié)目流后,按照組播組群組訂閱關系向下游組播。這里的組播組訂閱關系即為組播組與加入該組播組的成員的一對多映身寸關系。由上述描述可以看出,現(xiàn)有的流媒體業(yè)務處理系統(tǒng)需要大量的流媒體服務器以及交換機,組網復雜。、圖2為本發(fā)明流媒體業(yè)務處理系統(tǒng)一個實施例的結構示意圖,如圖2所示,本實施例的系統(tǒng)可以包括網絡設備I和編碼器13,該網絡設備I內嵌有流化功能模塊18,該編碼器13包括兩個出端口 131,編碼器13的兩個出端口分別與網絡設備I的主輸入端口 IOa和備份輸入端口 IOb連接;編碼器13,用于接收流媒體業(yè)務信號,對所述流媒體業(yè)務信號進行編碼處理,生成流媒體業(yè)務編碼信號,并將所述流媒體業(yè)務編碼信號發(fā)送給網絡設備I ;網絡設備I用于通過內嵌的流化功能模塊18在主輸入端口 IOa或備份輸入端口 IOb上接收編碼器13發(fā)送的流媒體業(yè)務編碼信號,并將所述流媒體業(yè)務編碼信號提供給終端。舉例來說,該流化功能模塊可以具有現(xiàn)有流化服務器的各種功能,這些功能至少包括將接收到的報文進行去封裝操作以獲得媒體流,該去封裝操作可以包括去掉網絡層封裝,例如去掉IP頭;去掉傳輸層頭封裝,例如去掉如傳輸控制協(xié)議(TransmissionControl Protocol,以下簡稱TCP)頭或者用戶數(shù)據包協(xié)議(User Datagram Protocol,以下簡稱UDP)頭;去掉應用層封裝,例如去掉實時傳送協(xié)議(Real-time TransportProtocol,以下簡稱RTP)頭。如果去封裝后得到的媒體流是經過加擾或者加密的,則可以進行相應的解擾或解密操作以得到媒體流的明文,此處需要考慮包括面向下一個接收者如終端的加擾算法的適配、編碼轉換、容器轉換等。對解擾后的媒體流進行編碼轉換,這里的編碼轉換包括音視頻編碼機制的變換,例如視頻編碼從MPEG-2到H. 264、碼率的變換,流入從2Mbps到200Kbps等,此處需要考慮包括面向下一個接收者如終端的音視頻解碼能力的適配、接入線路速率的適配等。按照預設的規(guī)則對直播流媒體進行加擾或者加密,例如對版權內容進行加擾或者加密、對非版權或指定的內容不加擾等。按照規(guī)范對直播流媒體進行封裝,這些封裝包括應用層封裝,例如遵從規(guī)范添加RTP頭、傳輸層頭封裝,例如遵從規(guī)范添加TCP頭或UDP頭、網絡層封裝,例如遵從規(guī)范添加IP頭。
按照預先設置的規(guī)則進行流量整形,例如與直播流媒體碼率匹配,然后對外發(fā)送。具體來說,對于圖I所示現(xiàn)有系統(tǒng)來說,第一層以太網交換機所起作用為匯聚各編碼器發(fā)送的編碼流,并將各編碼流對應地發(fā)送到各流化服務器,第二層以太網交換機所起的作用為匯聚各流化服務器發(fā)送的業(yè)務流,并將各業(yè)務流通過同一出口發(fā)送給下游的路由器。因此,這兩層以太網交換機的作用均為匯聚轉發(fā),而并無其它特殊的功能,完全可以省略。鑒于此,本實施例采用一種新的網絡設備,其內嵌有流化功能模塊,因此,該網絡設備可以直接從編碼器接收流媒體業(yè)務編碼信號,省去以太網交換機以及流化服務器的網絡部署,從而簡化了網絡架構,降低了運營成本。下面采用幾個具體的實施例對本發(fā)明的技術方案進行詳細說明。圖3為本發(fā)明流媒體業(yè)務處理系統(tǒng)另一個實施例的結構示意圖,如圖3所示,本實施例的系統(tǒng)在圖2所示系統(tǒng)的基礎上,進一步地,網絡設備I可以包括主網絡設備11和備份網絡設備12,編碼器13的個數(shù)至少可以有兩個,在本實施例中,編碼器13舉例來說為4 個,主網絡設備11包括與編碼器13個數(shù)相同的入端口 111,備份網絡設備12包括與編碼器13個數(shù)相同的入端口 121,在本實施例中舉例來說即可包括4個入端口 111和4個入端口121,主網絡設備11上的入端口 111即為主輸入端口,備份網絡設備12上的入端口 121即為備份輸入端口,各編碼器13的一個出端口 131與主網絡設備11 一個入端口 111對應連接,各編碼器13的另一個出端口 131與備份網絡設備12的一個入端口 121對應連接。另夕卜,本實施例的系統(tǒng)舉例來說還可以包括流媒體信號接收設備14和編碼控制器15,其中,流媒體信號接收設備14用于接收流媒體源信號,對所述流媒體源信號進行解碼處理,獲取流媒體業(yè)務信號,并將所述流媒體業(yè)務信號發(fā)送給各編碼器13 ;編碼控制器15用于控制各編碼器13對所述流媒體業(yè)務信號進行編碼處理。本實施例中的主網絡設備11和備份網絡設備12均可以為路由器,且該路由器至少需要包括多個入端口和一個出端口。本實施例可以采用路由器作為網絡設備,通過在主路由器和備份路由器中均內嵌流化功能模塊,使得該主路由器和備份路由器可以直接從各編碼器接收流媒體業(yè)務編碼信號,省去兩層以太網交換機以及多個流化服務器的網絡部署,從而簡化了網絡架構,降低了運營成本。圖4為本發(fā)明流媒體業(yè)務處理系統(tǒng)再一個實施例的結構示意圖,如圖4所示,本實施例的系統(tǒng)在圖2所示系統(tǒng)的基礎上,進一步地,還包括主交換機16和備份交換機17,網絡設備I可以包括主網絡設備11和備份網絡設備12,編碼器13的個數(shù)至少可以有兩個,在本實施例中,編碼器13舉例來說為4個,主交換機16包括與編碼器13個數(shù)相同的入端口 161和一個出端口 162,備份交換機17包括與編碼器13個數(shù)相同的入端口 171和一個出端口 172,主網絡設備11包括一個入端口 111,備份網絡設備12包括一個入端口 121,主網絡設備11上的入端口 111即為主輸入端口,備份網絡設備12上的入端口 121即為備份輸入端口,主交換機16的各入端口 161分別與各編碼器13的一個出端口 131對應連接,備份交換機17的各入端口 171分別與一個編碼器13的另一個出端口 131連接,主交換機16的出端口 162與主網絡設備11的入端口 111連接,備份交換機17的出端口 172與備份網絡設備12的入端口 121連接。本實施例的系統(tǒng)進一步地還可以包括流媒體信號接收設備14和編碼控制器15,其中,流媒體信號接收設備14用于接收流媒體源信號,對所述流媒體源信號進行解碼處理,獲取流媒體業(yè)務信號,并將所述流媒體業(yè)務信號發(fā)送給各編碼器13 ;編碼控制器15用于控制各編碼器13對所述流媒體業(yè)務信號進行編碼處理。本實施例中的主網絡設備11和備份網絡設備12均可以為路由器,但是本實施例的路由器與圖3所示路由器的區(qū)別在于,本實施例的路由器可以只有一個入端口,而通過增加一層交換機來匯聚編碼器13發(fā)送的編碼信號,因此,本實施例適用于路由器入端口較為有限的情況。本實施例的交換機可以例如采用以太網交換機。本實施例可以采用路由器作為網絡設備,并在路由器前端增加一層交換機來匯聚編碼器發(fā)送的編碼信號,通過在主路由器和備份路由器中均內嵌流化功能模塊,使得該主路由器和備份路由器可以接收從各編碼器接收流媒體業(yè)務編碼信號,省去一層以太網交換機以及多個流化服務器的網絡部署,從而簡化了網絡架構,降低了運營成本。圖5為本發(fā)明網絡設備一個實施例的結構示意圖,如圖5所示,本實施例的網絡設備I內嵌有流化功能模塊18,該網絡設備I用于通過內嵌的流化功能模塊18分別在主輸入端口 IOa和從備份輸入端口 IOb上接收編碼器發(fā)送的流媒體業(yè)務編碼信號,并將所述流媒 體業(yè)務編碼信號提供給終端。舉例來說,該網絡設備可以為路由器。本實施例的網絡設備可以用于圖2所示的網絡設備,或者圖3和圖4所示的系統(tǒng)中作為主網絡設備和備份網絡設備,其實現(xiàn)原理與上述圖2 圖4所示任一實施例的實現(xiàn)原理和技術效果類似,此處不再贅述。本發(fā)明實施例提供一種故障檢測處理方法,其既可以應用在圖I所示現(xiàn)有技術的系統(tǒng)架構中,也可以應用在上述圖2 圖4所示本發(fā)明實施例的系統(tǒng)結構中,以對編碼器是否發(fā)生故障進行檢測,并在出現(xiàn)故障時進行相應的主備切換處理。下面采用本發(fā)明實施例提供的系統(tǒng)架構,對本發(fā)明故障檢測處理方法進行詳細說明。圖6為本發(fā)明故障檢測處理方法一個實施例的流程圖,如圖6所示,本實施例的方法可以基于圖2所示系統(tǒng)結構,本實施例的方法可以包括步驟601、內嵌在網絡設備中的流化功能模塊在主輸入端口上接收編碼器發(fā)送的流媒體報文。本實施例中的網絡設備可以是圖2中的網絡設備,其上部署了主輸入端口和備份輸入端口,又可以是圖3或圖4所示的主網絡設備和備份網絡設備,其中主輸入端口部署在主網絡設備上,備份輸入端口部署在備份網絡設備上。本實施例以第一輸入端口為主輸入端口,即流化功能模塊在主輸入端口上接收編碼器發(fā)送的流媒體報文為例進行說明。步驟602、所述內嵌在網絡設備中的流化功能模塊根據所述流媒體報文檢查所述編碼器是否發(fā)生故障。舉例來說,流化功能模塊可以通過檢查流媒體報文與需遵從的容器規(guī)范是否匹配來檢測編碼器是否發(fā)生故障,若匹配,則所述編碼器未發(fā)生故障,否則,所述編碼器發(fā)生故障。例如,流化功能模塊可以接收組播形式的用戶數(shù)據報協(xié)議上的MPEG2-TS單節(jié)目傳輸流(MPEG2-TS Single ProgramTransport Stream over User Datagram Protocol,以下簡稱MPEG2-TS SPTSover UDP)報文;然后流化功能模塊可以對負載進行容器規(guī)范性檢查以檢測編碼器是否出現(xiàn)故障,比如檢查MPEG2-TS SPTS是否符合ETSI TR 101 290規(guī)范。如果不符合,則編碼器發(fā)生故障。步驟603、若發(fā)生故障,則所述內嵌在網絡設備中的流化功能模塊將輸入端口從所述主輸入端口切換到備份輸入端口,并在備份輸入端口上接收流媒體報文。如果檢測到編碼器發(fā)生故障,流化功能模塊可以切換到備份輸入端口接收多媒體報文??蛇x地,流化功能模塊還可以向管理系統(tǒng)告警。需要說明的是,對于圖I所示現(xiàn)有技術中的系統(tǒng)架構來說,只需要將內嵌在網絡設備中的流化功能模塊替換為圖I中的流化服務器即可,其余實現(xiàn)過程類似,此處不再贅述。另外,本領域技術人員可以理解的是,對于第一輸入端口為備份輸入端口的情況來說,其實現(xiàn)原理類似,只是在切換時,是從備份輸入端口切換回主輸入端口。本實施例可以通過多媒體報文對編碼器是否 發(fā)生故障進行檢測,并在編碼器發(fā)生故障時,切換到備份輸入線路上接收多媒體報文,從而可以及時有效地對系統(tǒng)進行維護。針對直播業(yè)務,在圖I所示現(xiàn)有技術的系統(tǒng)架構中,每個流化服務器有兩個網卡,也即兩條輸入線路,以主備冗余的模式接收來自編碼器的編碼流,流化服務器依賴這兩個網卡實現(xiàn)以太網線路/端口故障檢測和主備倒換。受限于系統(tǒng)的協(xié)議棧架構,對于以太網線路/端口的故障難以被服務器應用程序檢測到,一旦主網卡出現(xiàn)故障,流化服務器只能依賴所接入的以太網交換機周期性發(fā)送的互聯(lián)網群組管理協(xié)議(Internet GroupManagement Protocol,以下簡稱IGMP)查詢消息觸發(fā)備用網卡發(fā)送IGMP報告加入組播組以便重新得到數(shù)據,但以太網交換機上IGMP查詢間隔最小為5秒,這意味著一旦出現(xiàn)以太網線路/端口故障就會導致可達5秒的畫面中斷或花屏。鑒于此,本發(fā)明實施例可以在圖6所示方法實施例的基礎上,在接收編碼器發(fā)送的流媒體報文之前,所述內嵌在網絡設備中的流化功能模塊確定用于接收所述流媒體報文的輸入端口。具體來說,網絡設備可以監(jiān)控用于接收所述流媒體報文的主輸入端口是否正常;若正常,則網絡設備可以通知流化功能模塊在所述主輸入端口上接收所述流媒體報文,否則,網絡設備可以通知所述流化功能模塊將輸入端口從所述主輸入端口切換到備份輸入端口并在所述備份輸入端口上接收所述流媒體報文。在具體實現(xiàn)時,流化功能模塊可以注冊到網絡設備中的鏈路監(jiān)控模塊上,當網絡設備的鏈路監(jiān)控模塊監(jiān)測到出現(xiàn)鏈路故障事件時,即可通過消息或者信號通知流化功能模塊;或者,流化功能模塊也可以周期地查詢目前的鏈路情況。圖7為本發(fā)明故障檢測處理方法另一個實施例的流程圖,如圖7所示,本實施例的方法可以包括步驟701、網絡設備監(jiān)控主輸入端口是否正常,若是,則執(zhí)行步驟702,否則執(zhí)行步驟 708。步驟702、流化功能模塊在主輸入端口上接收編碼器發(fā)送的多媒體報文。步驟703、流化功能模塊根據所述流媒體報文檢查所述編碼器是否發(fā)生故障,若是則執(zhí)行步驟708,否則執(zhí)行步驟704。舉例來說,流化功能模塊可以檢查流媒體報文與終端的容器規(guī)范是否匹配,若匹配,則所述編碼器未發(fā)生故障,否則,所述編碼器發(fā)生故障。該檢查過程舉例來說可以是檢測編碼器輸出的直播視頻流容器是否合符ETSI TR101290規(guī)范。針對不同的編碼器,由于其對應的容器規(guī)范不同,流化功能模塊所檢查的內容也對應地可以不同。步驟704、采用預設規(guī)則對多媒體流進行加擾。
步驟705、添加RTP報文頭。步驟706、緩存RTP報文。步驟707、按照下游訂閱信息分發(fā)直播節(jié)目多媒體報文,結束。步驟708、切換到備份輸入端口,并告警。步驟709、在備份輸入端口上接收多媒體報文,執(zhí)行步驟704。本實施例針對直播業(yè)務,利用網絡設備的物理線路級別的實時故障檢測機制替換傳統(tǒng)的基于IGMP的故障檢測機制觸發(fā)單節(jié)目多直播流的主備倒換,從而將故障倒換時間控制在毫秒級別,避免主備倒換對用戶體驗的沖擊;因現(xiàn)有的丟包修復機制的修復效果依賴于STB的緩沖區(qū)尺寸,而通常STB的緩沖區(qū)為200毫秒,這樣一來,毫秒級別的線路故障檢測機制配合現(xiàn)有的丟包修復機制能避免主備倒換引入的丟包對用戶體驗的沖擊?,F(xiàn)有技術中,多媒體流化業(yè)務下不同的終端采用不同的播放器,如Microsoft公司的Silverlight播放器、Adobe公司的FLV播放器、Apple公司的MPEG2-TS播放器等,這就要求流化服務器對應同一個編碼片源支持不同的容器,這意味著有多少種容器,流化服務器上就需要對應多少個不同的片源拷貝,存儲效率極低。鑒于此,本發(fā)明實施例提供一種流媒體業(yè)務處理方法,本實施例的方法僅需要現(xiàn)有技術中的流媒體服務器或者本發(fā)明實施例提供的流化功能模塊中存儲一份編碼片源的拷貝即可滿足多種容器的需求。具體來說,本發(fā)明實施例提供的流媒體業(yè)務處理方法,包括接收終端發(fā)送的流媒體業(yè)務請求消息,所述流媒體業(yè)務請求消息中包含所述終端的流媒體容器類型;若所述流媒體容器類型與本地緩存的流媒體內容的容器類型不相同,則將本地緩存的流媒體內容的容器類型轉換為所述終端的流媒體容器類型;將容器類型轉換后的流媒體內容發(fā)送給所述終端。其中,所述本地緩存的流媒體內容的容器類型為中間格式容器類型,所述接收終端發(fā)送的流媒體業(yè)務請求消息之前,還包括將編碼器發(fā)送的流媒體報文的容器類型轉換為所述中間格式容器類型;所述將本地緩存的流媒體內容的容器類型轉換為所述終端的流媒體容器類型,包括將所述中間格式容器類型轉換為所述終端的流媒體容器類型。其中,接收終端發(fā)送的流媒體業(yè)務請求消息之前,還包括接收面向編碼器的流媒體服務器通過單播方式或者組播方式發(fā)送的所述流媒體內容,并對所述流媒體內容進行緩存。優(yōu)選地,所述接收終端發(fā)送的流媒體業(yè)務請求消息,包括 接收流媒體業(yè)務控制器發(fā)送的所述流媒體業(yè)務請求消息,所述流媒體業(yè)務請求消、息是所述流媒體業(yè)務控制器對所述終端發(fā)送的流媒體業(yè)務請求消息進行重定向后發(fā)送的。圖8為本發(fā)明流媒體業(yè)務處理方法一個實施例的流程圖,如圖8所示,本實施例的方法可以包括步驟801、接收終端發(fā)送的流媒體業(yè)務請求消息,所述流媒體業(yè)務請求消息中包含所述終端的流媒體容器類型。
步驟802、若所述流媒體容器類型與本地緩存的流媒體內容的容器類型不相同,則將本地緩存的流媒體內容的容器類型轉換為所述終端的流媒體容器類型。步驟803、將容器類型轉換后的流媒體內容發(fā)送給所述終端。具體來說,多媒體容器如MPEG2-TS、MP4上承載著編碼后的多媒體流,多媒體容器承載在流化協(xié)議之上。針對不同的終端,每個片源可能針對不同的容器進行封裝,比如同時提供面向MPEG2-TS容器的片源、面向MP4容器的片源等。當前主流的多媒體流化技術采用的容器主要來自Microsoft、Apple、Adobe、Move Network等公司,他們的容器類型、格式各不相同,盡管承載的音視頻內容甚至編碼格式都相同,比如都是采用H. 264進行視頻編碼壓縮。所謂容器,是指媒體內容所遵從的規(guī)范,其本質是對媒體,例如音頻、視頻等解碼所需的數(shù)據的組織,這些數(shù)據包括解碼參數(shù),例如視頻畫面寬度、高度、幀率和時間同步信息等;媒體數(shù)據,例如音頻視頻經編碼壓縮后的數(shù)據。在一些容器中,例如MicrosoftSilverlight播放器所采用的ISMV容器下,部分解碼參數(shù)是通過獨立的描述文件下發(fā)給終端的,而MPEG2-TS容器自身攜帶了所需的解碼參數(shù)即無需額外的描述文件,其中ismv、flv 和MPEG2-TS主要包括媒體數(shù)據。因此,為了適應各種終端的流媒體容器類型,現(xiàn)有技術就在流媒體服務器上或者本申請實施例中的流化功能模塊上存儲多種流媒體容器類型對應的流媒體內容。相比之下,本實施例可以利用實時容器轉換技術降低不同終端對流媒體內容的容器差異化帶來的存儲壓力。具體來說,現(xiàn)有技術的流化服務器或者圖2 4所示網絡設備中的流化功能模塊上可以僅保留一種容器類型的流媒體內容。針對不同的終端,在流化時,流化服務器或者流化功能模塊可以自適應進行實時容器轉換以提供匹配的容器,從而實現(xiàn)對多種不同容器類型僅保留一份流媒體內容。舉例來說,流化服務器或者流化功能模塊中僅保存MPEG2-TS容器的片源,該片源采用H. 264進行視頻編碼壓縮。然后,流化服務器或者流化功能模塊可以接收終端發(fā)送的流媒體業(yè)務請求消息,該流媒體業(yè)務請求消息中包含終端的請求的流媒體容器類型,例如該容器類型為MP4。因此,流化服務器或者流化功能模塊可以判斷終端的流媒體容器類型MP4不同于本地緩存的流媒體內容的容器類型MPEG2-TS,則流化服務器或者流化功能模塊可以將本地緩存的流媒體內容的容器類型MPEG2-TS轉換為所述終端的請求的流媒體容器類型MP4,并將轉換后的以MP4為容器的流媒體內容發(fā)送給終端。在本實施例中,終端的流媒體容器類型可以包括MPEG2-TS、MP4、WMV、ISMV等,本實施例不進行限定。以本地緩存的流媒體內容的容器類型為ISMV,終端的容器類型為MPEG2-TS為例來說。ISMV容器需要獨立的媒體描述文件,即manifest文件,用以描述媒體的解碼參數(shù),比如視頻編碼機制、畫面高度、寬度、幀率參數(shù)、H. 264的序列參數(shù)集(Sequence ParameterSet,以下簡稱SPS)和圖像參數(shù)集(Picture Parameter Set,以下簡稱PPS)等。而MPEG2-TS將解碼參數(shù)和媒體數(shù)據都放在容器中,從而無需描述文件。因此,該容器類型的轉換過程可以為在ISMV獨立的描述文件manifest和MPEG2-TS的基本碼流(Packet Elementary Stream,以下簡稱PES)或者/節(jié)目特殊信息(Program Spe-cial Information,以下簡稱PSI)之間同步描述媒體的解碼參數(shù),比如視頻編碼機制、畫面高度、寬度、巾貞率參數(shù)、H. 264的SPS和PPS等;在ISMV的movie fragmentheader和MPEG2-TS的數(shù)據包標識(Packet Identifier,以下簡稱PID)之間同步容器版本信息、分片序列號等信息;在 ISMV 的 track fragment header、track fragment run、通用唯一識別碼(Universally Unique Identifier,以下簡稱UUID)和 MPEG2-TS 的節(jié)目時鐘參考(Program Clock Reference,以下簡稱PCR)及PES之間同步分片持續(xù)時間、數(shù)據長度、數(shù)據偏移及呈現(xiàn)時間、采樣等信息;在ISMV的media fragmentdata和MPEG2-TS的PES之間同步媒體數(shù)據。至此,即可完成容器類型轉換。對于其它容器類型轉換來說,其均可以采用上述類型的方法,將兩種類型的容器之間同步描述媒體的解碼參數(shù)、容器版本信息、分片序列號、分片持續(xù)時間、數(shù)據長度、數(shù)據偏移及呈現(xiàn)時間、媒體數(shù)據等容器相關信息。本實施例,針對不同的終端,流化服務器或者流化功能模塊可以在流化時自適應進行實時容器轉換以提供匹配的容器,從而實現(xiàn)對多種不同容器類型僅保留一份流媒體內容,降低了流化服務器或者流化功能模塊的存儲壓力。
本發(fā)明流媒體業(yè)務處理方法另一個實施例的方法與圖8所示方法實施例的區(qū)別在于,流化服務器或者流化功能模塊在本地緩存的流媒體內容的容器類型并非任一終端的容器類型,即并非MPEG2-TS或者MP4等任意既有容器類型,而是一種中間格式容器類型,因此,本實施例中,流化服務器或者流化功能模塊無需再判斷終端的容器類型是否與本地緩存的流媒體內容的容器類型相同,而是必須進行容器類型轉換。本領域技術人員可以根據需要設計中間格式容器類型,以盡可能地降低存儲壓力,或者盡可能較為方便地向任一容器類型轉換,本實施例不對該中間格式容器類型的具體內容進行限定。具體來說,流化服務器或者流化功能模塊在本地存儲流媒體內容時,可以將流媒體內容本來的容器類型轉換為中間格式容器類型。本實施例以流媒體內容本來的容器類型為ISMV且該中間格式容器采用單獨的描述文件舉例來說,該轉換過程可以為在ISMV獨立的描述文件manifest和中間格式容器的媒體描述文件media file description之間同步描述媒體的解碼參數(shù),比如視頻編碼機制、畫面高度、寬度、幀率參數(shù)、H. 264的SPS和PPS等;在 ISMV 的 movie fragment header 和中間格式容器的 media fragment header 之間同步容器版本信息、分片序列號等信息;在ISMV的track fragment header、trackfragmentrun、UUID 和中間格式容器的 track fragment header、track fragmentrecord 之間同步分片持續(xù)時間、數(shù)據長度、數(shù)據偏移及呈現(xiàn)時間、采樣等信息;在ISMV的media fragmentdata和中間格式容器的media fragment data之間同步媒體數(shù)據。在上述中間格式容器的基礎上,若終端的容器類型為MPEG2-TS,則將中間格式容器的類型轉換為MPEG2-TS過程可以為在中間格式容器的mediafile description和MPEG2-TS的PES/PSI之間同步描述媒體的解碼參數(shù),比如視頻編碼機制、畫面高度、寬度、幀率參數(shù)、H. 264的SPS和PPS等;在中間格式容器的media file description和MPEG2-TS的PID之間同步容器版本信息、分片序列號等信息;在中間格式容器的mediafile description和MPEG2-TS的PCR及PES之間同步分片持續(xù)時間、數(shù)據長度、數(shù)據偏移及呈現(xiàn)時間、采樣等信息;在中間格式容器的media file description和MPEG2-TS的PES之間同步媒體數(shù)據。在具體實現(xiàn)過程中,現(xiàn)有技術中的流化服務器或者本發(fā)明實施例中的內嵌在網絡設備內的流化功能模塊均可以解耦為兩部分,一部分面向編碼器,其主要完成流媒體內容和格式的準備;一部分面向終端,其主要完成流媒體的分發(fā)及控制。面向編碼器的部分放在頭端,面向終端的部分靠近用戶。且這兩部分之間針對直播節(jié)目采用單一會話傳輸,而所有的直播節(jié)目會話都終結在面向終端用戶的流化服務器或者流化功能模塊上。而且,上述的實時容器轉換功能可以部署在靠近終端的流化服務器或者流化功能模塊上,因此,面向編碼器的部分無需考慮流媒體內容的容器類型。下面以現(xiàn)有的流媒體業(yè)務處理系統(tǒng)為例,對上述技術方案進行詳細說明。圖9為本發(fā)明流媒體業(yè)務處理方法另一個實施例的流程圖,如圖9所示,本實施例的方法可以包括步驟901、面向編碼器的流化服務器接收編碼器發(fā)送的流媒體內容。具體來說,編碼器可以對原始片源進行轉碼處理,獲得流媒體內容。該轉碼處理可 以包括編碼格式轉換、碼率轉換、解析度轉換等。然后,編碼器可以將流媒體內容發(fā)送給面向編碼器的流化服務器。步驟902、面向編碼器的流化服務器將該流媒體內容封裝在一容器中。面向編碼器的流化服務器可以完成單一容器封裝處理,比如報文序列號的生成與維護。該容器類型既可以為現(xiàn)有的容器類型,例如MP4,也可以是中間格式容器類型。步驟903、面向編碼器的流化服務器將該容器的流媒體內容發(fā)送給面向終端的流化服務器。面向終端的流化服務器靠近用戶,它和面向編碼器的流化服務器之間針對單節(jié)目保持單會話,會話方式既可以是組播也可以是單播,這樣,面向終端的流化服務器與面向編碼器的流化服務器之間的網絡流量只和節(jié)目數(shù)成正比,而和海量的終端個數(shù)無關。步驟904、面向終端的流化服務器接收流媒體內容,并對所述流媒體內容進行緩存。面向終端的流化服務器可以將單一容器類型的流媒體內容緩存在本地。步驟905、流媒體業(yè)務控制器接收終端發(fā)送的流媒體業(yè)務請求消息。該流媒體業(yè)務控制器可以用戶管理終端與面向終端的流媒體服務器之間的會話。步驟906、流媒體業(yè)務控制器將該流媒體業(yè)務請求消息重定向到面向終端的流化服務器。流媒體業(yè)務控制器在接收終端發(fā)送的流媒體業(yè)務請求消息后,可以將該流媒體業(yè)務請求消息重定向至面向終端的流化服務器。步驟907、面向終端的流化服務器將本地緩存的流媒體內容的容器類型轉換為所述終端的流媒體容器類型。面向終端的流化服務器即可自動適配終端的容器類型,并進行實時容器轉換。步驟908、將容器類型轉換后的流媒體內容發(fā)送給所述終端。對于網絡設備內嵌的流化功能模塊來說,其解耦的兩部分也可以分別對應上述面向編碼器的流化服務器以及面向終端的流化服務器所執(zhí)行的操作,其實現(xiàn)原理類似,此處不再贅述。本實施例在圖8所示方法實施例的基礎上,進一步地,通過兩層流化功能的設計,使得面向終端的流化服務器與面向編碼器的流化服務器之間的網絡流量只和節(jié)目數(shù)成正t匕,而和海量的終端個數(shù)無關,從而可以提高網絡帶寬利用率。圖10為本發(fā)明流媒體業(yè)務處理裝置一個實施例的結構示意圖,如圖10所示,本實施例的裝置可以包括接收模塊21、第一轉換處理模塊22以及發(fā)送模塊23,其中,接收模塊21用于接收終端發(fā)送的流媒體業(yè)務請求消息,所述流媒體業(yè)務請求消息中包含所述終端的流媒體容器類型;第一轉換處理模塊22用于若所述流媒體容器類型與本地緩存的流媒體內容的容器類型不相同,則將本地緩存的流媒體內容的容器類型轉換為所述終端的流媒體容器類型;發(fā)送模塊23用于將容器類型轉換后的流媒體內容發(fā)送給所述終端。本實施例的裝置可以是流化服務器或者圖2 4中任一所示的內嵌流化功能模塊的網絡設備,本實施例的裝置可以用于執(zhí)行圖8所示方法實施例的方法,其實現(xiàn)原理和技術效果類似,此處不再贅述。圖11為本發(fā)明流媒體業(yè)務處理裝置另一個實施例的結構示意圖,如圖11所示,本實施例的裝置在圖10所示裝置的基礎上,進一步地,還包括第二轉換處理模塊24,第二轉換處理模塊24用于將編碼器發(fā)送的流媒體報文的容器類型轉換為所述中間格式容器類型;第一轉換處理模塊22具體用于將所述第二轉換處理模塊24轉換獲取的中間格式容器類型轉換為所述終端的流媒體容器類型。
本實施例的裝置可以是流化服務器或者圖2 4中任一所示的內嵌流化功能模塊的網絡設備,本實施例的裝置用于執(zhí)行上述圖8所示流媒體業(yè)務處理方法實施例,其實現(xiàn)原理和技術效果類似,此處不再贅述。圖12為本發(fā)明流媒體業(yè)務處理裝置再一個實施例的結構示意圖,如圖12所示,本實施例的裝置在圖10所示裝置的基礎上,進一步地,還包括存儲模塊25,接收模塊21具體用于接收面向編碼器的流媒體服務器通過單播方式或者組播方式發(fā)送的所述流媒體內容;存儲模塊25用于對所述流媒體內容進行緩存。本實施例的裝置可以是對圖I中的流化服務器進行解耦后的面向終端的流化服務器,也可以是圖2 4中對內嵌在網絡設備中的流化功能模塊解耦后的面向終端的流化功能模塊,不管是面向終端的流化服務器,還是面向終端的流化功能模塊,其均可以部署在面向終端的一側。本實施例的裝置可以用于執(zhí)行上述圖9所示流媒體業(yè)務處理方法實施例,其實現(xiàn)原理和技術效果類似,此處不再贅述。本領域普通技術人員可以理解實現(xiàn)上述方法實施例的全部或部分步驟可以通過程序指令相關的硬件來完成,前述的程序可以存儲于一計算機可讀取存儲介質中,該程序在執(zhí)行時,執(zhí)行包括上述方法實施例的步驟;而前述的存儲介質包括R0M、RAM、磁碟或者光盤等各種可以存儲程序代碼的介質。最后應說明的是以上實施例僅用以說明本發(fā)明的技術方案,而非對其限制;盡管參照前述實施例對本發(fā)明進行了詳細的說明,本領域的普通技術人員應當理解其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質脫離本發(fā)明各實施例技術方案的精神和范圍。
權利要求
1.一種流媒體業(yè)務處理系統(tǒng),其特征在于,包括網絡設備以及編碼器,所述網絡設備內嵌有流化功能模塊,所述編碼器包括兩個出端口,所述編碼器的兩個出端口分別與所述網絡設備的主輸入端口和備份輸入端口連接; 所述編碼器,用于接收流媒體業(yè)務信號,對所述流媒體業(yè)務信號進行編碼處理,生成流媒體業(yè)務編碼信號,并將所述流媒體業(yè)務編碼信號發(fā)送給所述網絡設備; 所述網絡設備,用于通過內嵌的流化功能模塊在所述主輸入端口或備份輸入端口上接收所述編碼器發(fā)送的流媒體業(yè)務編碼信號,并將所述流媒體業(yè)務編碼信號提供給終端。
2.根據權利要求I所述的系統(tǒng),其特征在于,所述網絡設備包括相互連接的主網絡設備和備份網絡設備,所述編碼器的個數(shù)至少為兩個,所述主網絡設備和備份網絡設備均包括與編碼器個數(shù)相同的入端口,所述主網絡設備上的入端口為所述主輸入端口,所述備份網絡設備上的入端口為備份輸入端口,各編碼器的一個出端口與所述主網絡設備一個入端 口對應連接,各編碼器的另一個出端口與所述備份網絡設備的一個入端口對應連接。
3.根據權利要求I所述的系統(tǒng),其特征在于,還包括主交換機和備份交換機,所述主交換機和備份交換機均包括與編碼器個數(shù)相同的入端口和一個出端口,所述網絡設備包括相互連接的主網絡設備和備份網絡設備,所述編碼器的個數(shù)至少為兩個,所述主網絡設備和備份網絡設備均包括一個入端口,所述主網絡設備上的入端口為所述主輸入端口,所述備份網絡設備上的入端口為備份輸入端口,所述主交換機的各入端口分別與各編碼器的一個出端口對應連接,所述主交換機的出端口與所述主網絡設備的入端口連接,所述備份交換機的各入端口分別與各編碼器的另一個出端口對應連接,所述備份交換機的出端口與所述備份網絡設備的入端口連接。
4.根據權利要求I 3中任一項所述的系統(tǒng),其特征在于,所述網絡設備為內嵌有流化功能I旲塊的路由器。
5.一種網絡設備,其特征在于,所述網絡設備內嵌有流化功能模塊; 所述網絡設備,用于通過內嵌的流化功能模塊分別在主輸入端口上或備份輸入端口上接收編碼器發(fā)送的流媒體業(yè)務編碼信號,并將所述流媒體業(yè)務編碼信號提供給終端。
6.根據權利要求5所述的設備,其特征在于所述網絡設備為路由器。
7.一種如權利要求I 4中任一項所述系統(tǒng)的故障檢測處理方法,其特征在于,包括 內嵌在網絡設備中的流化功能模塊在第一輸入端口上接收編碼器發(fā)送的流媒體報文; 所述內嵌在網絡設備中的流化功能模塊根據所述流媒體報文檢查所述編碼器是否發(fā)生故障; 若發(fā)生故障,則所述內嵌在網絡設備中的流化功能模塊將輸入端口從所述第一輸入端口切換到第二輸入端口,并在所述第二輸入端口上接收流媒體報文; 所述第一輸入端口為主輸入端口,所述第二輸入端口為備份輸入端口 ;或者,所述第一輸入端口為備份輸入端口,所述第二輸入端口為主輸入端口。
8.根據權利要求7所述的方法,其特征在于,接收編碼器發(fā)送的流媒體報文之前,還包括 所述內嵌在網絡設備中的流化功能模塊確定用于接收所述流媒體報文的輸入端口。
9.根據權利要求8所述的方法,其特征在于,確定用于接收所述流媒體報文的輸入端口,包括 所述網絡設備監(jiān)控用于接收所述流媒體報文的主輸入端口是否正常; 若正常,則通知所述流化功能模塊在所述主輸入端口上接收所述流媒體報文,否則,通知所述流化功能模塊將輸入端口從所述主輸入端口切換到備份輸入端口并在所述備份輸入端口上接收所述流媒體報文。
10.根據權利要求7 9中任一項所述的方法,其特征在于,根據所述流媒體報文檢查所述編碼器是否發(fā)生故障,包括 所述內嵌在網絡設備中的流化功能模塊檢查所述流媒體報文與終端的容器規(guī)范是否匹配,若匹配,則所述編碼器未發(fā)生故障,否則,所述編碼器發(fā)生故障。
全文摘要
本發(fā)明實施例提供一種流媒體業(yè)務處理系統(tǒng)及其方法、網絡設備。該流媒體業(yè)務處理系統(tǒng)包括網絡設備以及編碼器,所述網絡設備內嵌有流化功能模塊,所述編碼器包括兩個出端口,所述編碼器的兩個出端口分別與所述網絡設備的主輸入端口和備份輸入端口連接;所述編碼器,用于接收流媒體業(yè)務信號,對所述流媒體業(yè)務信號進行編碼處理,生成流媒體業(yè)務編碼信號,并將所述流媒體業(yè)務編碼信號發(fā)送給所述網絡設備;所述網絡設備,用于通過內嵌的流化功能模塊在所述主輸入端口或備份輸入端口上接收所述編碼器發(fā)送的流媒體業(yè)務編碼信號,并將所述流媒體業(yè)務編碼信號提供給終端。
文檔編號H04L29/06GK102739417SQ20111008227
公開日2012年10月17日 申請日期2011年4月1日 優(yōu)先權日2011年4月1日
發(fā)明者劉濟濤, 吳杏芬, 程劍, 鄭合文 申請人:華為技術有限公司