欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種DVB頻道的快速切換方法以及設備和系統(tǒng)與流程

文檔序號:12279749閱讀:622來源:國知局
一種DVB頻道的快速切換方法以及設備和系統(tǒng)與流程

本發(fā)明涉及媒體技術領域,尤其涉及一種基于DVB系統(tǒng)的DVB頻道的快速切換方法、用戶設備及DVB系統(tǒng)。



背景技術:

DVB(Digital Video Broadcasting,數字視頻廣播)是由DVB項目維護的一系列國際承認的數字電視公開標準。DVB項目是一個由300多個成員組成的工業(yè)組織,它是由歐洲電信標準化組織(European Telecommunications Standards Institute,ETSI),歐洲電子標準化組織(European Committee for Electro technical Standardization,CENELEC)和歐洲廣播聯盟(European Broadcasting Union,EBU)聯合組成的聯合專家組(Joint Technical Committee,JTC)發(fā)起的。DVB的宗旨是要設計一個通用的數字電視系統(tǒng),在此系統(tǒng)內的各種傳輸方式之間的轉換有最簡單的方式,盡可能的增加通用性。DVB標準提供了一套完整的、適用于不同媒介的數字電視系統(tǒng)規(guī)范。DVB數字廣播傳輸系統(tǒng)利用了包括衛(wèi)星、有線、地面、SMATV、MNDSD在內的所有通用電視廣播傳輸媒體。它們分別對應的DVB標準:DVB-S、DVB-C、DVB-T、DVB-SMATV、DVB-MS和DVB-MC。

隨著視頻技術的發(fā)展和應用,相較與之前僅關注服務質量(Quality of Service,QoS)的指標,體驗質量(Quality of Experience,QoE)的應用與認可越來越廣泛。QoE是是從普通用戶體驗的角度評定設備或網絡的性能,而不是采用業(yè)界通常使用的各種專業(yè)指標,比如時延、丟包率和抖動等。由于其良好的結果直觀性,并容易被非專業(yè)人士理解,所以QoE的各種指標得到了廣泛認可和應用。而頻道切換時間就是QoE中的一項重要指標,但是目前DVB頻道切換時間,依賴于目標頻道的頻點搜索和鎖定,而頻點搜索和鎖定的時間比較長,一般大于2秒,導致頻道切換速度較慢,用戶體驗不佳。



技術實現要素:

有鑒于此,有必要提供一種基于DVB的頻道快速切換方法、設備及系統(tǒng),減少用戶設備頻道切換的等待時間,提升頻道切換速度。

第一方面,本發(fā)明實施例提供一種DVB頻道的快速切換方法,應用于用戶設備側,包括:接收用戶發(fā)起的頻道切換請求,所述頻道切換請求包括目標頻道標識;根據所述目標頻道標識搜索確定所述目標頻道的頻點;根據所述頻道切換請求向FCC服務器發(fā)送單播請求,所述單播請求包括所述目標頻道標識;接收FCC服務器發(fā)送的所述目標頻道的單播傳輸流;根據所述目標頻道的頻點接收DVB網絡側發(fā)送的所述目標頻道的廣播傳輸流;判斷所述廣播傳輸流與所述單播傳輸流同步時,向所述FCC服務器發(fā)送同步通知以指示所述FCC服務器停止發(fā)送所述目標頻道的單播傳輸流。

本發(fā)明實施例的DVB頻道快速切換方法,在現有DVB系統(tǒng)架構中引入FCC服務器,利用FCC服務器單播輔助廣播的方式,向用戶終端快速發(fā)送單播傳輸流,確保用戶設備快速顯示圖象,縮短頻道切換時間,提升頻道切換速度,提升用戶體驗。

在一種可能的實施方式中,用戶設備還解析從DVB網絡側接收到的所述目標頻道的廣播傳輸流,確定所述廣播傳輸流中的每一個TS包的播放時間標記PTS值,以用于后續(xù)同步判斷。

在一種可能的實施方式中,用戶設備還解析從FCC服務器接收的單播RTP報文,并獲取所述RTP報文中每一個RTP包所攜帶的TS包的PTS范圍值,以用于后續(xù)同步判斷。

在一種可能的實施方式中,用戶設備根據獲得的單播TS包的PTS值與廣播TS包的PTS值判斷所述廣播傳輸流中當前接收的TS包的PTS值是否在所述單播傳輸流當前接收的RTP包的PTS范圍值內,若判斷結果為是,則確定所述廣播傳輸流與所述單播傳輸流同步。

該實施方式中,用戶設備分別解析廣播TS包與單播TS包,獲取每個TS包的PTS值用于同步判斷,能夠保證同步判斷的準確性,保證用戶終端無縫切換到廣播傳輸流,防止視頻抖動,進一步提升用戶體驗。

第二方面,本發(fā)明實施例提供一種DVB頻道的快速切換方法,應用在DVB網絡側,該包括:接收用戶設備發(fā)送的單播請求,所述單播請求包括目標頻道標識;根據所述目標頻道標識,向所述用戶設備發(fā)送所述目標頻道的單播傳輸流;向所述用戶設備發(fā)送所述目標頻道的廣播傳輸流;接收用戶設備發(fā)送的同步通知;根據所述同步通知判斷所述廣播傳輸流與所述單播傳輸流同步時,停止向所述用戶設備發(fā)送所述目標頻道的單播傳輸流。

在一種可能的實施方式中,所述同步通知攜帶所述用戶設備接收的所述廣播傳輸流的首個TS包的PTS值用于FCC服務器進行同步判斷。

在一種可能的實施方式中,FCC服務器獲取所述單播傳輸流待發(fā)送的TS包的PTS值,比較所述待發(fā)送的TS包的PTS值與所述廣播傳輸流的首個TS包的PTS值是否相同,若比較結果為是,則判斷所述所述廣播傳輸流與所述單播傳輸流同步。

該實施方式中,FCC服務器根據用戶終端上報的首個TS包PTS值與本地待發(fā)送的TS包的PTS值判斷廣播傳輸流與單播傳輸流是否同步,判斷方式簡單,結果準確,減少不必要的單播流傳輸,提升設備的使用性能。

第三方面,提供一種用戶設備,包括:通信接口,用于接收用戶發(fā)起的頻道切換請求,所述頻道切換請求包括目標頻道標識;處理器,用于根據所述目標頻道標識確定所述目標頻道的頻點;所述通信接口,還用于根據所述頻道切換請求向FCC服務器發(fā)送單播請求,所述單播請求包括所述目標頻道標識;所述通信接口還用于接收所述FCC服務器發(fā)送的所述目標頻道的單播傳輸流;還根據所述目標頻道的頻點接收DVB網絡側發(fā)送的所述目標頻道的廣播傳輸流;所述通信接口還用于在所述處理器判斷所述廣播傳輸流與所述單播傳輸流同步時,向所述FCC服務器發(fā)送同步通知以指示所述FCC服務器停止發(fā)送所述目標頻道的單播傳輸流。

在一種可能的實施方式中,所述處理器還用于解析接收到的所述目標頻道的廣播傳輸流,確定所述廣播傳輸流中的每一個傳輸流TS包的播放時間標記PTS值。

在一種可能的實施方式中,所述處理器還用于解析單播傳輸流RTP報文,獲取所述RTP報文中每一個RTP包所攜帶的TS包的PTS范圍值。

在一種可能的實施方式中,所述處理器還用于判斷所述廣播傳輸流中當前接收的TS包的PTS值是否在所述單播傳輸流當前接收的RTP包的PTS范圍值內,若判斷結果為是,則確定所述廣播傳輸流與所述單播傳輸流同步。

第四方面,提供另外一種用戶設備,包括:收發(fā)單元,用于接收用戶發(fā)起的頻道切換請求,所述頻道切換請求包括目標頻道標識;DVB控制單元,用于根據所述目標頻道標識確定所述目標頻道的頻點,鎖定所述頻點,控制所述收發(fā)單元從DVB網絡側接收所述目標頻道的廣播傳輸流;FCC控制單元,用于根據所述頻道切換請求向FCC服務器發(fā)送單播請求,所述單播請求包括所述目標頻道標識,控制所述收發(fā)單元接收FCC服務器發(fā)送的所述目標頻道的單播傳輸流;判斷單元,用于判斷所述廣播傳輸流與所述單播傳輸流同步時,控制所述收發(fā)單元向所述FCC服務器發(fā)送同步通知以指示所述FCC服務器停止發(fā)送所述目標頻道的單播傳輸流。

在一種可能的實施方式中,該用戶設備還包括PTS解析單元,用于解析接收到的所述目標頻道的廣播傳輸流,確定所述廣播傳輸流中的每一個TS包的播放時間標記PTS值。

在一種可能的實施方式中,該用戶設備還包括RTP解析單元,用于解析單播傳輸流的RTP報文,獲取所述RTP報文中每一個RTP包所攜帶的TS包的PTS范圍值。

在一種可能的實施方式中,該用戶設備還包括判斷單元,用于判斷所述廣播傳輸流中當前接收的TS包的PTS值是否在所述單播傳輸流當前接收的RTP包的PTS范圍值內,若判斷結果為是,則確定所述廣播傳輸流與所述單播傳輸流同步。

第五方面,提供一種DVB系統(tǒng),包括:直播編碼器,用于從節(jié)目源接收目標頻道的節(jié)目信號,對所述節(jié)目信號進行編碼處理,輸出所述目標頻道的傳輸流;直播轉發(fā)系統(tǒng),與所述直播編碼器相連,用于接收從所述直播編碼器輸出的所述目標頻道的傳輸流,將所述傳輸流封裝為RTP報文后,轉發(fā)給FCC服務器;FCC服務器,與所述直播轉發(fā)系統(tǒng)相連,用于接收所述直播轉發(fā)系統(tǒng)轉發(fā)的RTP報文,還用于接收用戶設備發(fā)送的單播請求,所述單播請求包括目標頻道標識,根據所述目標頻道標識,向所述用戶設備發(fā)送所述目標頻道的單播傳輸流;還用于接收用戶設備發(fā)送的同步通知,根據所述同步通知判斷廣播傳輸流與所述單播傳輸流同步時,停止向所述用戶設備發(fā)送所述目標頻道的單播傳輸流;調制復用設備,與所述直播編碼器相連,用于從所述直播編碼器接收所述目標頻道的傳輸流,將所述傳輸流進行調制和復用后通過廣播方式發(fā)送給所述用戶設備。

第六方面,本發(fā)明實施例提供一種FCC服務器,包括:通信接口和處理器,通信接口用于接收用戶設備發(fā)送的單播請求,所述單播請求包括目標頻道標識,還用于根據所述目標頻道標識,向所述用戶設備發(fā)送所述目標頻道的單播傳輸流,進一步的通信接口還用于接收用戶設備發(fā)送的同步通知,處理器用于根據所述同步通知判斷所述廣播傳輸流與所述單播傳輸流同步是否同步,若判斷所述廣播傳輸流與所述單播傳輸流同步,控制所述通信接口停止向所述用戶設備發(fā)送所述目標頻道的單播傳輸流。

第七方面,本發(fā)明實施例提供一種FCC服務器,包括:

收發(fā)單元,用于接收直播轉發(fā)系統(tǒng)轉發(fā)的RTP報文,還用于接收用戶設備發(fā)送的單播請求,所述單播請求包括目標頻道標識;FCC控制單元,用于根據所述用戶設備的單播請求,控制收發(fā)單元向用戶設備發(fā)送該目標頻道以I幀起的單播傳輸流;判斷單元,用于在收發(fā)單元接收到用戶設備發(fā)送的同步同時后,根據所述同步通知判斷廣播傳輸流與所述單播傳輸流同步時,控制收發(fā)單元停止向所述用戶設備發(fā)送所述目標頻道的單播傳輸流

第八方面,本發(fā)明實施例提供了一種計算機存儲介質,用于儲存為上述用戶設備所用的計算機軟件指令,其包含用于執(zhí)行上述方面所設計的程序。

第九方面,本發(fā)明實施例提供了一種計算機存儲介質,用于儲存為上述FCC服務器所用的計算機軟件指令,其包含用于執(zhí)行上述方面所設計的程序。

本發(fā)明實施例的DVB頻道快速切換方法,在現有DVB系統(tǒng)架構中引入FCC服務器,利用FCC服務器單播輔助廣播的方式,向用戶終端快速發(fā)送單播傳輸流,確保用戶設備快速顯示圖象,縮短頻道切換時間,提升頻道切換速度,提升用戶體驗。

附圖說明

圖1為本發(fā)明實施例的DVB網絡架構圖;

圖2為本發(fā)明實施例的用戶設備的結構示意圖;

圖3為本發(fā)明實施例的另一用戶設備的結構示意圖;

圖4A為本發(fā)明實施例的FCC服務器的結構示意圖;

圖4B為本發(fā)明實施例的另一FCC服務器的結構示意圖;

圖5為本發(fā)明實施例的DVB頻道的快速切換方法網絡交互流程圖;

圖6為本發(fā)明實施例的頻道快速切換過程中FCC服務器發(fā)流的方法示意圖;

圖7為本發(fā)明實施例的頻道快速切換過程中PTS的計算方法示意圖;

圖8為RTP報文頭數據結構示意圖;

圖9為RTP報文擴展頭數據結構示意圖;

圖10為PTS數據結構示意圖。

具體實施方式

下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進一步描述。

圖1為本發(fā)明實施例的DVB網絡架構圖。

如圖1所示,本發(fā)明實施例為了解決DVB頻道的快速切換問題,在現有的DVB網絡架構中新增了直播轉發(fā)(Media Relay Function,MRF)子系統(tǒng)103 和快速頻道切換(FCC)服務器104。MRF子系統(tǒng)103主要用于對TS流進行RTP協(xié)議封裝、平抑DF(Delay Factor)值、前向糾錯(Forward Error Correction,FEC)編碼等,向FCC服務器提供可靠的RTP流。FCC服務器104用于利用單播輔助廣播的方式,縮短頻道切換速度,FCC服務器緩存從MRF子系統(tǒng)接收的RTP流,在收到用戶設備的FCC服務請求后,直接向用戶設備推送自I幀起的單播傳輸流,確保用戶設備快速顯示圖象,縮短頻道切換時間。除以上新增的兩個子系統(tǒng)外,該DVB系統(tǒng)還包括:

直播編碼器101,用于從節(jié)目源(衛(wèi)星或有線信號中)接收到節(jié)目直播信號后轉換為IP協(xié)議的媒體流(比如TS流),從而使節(jié)目直播信號能夠通過IP網絡進行傳輸。

調制復用設備102,用于從直播編碼器101獲取節(jié)目的TS流,對TS流進行多路復用處理、信道編碼和調制后廣播給用戶設備104。

具體的,調制復用設備102包括:正交振幅調制(Quadrature Amplitude Modulation,QAM)器和復用器(Multiplex,MUX),MUX主要用于將多路電視節(jié)目進行復用后傳輸。QAM作為DVB系統(tǒng)的前端設備,接收來自編碼器、復用器等設備的TS流,進行RS編碼(里所碼,Reed-solomon codes)、卷積編碼和QAM數字調制,輸出的射頻信號后可以直接通過有線電視網傳送給用戶設備。

用戶設備105,用于從調制復用設備102接收廣播的頻道的TS流進行解碼播放。具體的,用戶設備105可以是機頂盒,或者其他支持DVB相關標準的用戶終端,比如智能手機、平板電腦等設備。特別的,在本發(fā)明實施例中,機頂盒需要同時具有DVB和IP雙模功能,既能夠從調制復用設備接收廣播的頻道TS流,也能從FCC服務器接收單播的RTP流。

需要注意的是,以上說明僅示范性列出了本發(fā)明方案中DVB網絡架構中的部分網絡設備和功能實體,在實際的組網架構中該DVB網絡還可以包括其他符合DVB系列規(guī)范的其他網絡功能實體。

下面進一步對本發(fā)明實施例中的用戶設備進行介紹。圖2為本發(fā)明實施例的用戶設備的結構示意圖,如圖2所示:本發(fā)明實施例中的用戶設備200包括:

收發(fā)單元201,用于接收用戶發(fā)起的頻道切換請求,所述頻道切換請求包括目標頻道標識;

DVB控制單元202,用于根據所述目標頻道標識確定所述目標頻道的頻點,鎖定所述頻點,控制收發(fā)單元201從DVB系統(tǒng)接收所述目標頻道的廣播傳輸流;

FCC控制單元203,用于根據所述頻道切換請求向FCC服務器發(fā)送單播請求,所述單播請求包括所述目標頻道標識,控制所述收發(fā)單元201接收FCC服務器發(fā)送的所述目標頻道的單播傳輸流;

判斷單元204,用于判斷所述廣播傳輸流與所述單播傳輸流同步時,控制所述收發(fā)單元201向所述FCC服務器發(fā)送同步通知以指示所述FCC服務器停止發(fā)送所述目標頻道的單播傳輸流。

可選的,該用戶設備200還進一步包括PTS解析單元205,用于解析接收到的所述目標頻道的廣播傳輸流,確定所述廣播傳輸流中的每一個TS包的播放時間標記PTS值。

可選的,該用戶設備200還包括RTP解析單元206,用于解析從FCC服務器接收到的RTP報文,獲取所述RTP報文中每一個RTP包所攜帶的TS包的PTS范圍值。

可選的,判斷單元204具體可用于根據PTS解析單元205獲取的廣播傳輸流中TS包的PTS值以及RTP解析單元206獲取的單播傳輸流中TS包的PTS范圍值判斷所述廣播傳輸流中當前接收的TS包的PTS值是否在所述單播傳輸流當前接收的RTP包的PTS范圍值內,若判斷結果為是,則確定所述廣播傳輸流與所述單播傳輸流同步。

可選的,該用戶設備200還可以包括緩存單元207,用于緩存從DVB系統(tǒng)接收到的目標頻道的廣播傳輸流,并緩存該廣播傳輸流中每個TS報的PTS值。

需要注意的是,該用戶設備200的各個功能模塊既可以通過硬件實現,也可以通過軟件功能模塊,或者軟件功能模塊結合硬件實現。

下面結合附圖3對本發(fā)明實施例的另一用戶設備作進一步說明。

圖3為本發(fā)明實施例的另一用戶設備的結構示意圖,如圖3所示,該用戶設備300包括:

至少一個處理器301,通信總線302,存儲器303以及至少一個通信接口304。

處理器301可以是一個通用中央處理器(CPU),微處理器,特定應用集成電路(application-specific integrated circuit,ASIC),或一個或多個用于控制本發(fā)明方案程序執(zhí)行的集成電路。

通信總線302可包括一通路,在上述組件之間傳送信息。所述通信接口304,使用任何收發(fā)器一類的裝置,用于與其他設備或通信網絡通信,如以太網,無線接入網(RAN),無線局域網(Wireless Local Area Networks,WLAN)等。

存儲器303可以是只讀存儲器(read-only memory,ROM)或可存儲靜態(tài)信息和指令的其他類型的靜態(tài)存儲設備,隨機存取存儲器(random access memory,RAM)或者可存儲信息和指令的其他類型的動態(tài)存儲設備,也可以是電可擦可編程只讀存儲器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、只讀光盤(Compact Disc Read-Only Memory,CD-ROM)或其他光盤存儲、光碟存儲(包括壓縮光碟、激光碟、光碟、數字通用光碟、藍光光碟等)、磁盤存儲介質或者其他磁存儲設備、或者能夠用于攜帶或存儲具有指令或數據結構形式的期望的程序代碼并能夠由計算機存取的任何其他介質,但不限于此。存儲器可以是獨立存在,通過通信總線與處理器相連接。存儲器也可以和處理器集成在一起。

其中,所述存儲器303用于存儲執(zhí)行本發(fā)明方案的應用程序代碼,并由處理器301來控制執(zhí)行。所述處理器301用于執(zhí)行所述存儲器303中存儲的應用程序代碼。

在具體實現中,作為一種實施例,處理器301可以包括一個或多個CPU,例如圖3中的CPU0和CPU1。

在具體實現中,作為一種實施例,用戶設備300可以包括多個處理器,例如圖3中的處理器301和處理器308。這些處理器中的每一個可以是一個單核(single-CPU)處理器,也可以是一個多核(multi-CPU)處理器。這里的處理器可以指一個或多個設備、電路、和/或用于處理數據(例如計算機程序指令)的處理核。

在具體實現中,作為一種實施例,用戶設備300還可以包括輸出設備305和輸入設備306。輸出設備305和處理器301通信,可以以多種方式來顯示信息。例如,輸出設備305可以是液晶顯示器(liquid crystal display,LCD),發(fā)光二級管(light emitting diode,LED)顯示設備,陰極射線管(cathode ray tube,CRT)顯示設備,或投影儀(projector)等。輸入設備306和處理器301通信,可以以多種方式接受用戶的輸入。例如,輸入設備306可以是鼠標、鍵盤、觸摸屏設備或傳感設備等。

上述的用戶設備300可以是一個通用計算機設備或者是一個專用計算機設備。在具體實現中,用戶設備300可以是臺式機、便攜式電腦、網絡服務器、掌上電腦(Personal Digital Assistant,PDA)、機頂盒、智能電視、移動手機、平板電腦、無線終端設備、通信設備、嵌入式設備或有圖3中類似結構的設備。本發(fā)明實施例不限定用戶設備300的類型。

在本發(fā)明實施例的DVB頻道的快速切換方法中,如上所述的用戶設備300的各個部件具體分工如下:

通信接口304,用于接收用戶發(fā)起的頻道切換請求,所述頻道切換請求包括目標頻道標識;

處理器301,用于根據所述目標頻道標識確定所述目標頻道的頻點;

所述通信接口304,還用于根據所述頻道切換請求向FCC服務器發(fā)送單播請求,所述單播請求包括所述目標頻道標識;

所述通信接口304還用于接收所述FCC服務器發(fā)送的所述目標頻道的單播傳輸流;還根據所述目標頻道的頻點接收DVB系統(tǒng)發(fā)送的所述目標頻道的廣播傳輸流;

所述通信接口304還用于在所述處理器301判斷所述廣播傳輸流與所述單播傳輸流同步時,向所述FCC服務器發(fā)送同步通知以指示所述FCC服務器停止發(fā)送所述目標頻道的單播傳輸流。

具體的,所述處理器301還用于解析接收到的所述目標頻道的廣播傳輸流,確定所述廣播傳輸流中的每一個傳輸流TS包的播放時間標記PTS值;

所述處理器301還用于解析單播傳輸流中的RTP報文,獲取所述RTP報文中每一個RTP包所攜帶的TS包的PTS范圍值。所述處理器301還用于判斷所述廣播傳輸流中當前接收的TS包的PTS值是否在所述單播傳輸流當前接收的RTP包的PTS范圍值內,若判斷結果為是,則確定所述廣播傳輸流與所述單播傳輸流同步。

需要注意的是,該用戶設備300在本發(fā)明實施例的DVB頻道的快速切換方法中的具體實現,進一步在下文中結合方法實施例進行說明。

下面結合附圖對本發(fā)明實施例中的FCC服務器作進一步介紹,圖4A為本發(fā)明實施例的FCC服務器的結構示意圖,如圖4A所示,FCC服務器400A可包括:

收發(fā)單元401A,用于從MRF系統(tǒng)通過單播或者組播的方式接收節(jié)目的RTP流,還用于接收用戶設備發(fā)送的包含目標頻道標識的單播請求;

FCC控制單元402A,用于根據所述用戶設備的單播請求,控制收發(fā)單元401A向用戶設備發(fā)送該目標頻道以I幀起的單播傳輸流;

判斷單元403A,用于在收發(fā)單元401A接收到用戶設備發(fā)送的同步同時后,根據所述同步通知判斷廣播傳輸流與所述單播傳輸流同步時,控制收發(fā)單元401A停止向所述用戶設備發(fā)送所述目標頻道的單播傳輸流。

可選的,該FCC服務器還包括:

RTP解析單元404A,用于用于解析從MRF收到RTP報文,將RTP報文分解為TS包;

PTS解析單元405A,用于解析從分解的TS包,獲取每一個TS包的PTS值;

緩存單元406A,用于根據TS包的PID分類緩存解析后的TS包及每一TS 包的PTS值。

判斷單元403A,還用于獲取所述單播傳輸流待發(fā)送的TS包的PTS值,根據用戶設備上報的廣播傳輸流的首個TS包PTS值判斷該廣播傳輸流與單播傳輸流是否同步,若同步,則控制收發(fā)單元401A停止向所述用戶設備發(fā)送所述目標頻道的單播傳輸流。

可選的,該FCC服務器還可以包括RTP封裝單元407A,用于對解析后的TS包,通過擴展RTP包頭的方式,進行重新封裝后發(fā)送給用戶設備。詳細實現過程參考圖6和圖7。

下面結合附圖對本發(fā)明實施例中的FCC服務器作進一步介紹,圖4B為本發(fā)明實施例的FCC服務器的結構示意圖,如圖4所示,FCC服務器400B可包括:

包括至少一個處理器401B,通信總線402B,存儲器403B以及至少一個通信接口404B。

處理器401B可以是一個通用中央處理器(CPU),微處理器,特定應用集成電路(application-specific integrated circuit,ASIC),或一個或多個用于控制本發(fā)明方案程序執(zhí)行的集成電路。

通信總線402B可包括一通路,在上述組件之間傳送信息。所述通信接口404B,使用任何收發(fā)器一類的裝置,用于與其他設備或通信網絡通信,如以太網,無線接入網(RAN),無線局域網(Wireless Local Area Networks,WLAN)等。

存儲器402B可以是只讀存儲器(read-only memory,ROM)或可存儲靜態(tài)信息和指令的其他類型的靜態(tài)存儲設備,隨機存取存儲器(random access memory,RAM)或者可存儲信息和指令的其他類型的動態(tài)存儲設備,也可以是電可擦可編程只讀存儲器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、只讀光盤(Compact Disc Read-Only Memory,CD-ROM)或其他光盤存儲、光碟存儲(包括壓縮光碟、激光碟、光碟、數字通用光碟、藍光光碟等)、磁盤存儲介質或者其他磁存儲設備、或者能夠用于攜帶或存儲具有指令或數據結構形式的期望的程序代碼并能夠由計算機存取的任何其他介質,但不限于此。存儲器可以是獨立存在,通過總線與處理器相連接。存儲器也可以和處理器集成在一起。

其中,所述存儲器403B用于存儲執(zhí)行本發(fā)明方案的應用程序代碼,并由處理器401B來控制執(zhí)行。所述處理器401B用于執(zhí)行所述存儲器403B中存儲的應用程序代碼。

在具體實現中,作為一種實施例,處理器401B可以包括一個或多個CPU,例如圖4B中的CPU0和CPU1。

在具體實現中,作為一種實施例,FCC服務器400B可以包括多個處理器,例如圖4中的處理器401B和處理器408B。這些處理器中的每一個可以是一個單核(single-CPU)處理器,也可以是一個多核(multi-CPU)處理器。這里的處理器可以指一個或多個設備、電路、和/或用于處理數據(例如計算機程序指令)的處理核。

在具體實現中,作為一種實施例,FCC服務器400B還可以包括輸出設備405B和輸入設備406B。輸出設備405B和處理器401B通信,可以以多種方式來顯示信息。例如,輸出設備405B可以是液晶顯示器(liquid crystal display,LCD),發(fā)光二級管(light emitting diode,LED)顯示設備,陰極射線管(cathode ray tube,CRT)顯示設備,或投影儀(projector)等。輸入設備406B和處理器401B通信,可以以多種方式接受用戶的輸入。例如,輸入設備406B可以是鼠標、鍵盤、觸摸屏設備或傳感設備等。

上述的FCC服務器400B可以是一個通用計算機設備或者是一個專用計算機設備。在具體實現中,FCC服務器400B可以是臺式機、便攜式電腦、網絡服務器、掌上電腦(Personal Digital Assistant,PDA)、移動手機、平板電腦、無線終端設備、通信設備、嵌入式設備或有圖4B中類似結構的設備。本發(fā)明實施例不限定FCC服務器400B的類型。

在本發(fā)明實施例的DVB頻道快速切換方法中,該FCC服務器的各部件具體分工可如下:

通信接口404B可用于接收用戶設備發(fā)送的單播請求,所述單播請求包括目標頻道標識,還用于根據所述目標頻道標識,向所述用戶設備發(fā)送所述目標頻道的單播傳輸流,進一步的通信接口404B還用于接收用戶設備發(fā)送的同步通知,

處理器401B可用于根據所述同步通知判斷所述廣播傳輸流與所述單播傳輸流同步是否同步,若判斷所述廣播傳輸流與所述單播傳輸流同步,控制所述通信接口404B停止向所述用戶設備發(fā)送所述目標頻道的單播傳輸流。

需要注意的是,該FCC服務器在本發(fā)明實施例的DVB頻道的快速切換方法中的具體實現,進一步在下文中結合方法實施例進行說明。

下面結合附圖,以用戶設備為機頂盒(STB)為例對本發(fā)明實施例的DVB頻道的快速切換方法作詳細說明。

圖5為本發(fā)明實施例的DVB頻道的快速切換方法信令交互流程圖,如圖5所示,該方法包括如下步驟:

501、用戶通過遙控器向STB發(fā)起頻道切換請求,該頻道切換請求中包括目標頻道的標識。

需要注意的是,目標頻道標識可以是目標頻道的頻道號,也可以是通過紅外或者其他遙控器發(fā)送的目標頻道的信號標識,機頂盒可以根據該信號標識與內置的頻道列表確定目標頻道的頻道號。

502、STB根據目標頻道的標識搜索目標頻道的頻點;

503、STB向FCC服務器以RTCP消息的形式發(fā)起FCC請求消息RSR,攜帶STB的IP地址和RTCP的端口(port)以及目標頻道標識。

504、FCC服務器向STB返回FCC請求響應消息RSI,攜帶目標頻道的單播傳輸流的第一個RTP包序號和頻道碼率。

505、FCC服務器從緩存的目標頻道的TS流中的某個I幀開始以1.N倍速率發(fā)單播傳輸流給STB,具體流程參考圖6的進一步說明。

506、FCC服務器發(fā)送完緩存的TS流后,發(fā)送同步通知消息SCN給STB。

507、后續(xù)FCC服務器以1.0倍速率轉發(fā)從直播轉發(fā)系統(tǒng)MRF接收的目標

頻道的RTP報文給STB。

FCC服務器轉發(fā)MRF的RTP報文時,也需要按照PID分類緩存TS,并計算每個TS的PTS值,用擴展頭封裝RTP,發(fā)送給STB,每個RTP包的擴展頭包含該RTP包攜帶的TS包的PTS范圍值,具體實現方式參考圖6的進一步說明。

508、STB鎖定到目標頻道的對應頻點。

509、從DVB側的廣播設備,如:調制復用設備,接收廣播的傳輸流。

510、STB提取并計算該廣播傳輸流中的每個TS包的PTS值,STB比較DVB側的當前TS包的PTS值是否在當前RTP報文攜帶的TS包的PTS范圍值內。如果在此范圍內,則:

511、發(fā)送FCC同步通知響應報文SCR給FCC服務器,并攜帶通過廣播傳輸流接收的第一個TS包的PTS值給FCC服務器,記為DVB_TS_PTS。

512、FCC服務器繼續(xù)向STB發(fā)單播傳輸流,同時比較當前要發(fā)送的TS包的PTS值是否與DVB_TS_PTS相同,相同,則停止發(fā)送單播流,不足部分用TS空包補充。這時,單播傳輸流和廣播傳輸流就無縫對接成功,FCC服務器就停止向STB發(fā)送單播傳輸流了,后續(xù)STB就繼續(xù)從DVB側接收廣播傳輸流進行解碼播放。

本發(fā)明實施例的DVB頻道快速切換方法,在現有DVB系統(tǒng)架構中引入FCC服務器,利用FCC服務器單播輔助廣播的方式,向用戶終端快速發(fā)送以I幀開始的單播傳輸流,確保用戶設備快速顯示圖象,縮短頻道切換時間,提升頻道切換速度,提升用戶體驗。

圖6為本發(fā)明實施例的頻道快速切換過程中FCC服務器向用戶設備發(fā)流的方法示意圖,如圖6所示:

FCC服務器在向STB發(fā)送目標頻道的單播傳輸流之前,首先,FCC服務器需要將從直播轉發(fā)系統(tǒng)接收的目標頻道的RTP報文解析成TS包后進行重新封裝成RTP報文,FCC服務器將TS包重新封裝為RTP報文時,需要擴展RTP報文頭,如圖8所示。

其中X=1,標識RTP頭有擴展。擴展頭如圖9所示:

其中TAG=1000,表示是本RTP報文包含的TS包的PTS范圍值。PTS1-Low是RTP包中第一個TS包的PTS值的0-31位,PTS1-High是RTP包中第一個TS包的PTS值的32-63位,PTS2-Low是RTP包中最后一個TS包的PTS值的0-31位,PTS1-High是RTP包中最后一個TS包的PTS值的32-63位。

具體的重新封裝過程如下:

FCC服務器收到從直播轉發(fā)系統(tǒng)發(fā)送的RTP報文后,將該RTP報文分解成TS包,并按照每個TS包的PID進行分類緩存,同時還需分別計算RTP報文中每個TS包對應的PTS,并將其插入到相應PID的TS包隊列,并記錄最后一個RTP包的序號LAST_RTP_SN,例如:LAST_RTP_SN=1005。

具體的PTS計算過程參考圖7的說明。

需要注意的是,PID是用于指示分組負載數據中存儲的數據類型,如視頻包、音頻包等。

如下步驟為FCC服務器向STB發(fā)送單播傳輸流的具體步驟,該步驟包括:

601、FCC服務器接收STB發(fā)送的FCC服務請求消息,請求消息中攜帶目標頻道的標識;

602、FCC服務器在視頻緩存隊列查找目標頻道的最近的I幀,具體實現過程如下:

6021、FCC服務器計算當前PID隊列中所有音軌最大PTS值,計為LAST_AUDIO_PTS。

6022、FCC服務器在視頻隊列中查找PTS小于LAST_AUDIO_PTS的第一個I幀,其PTS計為I_FRAME_PTS,并用指針pVideoTSP指向該I幀所在的TS包。

6023、FCC服務器根據I_FRAME_PTS在音軌i的TS包隊列中查找PTS最近的TS包,并用指針pAudioTSP[i]指向該TS包。

6024、FCC服務器計算音視頻TS包隊列中pVideoTSP和pAudioTSP[i]指針之后的TS包的個數,計為TOTAL_ES_TSP_COUNT。

603、FCC服務器用擴展的RTP封裝緩存的TS包,并以1.N倍速率發(fā)送RTP報文給STB,具體實現方式如下:

6031、FCC服務器計算當前待傳輸的音視頻TS包(包括PAT/PMT 2個TS包)需要多少個RTP報文來承載:

RTP_COUNT=ceil((TOTAL_ES_TSP_COUNT+2)/TSPS_PER_RTP_PACKET)

6032、FCC服務器計算第一個RTP報文的包序號:

CURRENT_RTP_SN=LAST_RTP_SN–RTP_COUNT+1;

6033、FCC服務器取PAT/PMT的TS包,并從音視頻TS包隊列中取5個TS包總共7個TS包構成一個RTP包,包序號為CURRENT_RTP_SN;將這個RTP報文發(fā)送給機頂盒后,將這個RTP報文加入一個已發(fā)RTP包隊列(用于重傳);

6034、FCC服務器計算當前RTP報文的包序號;

CURRENT_RTP_SN++;

6035、循環(huán),直到音視頻TS包隊列均為空:

a)FCC服務器從音視頻TS包隊列中取7個TS包組成RTP報文(如果不足7個TS包,則可以用空TS包填充),RTP包序號為CURRENT_RTP_SN;

b)FCC服務器將新生成的RTP報文發(fā)送給機頂盒;

c)FCC服務器將新生成的RTP報文添加到已發(fā)RTP包列表(用于重傳);

d)FCC服務器計算當前RTP報文的包序號;CURRENT_RTP_SN++;

6036、循環(huán),直到CURRENT_RTP_SN=LAST_RTP_SN:

a)生成7個TS空包組成RTP報文,RTP包序號為CURRENT_RTP_SN;

b)FCC服務器將新生成的RTP報文發(fā)送給機頂盒;

c)FCC服務器將新生成的RTP報文添加到已發(fā)RTP包列表(用于重傳);

d)CURRENT_RTP_SN++;

604、FCC服務器發(fā)送完緩沖區(qū)的TS流后,以1.0倍速將接收的RTP報文處理并轉發(fā)給機頂盒。

605、FCC服務器通過PTS值判斷本地TS流與DVB側的TS流是否同步。同步后FCC服務器停止發(fā)送單播流給STB,具體方式可參加圖5步驟507-508的說明。

需要注意的是,如上對FCC服務器向機頂盒發(fā)流的過程說明中的部分步驟圖示并未在圖6中體現,如步驟602、604等。

下面對PTS的提取和計算方法進一步進行說明,圖7為本發(fā)明實施例的頻道快速切換過程中PTS的計算方法示意圖,該方法包括:

701、獲取每個TS包的PID信息。

具體的,由于PAT報文的PID固定為0,可以據此先獲取PAT報文,然后根據PAT能夠得到PMT的PID信息,再根據PAT/PMT報文就能識別出視頻PID和EIT的PID。

下面對本步驟的涉及的幾個概念予以說明:

PAT:(Program Association Table,節(jié)目關聯表),解碼工作總是通過尋找PAT表開始。PAT給出了構成傳送流中各個節(jié)目業(yè)務的PMT(節(jié)目映射表)的PID(包識別符),同時,也給出了NIT(網絡信息表)的PID號,根據列出的PID,接收端就可以獲得所有的PMT表。

PMT:(Program Map Table,節(jié)目映射表),PMT表指出了組成節(jié)目業(yè)務(Service)的各個碼流的PID號,并對各路碼流進行描述。PMT描述了當前TS流中節(jié)目的視、音頻PES流的PID,PMT的個數等于當前TS流中節(jié)目的個數。通過PMT,可以從傳輸流中提取指定節(jié)目的基本流并予以解碼重放。

EIT(Event Information Table,事件信息表),按時間順序提供每一個節(jié)目業(yè)務中包含的節(jié)目段的信息,它提供事件的的名稱,開始時間,時間長度,運行狀態(tài)等。

PID:(Packet Identity,數據組識別符),具有唯一的整數值,可以識別傳送碼流中的單元,例如表、數據、或者一節(jié)目的音頻。

702、按照PID分類緩存TS包。

具體的,按照各個TS包的PID,將不同PID標識的TS包分類緩存成不同的包隊列,比如:視頻TS包隊列、音頻TS包隊列、PAT/PMT包隊列等。

703、計算每個TS包的PTS,具體實現過程如下:

7031、獲取PES包的標題所在TS包。

具體的,對應視頻TS包,如果其pay_load_unix_start_indicator字段值為1,且TS負載的前24位為0x000001,說明此TS報文承載的是PES包的標題,則獲取該TS包。

7032、提取該TS包的PTS值。

如果PES標題的PTS_DTS_Flags是10或11,提取PTS信息,如圖10所示:

7033、以該TS包對應的PTS值為基準,計算后續(xù)每個TS包的PTS值。

因為,兩個PES包間的所有TS包的PTS值都是一樣的,所以以PES包的PTS為基準,將該PES包與下一個PES包間的TS包的PTS值都計為該PES包的PTS值。

7034、當TS包的負載再次包含PES包的標題時,重新提取PES標題所在TS包攜帶的PTS值,作為后續(xù)TS包的PTS計算基準。

需要注意是的,該方法既適用FCC服務器對PTS的提取和計算也適用用戶終端對PTS的提取和計算。

本領域普通技術人員可以意識到,結合本文中所公開的實施例描述的各示例的單元及算法步驟,能夠以電子硬件、計算機軟件或者二者的結合來實現,為了清楚地說明硬件和軟件的可互換性,在上述說明中已經按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術方案的特定應用和設計約束條件。專業(yè)技術人員可以對每個特定的應用來使用不同方法來實現所描述的功能,但是這種實現不應認為超出本發(fā)明的范圍。

所屬領域的技術人員可以清楚地了解到,為了描述的方便和簡潔,上述描述的系統(tǒng)、裝置和單元的具體工作過程,可以參考前述方法實施例中的對應過程,在此不再贅述。

在本申請所提供的幾個實施例中,應該理解到,所揭露的系統(tǒng)、裝置和方法,可以通過其它的方式實現。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另外,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口、裝置或單元的間接耦合或通信連接,也可以是電的,機械的或其它的形式連接。

所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網絡單元上??梢愿鶕嶋H的需要選擇其中的部分或者全部單元來實現本發(fā)明實施例方案的目的。

另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以是兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現,也可以采用軟件功能單元的形式實現。

所述集成的單元如果以軟件功能單元的形式實現并作為獨立的產品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中?;谶@樣的理解,本發(fā)明的技術方案本質上或者說對現有技術做出貢獻的部分,或者該技術方案的全部或部分可以以軟件產品的形式體現出來,該計算機軟件產品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網絡設備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。而前述的存儲介質包括:U盤、移動硬盤、只讀存儲器(ROM,Read-Only Memory)、隨機存取存儲器(RAM,Random Access Memory)、磁碟或者光盤等各種可以存儲程序代碼的介質。

以上所述,僅為本發(fā)明的具體實施方式,但本發(fā)明的保護范圍并不局限于此,任何熟悉本技術領域的技術人員在本發(fā)明揭露的技術范圍內,可輕易想到各種等效的修改或替換,這些修改或替換都應涵蓋在本發(fā)明的保護范圍之內。因此,本發(fā)明的保護范圍應以權利要求的保護范圍為準。

當前第1頁1 2 3 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
阿拉尔市| 巴塘县| 百色市| 图片| 朝阳区| 万载县| 扶风县| 邵武市| 卢氏县| 当阳市| 楚雄市| 东乡| 毕节市| 牡丹江市| 洪雅县| 蒲江县| 睢宁县| 库车县| 宁国市| 呼伦贝尔市| 即墨市| 宣武区| 通州区| 拉萨市| 博兴县| 湛江市| 平远县| 剑阁县| 嘉荫县| 礼泉县| 抚顺市| 榆林市| 新化县| 黄骅市| 会同县| 麻江县| 灌阳县| 诸暨市| 鲜城| 明水县| 永川市|