李 爽,朱曉松
(1.河北建材職業(yè)技術(shù)學院,河北秦皇島066000;2.河北廣電網(wǎng)絡(luò)集團秦皇島有限公司,河北秦皇島066000)
隨著互聯(lián)網(wǎng)機頂盒的發(fā)展與普及,人們獲得內(nèi)容的渠道更加豐富。面對海量的內(nèi)容和優(yōu)質(zhì)產(chǎn)品體驗的互聯(lián)網(wǎng)機頂盒,傳統(tǒng)有線電視受到了巨大的沖擊與挑戰(zhàn)。有線電視行業(yè)不得不做出改變,而改善用戶體驗是其中重要的方面。傳統(tǒng)的有線電視DVB的搜臺及EPG更新機制基于廣播網(wǎng),搜臺和頻道更新緩慢常常被人詬病,并且EPG信息的更新不及時的情況時有發(fā)生。當前,有線電視從網(wǎng)絡(luò)到終端雙向化逐漸普及,具備了通過雙向網(wǎng)下發(fā)PSI/SI信息的基礎(chǔ)。因此,有線運營商在機頂盒方案選型中應(yīng)充分考慮雙向網(wǎng)給有線電視業(yè)務(wù)帶來的便捷。本文以秦皇島廣電網(wǎng)絡(luò)的應(yīng)用為例,闡述一種依靠雙向網(wǎng)絡(luò)獲得PSI/SI信息的方法。
EPG(電子節(jié)目指南)主要由頻道信息(PSI)和節(jié)目信息(SDT)組成。前者通過機頂盒搜臺獲得,包括頻道所在的頻點信息、SID和音視頻的ID及其他特定信息(如節(jié)目排序、分類、音量補償?shù)人接泄δ芏x)。后者特指節(jié)目預(yù)告信息,機頂盒一直監(jiān)測并自動更新。一般來講,傳統(tǒng)的機頂盒有自動搜臺、單頻點搜臺和全頻段搜臺3種方式,其中最常用的為自動搜臺。對于自動搜臺,機頂盒在出廠時,往往預(yù)設(shè)一個初始頻點(Main Frenquency),或稱主頻點,機頂盒根據(jù)主頻點的物理參數(shù)(頻點、符號率、調(diào)制方式),調(diào)用TUNER鎖該頻點,并獲得NIT(Network Information Table)和BAT信息。根據(jù)NIT的描述獲得節(jié)目頻點信息和節(jié)目SID,并到各個頻點逐一驗證并獲得機頂盒播放節(jié)目所需的頻點信息、SID和音視頻ID,如圖1所示。結(jié)合BAT中描述的特定信息實現(xiàn)一些如節(jié)目排序、分類等私有功能[1]??梢钥吹剑瑱C頂盒在搜臺過程中,多次出現(xiàn)鎖頻-解析(根據(jù)頻道的多少大概10~30次)的過程,這也是搜臺過程中占用時間最多的部分,整個搜臺過程往往需要2~3 min。
圖1 機頂盒自動搜臺基本流程
有線網(wǎng)絡(luò)及終端的雙向化為EPG信息的交互獲取提供了基礎(chǔ)條件。在功能上,通過中心架設(shè)EPG服務(wù)器,并配置Config文件,集中向終端提供頻道信息和節(jié)目信息。終端定期和不定期地與EPG服務(wù)器對比版本號,從而獲得頻道信息和節(jié)目信息。在可靠性方面,當終端雙向網(wǎng)絡(luò)條件喪失時,終端能夠通過傳統(tǒng)的DVB方式即廣播網(wǎng)仍可以繼續(xù)獲得EPG信息。
在服務(wù)器的穩(wěn)定性方面,通過雙向網(wǎng)絡(luò)提供EPG服務(wù)Portal服務(wù)器采用主備設(shè)計,基于Keepalived+HA實現(xiàn)。傳統(tǒng)的EPG服務(wù)器則采用ASI輸出,用碼流切換器進行主備切換。
機頂盒獲得IP EPG信息或DVB EPG信息二者互不影響,分別存儲在機頂盒中兩個區(qū)域中供展示調(diào)用。
PSI/SI信息的發(fā)布和獲取在雙向網(wǎng)絡(luò)暢通(盒端到服務(wù)端正常獲得信息)和單向網(wǎng)絡(luò)即廣播網(wǎng)時,分別采取不同的處理流程,如圖2、圖3所示。
1)機頂盒雙向網(wǎng)絡(luò)正常
(1)通過CMS內(nèi)容管理系統(tǒng)配置頻道信息,導入編輯好的PSI/SI信息表(Excel格式)、EPG服務(wù)器中的EPG信息表(xm l或txt)導入至CMS服務(wù)器中。
(2)CMS服務(wù)器將導入的PSI/SI信息表和EPG節(jié)目列表發(fā)給PORTAL服務(wù)器,由HA檢測主備PORTAL服務(wù)器。
(3)機頂盒向PORTAL服務(wù)器請求數(shù)據(jù)。
圖2 雙向網(wǎng)絡(luò)信息傳遞流程
圖3 單向網(wǎng)絡(luò)信息傳遞流程
(4)PORTAL服務(wù)器返回數(shù)據(jù)請求,并發(fā)送數(shù)據(jù)。在實際應(yīng)用中Portal服務(wù)器也同時向其他類型終端提供服務(wù)。
2)機頂盒雙向網(wǎng)絡(luò)異常
(1)EPG服務(wù)器與ChinaEPG節(jié)目單平臺對接,自動獲取節(jié)目信息。ChinaEPG無法提供的地方節(jié)目單則通過手動方式導入EPG服務(wù)器。另外,頻道信息也通過EPG服務(wù)器配置并下發(fā)。
(2)EPG服務(wù)器將PSI/SI信息以ASI或IP方式輸出給服務(wù)器。若為IP輸出則采用Keepalive進行主備監(jiān)控切換,若為ASI輸出則采用碼流切換器進行主備監(jiān)控切換。
(3)復用器將數(shù)據(jù)發(fā)送給調(diào)制器,并最后以RF信號混合至廣播網(wǎng)。
(4)通過HFC網(wǎng)絡(luò)對機頂盒進行數(shù)據(jù)傳遞。
IP數(shù)據(jù)包括頻道信息、節(jié)目預(yù)告信息、Config配置表4部分。其中,頻道信息采用.xls的表格進行描述,表格的定義如表1所示。節(jié)目預(yù)告信息的導入與傳統(tǒng)EPG服務(wù)器的導入一樣,仍然采用*.xml或*.txt格式文件。Config配置表(見表2)中描述了以上兩類信息的更新時間、版本號、版本監(jiān)聽周期等,版本號是頻道信息和節(jié)目預(yù)告信息是否更新的唯一參照依據(jù)。
當雙向網(wǎng)絡(luò)正常時,機頂盒默認采用IP監(jiān)聽方式。機頂盒在第一次IP搜臺時獲得初始Config配置表,并以此時Config配置表版本號作為初始版本。每間隔一段時間(網(wǎng)絡(luò)配置中下發(fā)的監(jiān)聽周期時間((1+本機序列號后兩位%)),機頂盒主動向Protal服務(wù)器Config配置表對比版本號。若版本號發(fā)生變化,則Config配置文件中描述的所有信息,均自動更新。當雙向網(wǎng)絡(luò)異常時,機頂盒則采用傳統(tǒng)廣播網(wǎng)的EPG監(jiān)聽方式,如NIT表和SDT表監(jiān)聽。監(jiān)聽范圍只限視頻正在播放的時候,包括主Lancher小視頻、直播電視、電視列表。
表1 頻道信息結(jié)構(gòu)定義
表2 Config配置表
機頂盒的信息獲取流程主要包括如下3種情況:
1)出廠狀態(tài)的節(jié)目搜索(見圖4)
流程簡述:(1)節(jié)目為空并且雙向網(wǎng)絡(luò)正常時,機頂盒默認采用IP方式進行搜臺,雙向網(wǎng)絡(luò)異常則采用傳統(tǒng)廣播網(wǎng)方式搜臺。(2)若開機后節(jié)目不為空,機頂盒則進入頻道信息和節(jié)目信息更新監(jiān)聽流程,見圖5。
圖4 開機節(jié)目搜索過程
圖5 頻道信息和節(jié)目信息更新監(jiān)聽流程
2)頻道信息和節(jié)目信息監(jiān)聽更新流程
流程簡述:(1)機頂盒在開機時,首先通過雙向網(wǎng)絡(luò)獲得Config配置文件;(2)獲得成功則機頂盒進行IP監(jiān)聽流程,更新過程中網(wǎng)絡(luò)異常則跳轉(zhuǎn)到調(diào)用機頂盒中傳統(tǒng)EPG信息數(shù)據(jù)庫,開始進行NIT和SDT監(jiān)聽[2];(3)獲得失敗則調(diào)用機頂盒中傳統(tǒng)EPG信息數(shù)據(jù)庫,并進行NIT和SDT監(jiān)聽(監(jiān)聽方式詳見2.4節(jié))。
3)頻道和節(jié)目信息呈現(xiàn)流程(見圖6)
圖6 頻道和節(jié)目信息呈現(xiàn)
流程簡述:(1)機頂盒開機判斷IP獲得配置文件是否成功;(2)獲得配置文件成功,則調(diào)用IP主數(shù)據(jù)庫顯示頻道和節(jié)目信息;(3)獲得配置文件失敗,則調(diào)用傳統(tǒng)EPG數(shù)據(jù)庫,若數(shù)據(jù)庫為空,則進行DVB搜臺。
在近5 000用戶網(wǎng)絡(luò)內(nèi)進行測試,在服務(wù)端,基于Keepalived+HA技術(shù)的兩臺Portal服務(wù)器實現(xiàn)了負載均衡和高可用[3]。如圖7所示,當Config配置文件版本號變化后,用戶向Portal服務(wù)器的訪問達到峰值。集中更新過后,趨于平緩。集中更新時間大約30 min,峰值帶寬占用70 Mbit/s(見圖8)。在終端,自動搜索節(jié)目的時間從120 s縮短到11 s。搜臺完成后,頻道信息和節(jié)目信息的更新在后臺完成,前臺感覺不到更新過程,徹底避免了運營過程中因頻道信息(頻道排序、頻道名稱、頻道分類、SID等)變化需用戶端重新搜臺的問題。另外,Portal服務(wù)器同時向移動終端視頻服務(wù)提供EPG信息,實現(xiàn)了多屏視頻業(yè)務(wù)統(tǒng)一Portal。在實際應(yīng)用過程中發(fā)現(xiàn),當每次節(jié)目預(yù)告信息更新后的一段時間內(nèi),終端集中訪問Portal服務(wù)器導致了網(wǎng)絡(luò)帶寬的占用突然增加。當終端大規(guī)模部署時,網(wǎng)絡(luò)將承受較大的壓力,因此,在信息的更新機制上還需要采用終端分組更新的方式進行改善。
圖7 HAProxy Statistics Report(截圖)
圖8 IP-EPG信息出口帶寬占用情況(截圖)
可以看到,基于IP的PSI/SI信息更新效果遠遠好于傳統(tǒng)的DVB更新機制,它明顯改善了用戶體驗,提高了有線電視產(chǎn)品的競爭力。當前,隨著網(wǎng)絡(luò)的發(fā)展,視頻業(yè)務(wù)雙向化已成為現(xiàn)實,有線電視業(yè)務(wù)最終將逐漸在雙向網(wǎng)絡(luò)上承載,在機頂盒PSI/SI信息更新機制上的探索也是有線電視業(yè)務(wù)逐漸雙向化的一種嘗試。
[1]陳渙經(jīng),王振強.數(shù)字電視機頂盒接收PSI/SI信息的過程及EPG的實現(xiàn)[J].有線電視技術(shù),2013(15):62-65.
[2]王楠楠.Android數(shù)字電視機頂盒前端參數(shù)變化檢測[D].天津:天津大學,2014.
[3]博客園.haproxy+keepalived實現(xiàn)高可用負載均衡[EB/OL].[2015-04-10].http://www.cnblogs.com/dkblog/archive/2011/07/06/2098949.html.