陳一行 ,王國裕
(1.四川大學 微電子技術四川省重點實驗室,四川 成都 610064;2.重慶郵電大學 微電子重點實驗室,重慶 400065)
電子節目指南(EPG)[1]是數字音頻廣播(DAB)的一種數據業務,作為DAB優于調幅、調頻廣播的新特點在DAB中被廣泛使用。它可以包含聲音、圖像、文字、數據及視頻等業務。
目前在許多國家和地區DAB有了很高的覆蓋率,EPG作為DAB的擴展應用,為用戶提供相關節目的清單,提供一個良好的導航機制,使用戶能夠方便快捷地找到自己關心的節目并查看節目的附加信息,已經成為DAB的重要組成部分。
常規DAB中傳輸的EPG共分3層:用戶應用層(EPG編碼)、傳輸層和網絡層。EPG信息先被處理成可擴展置標語言(XML)[2]格式的文件,再經過多媒體對象傳輸(MOT)編碼器產生完整的包括附加信息在內的MOT對象,把這些對象切割成適當大小的塊,最后將這些塊轉化成適合DAB傳送的數據包,通過包模式[3]或者在X-PAD[3]數據區來傳送。文獻[4]給出了DAB/DMB便攜式接收機EPG的解碼顯示方案。但無論采用包模式還是X-PAD通道,EPG的最大傳輸速率為64 kbit/s[5]。
隨著DAB節目豐富,DAB內容增加,同時EPG內容增加,相對于DAB內容可以增加DAB系統容量[6],而受傳輸速率的限制,傳統EPG結構使其內容的解碼顯示影響到了用戶的體驗。筆者針對DAB電子節目指南的內容、結構及其作用,提出一種可以快速獲取EPG主要內容的XML結構方案。
為了向上兼容,在EPG中的音頻和各種數據業務的節目說明信息將被處理成XML[2]格式的文件,采用XML格式的優勢就在于新業務的添加不會對已有內容產生影響,同時,XML格式的文件在許多應用程序以及API中早已得到廣泛應用。
EPG的XML數據結構如圖1所示,是以“標簽-長度-值”形式進行編碼的層次嵌套結構。EPG中每個元素或屬性都有相應的標簽名、長度值(標簽所對應元素或屬性內容的大?。┖椭担ㄔ鼗驅傩运膬热荩3]。這樣的結構方便接收端跳過不需要或者沒有定義的元素,為提高解碼效率提供了條件。

作為DAB數據業務的一種,EPG主要提供項目清單信息和數據服務,為用戶快速了解DAB節目信息提供幫助。而一個關鍵的要求是,EPG必須能在具有不同顯示能力以及不同性能的DAB接收器上工作。為了增加EPG信息的靈活性,EPG數據分解為信號群(一個固定頻率上的所有電臺稱為一個信號群)說明信息、業務(各種節目的統稱)說明信息(節目時間表、節目說明信息和節目相關內容的說明信息)以及業務組(多個節目捆綁在一起)說明信息(主要用于擴展信息)。
對于用戶而言,業務說明信息(PI)[5]是最主要的內容,它提供了這個頻段各個電臺未來7天內的節目信息,一個完整的業務說明信息(見圖2)包括節目名稱、節目所屬電臺及頻段、節目類型、節目播出結束時間和節目內容描述等。一個獨立完整的PI包含了一個電臺一天的節目信息。根據這些信息,用戶可以根據自己的需要,靈活地安排時間收聽相應節目。

接收端的硬件部分主要工作為:首先通過RF模塊將接收到的射頻轉換成中頻,再通過ADS模塊轉為數字信號,最后進行DAB的基帶解碼。文中設計的基帶解碼采用西芯微電子公司的ID200作為DAB基帶解碼芯片[7],其主要作用是數字混頻、同步/跟蹤和解調,ID200可同時對傳輸幀內的兩路音頻、數據或視頻節目進行解碼,這使得在收聽DAB節目的同時獲取EPG信息成為可能。解碼后的音頻節目可以通過片內MPEG L2音頻解碼器播放,而EPG信息可以通過SPI接口送出到MCU實現軟件解碼,再顯示在接收機的液晶屏上。
軟件部分,EPG解碼采用逐層遞進的方式,即先獲取一組完整的包,去除包頭包尾從中恢復出完整的MSC數據組,再從MSC數據組中恢復出EPG數據,最后解XML格式數據,通過液晶屏顯示。
測試用的是英國廣播公司(BBC)廣播的EPG數據。圖3為接收機關于EPG信號以“臺名-日期-節目-內容”形式的分層顯示。

由圖3可知,BBC的10個電臺有EPG信息,每個電臺包含未來7天的節目預告,這樣總共有70個獨立的PI,每個PI的大小經測試為5~9 kbyte,而BBC廣播EPG信息的傳輸速率只有32 kbit/s。接收端只有獲取一個完整的PI才能將其解碼顯示,即每個PI花費時間在1 s以上,接收全部EPG信息要花費10×7×1 s的時間。這意味著用戶要查看一個電臺其中一天的節目信息,最大等待時間將超過1 min。在實際應用中,用戶最關心的EPG信息是節目名稱以及節目播出時間,即圖3中的前3層信息,而節目描述是次要信息。本文針對這種情況提出了一種適用于接收端快速顯示EPG節目名稱以及節目播出時間的EPG結構方案。
文獻[2]中給出了PI中各個元素的最大值(見圖2),其中節目名(mediumName,16 byte)、節目位置(location,22 byte)、完整節目名(longName,128 byte)和簡要節目描述(ShortDisription,180 byte)這4項是PI的主要內容。其中,前兩項是必要內容,定義為Required即PI-R;后兩項為可選內容,定義為Optional即PI-O。PI中擁有多個節目,很容易超過5 kbyte。
通常情況下,一個電臺每周都會有一個或幾個固定的節目,比如新聞播報,以及圖3中的BBCAsian Network每天1∶00都會有的AS BBC 5 Live。PI按每臺每天劃分會有數據冗余。另外,完整節目名和簡要節目描述并不是PI中必要元素,且占了很大一部分空間。因此,筆者提出一種新的結構,即把傳統PI的PI-R和PI-O兩部分分開,建立獨自完整的結構,如圖4所示。
產生這種PI結構的步驟:首先,獲取電臺全部信息;然后,提取所有電臺名、播出日期、節目名以及播出時間組成一個PI-R,提取完整節目名以及簡要節目描述,以天為單位組成PI-O;最后,按照PI-R∶PI-O=n∶1(n=1,2,3,4,5,6,7,…)的比例放入包中傳輸。
表1以BBC的BBCAsina Network電臺未來7天節目預告為例,將傳統結構與本文提出的結構作了對比。從表1中可以看出,傳統的PI按天劃分,并按順序傳輸,以32 kbit/s的傳輸速率要獲取這個電臺的所有信息需要9 s的時間,總量為38078 byte。而本文提出的將PI劃分為PI-R以及PI-O的結構中,總量為38484 byte,PI-R約占此電臺所有節目信息的11.2%,即接收端只需要1 s就能顯示該臺未來7天的所有必要信息。新的結構,PI-R和PI-O中重復了一一對應的節目ID(見圖4),總大小只增加了1%。


表1 BBCAsina Network電臺傳統結構與新PI結構 byte
PI-R與PI-O的比值越高,接收端獲取PI-R的幾率越大,將其解碼顯示所等待的時間就越少。如PI-R與PI-O的比值以7∶1的比例交叉傳輸,接收端解碼顯示PI-R的時間將是傳統的1/7,即只需花費很少的時間就能向用戶顯示包括電臺名、節目名、節目播出時間在內的該電臺前3層(見圖3)的EPG信息,而最后一層節目描述則可以通過先存入接收端存儲器的形式為顯示做準備。
本設計針對實際應用提出了一種新的PI結構并利于大的EPG數據信息必要內容的快速解碼顯示。這樣的結構有利于接收端快速獲取節目關鍵信息,為配合接收端其他模塊實現節目搜索、節目預定與錄制等EPG擴展應用提供了方便。
[1]ETSI EN 301234,Digital audio broadcasting(DAB);multimedia object transfer(MOT)protocol[S].2006.
[2]ETSI TS 102818,Digital audio broadcasting(DAB);XML specification for DAB electronic programme guide(EPG)[S].2008.
[3]LU Mingying,WANG Guoyu,ZHANG Hongsheng.Embedded DAB decoder IP for 3G/4G mobile application[J].Global Mobile Congress,2005(10):236-240.
[4]宋清,陸明瑩.DAB電子節目指南的解碼設計及其實現[EB/OL].[2011-03-03].http://www.eet-china.com.
[5]ETSI TS 102371,Digital audio broadcasting(DAB);digital radio mondiale(DRM);transportation and binary encoding specification for electronic programme guide(EPG)[S].2008.
[6]施玉海,李繼龍,楊明.一種新的基于DAB系統的改進方案[J].電視技術,2009,33(2):4-5.
[7]陸明瑩,張賢斌,王國裕,等.基于ID200的便攜式DAB接收機的設計和實現[J].電聲技術,2010,34(2):81-83.