TDT
MPEG-2傳送流中的時間與日期表
TDT信號在數字視頻廣播中業務信息(SI)中作為時間和日期表
目錄
視領域,MPEG-2傳送流中包含的各種業務信息(SI)表之一,是時間與日期表的縮寫,用於更新IRD的內部時鐘,其語法結構如下圖所示:
table_id | section syntax indicator | reserved future use | reserved | section length | UTC time |
運載-息,單段組。該段值包傳輸。_值。該指示即協調(:_ )及修儒略(: )。傳輸編碼際。步化鍾。傳輸。
:這個40b欄位按照UTC和MJD包含了當前的時間和日期。這個欄位編碼為16b,給出了MJD的16LSB,其後24b以4b二進位BCD碼編碼為6個數字。比如:93/10/13 12:45:00編碼為“0xC079124500”。
TDT信號的特點、意義和應用效果
數字視頻廣播業務信息(SI)數據,幫助用戶從碼流中選擇業務和/或事件的信息,使綜合接收解碼器(IRD,或者是大眾用的機頂盒)從碼流中自動提取和處理有關的數據,復現聲音和圖像。在《數字視頻廣播中文業務信息規範》GY/Z 174-2001中,時間和日期表TDT為強制規定,還有一個時間偏移表(TOT)則為可選規定。接收端可直接使用TDT作為顯示或實時控制,中間環節也可將其替換成另一個TDT碼組。
在中央電視台和青島有線網路中心,標準時間經同步器和編碼器導入到ASI流,再經衛星或有線網路到衛星機頂盒或有線機頂盒,標準時間導出后可在圖像里或機頂盒面板上顯示,也引出端子作更多用途,給用戶提供了很大方便。時間和日期表(TDT)是這樣規定的,它僅傳送UTC時間和日期信息,只包含一個段,語法結構見表1。傳輸此表的TS包的PID值為0x0014,table_id為0x70。
TDT信號的導入和導出架構及其測試數據
在數字視頻廣播高達270Mbps的ASI碼流中,TDT信號所佔空間遠不到萬分之一,要捕獲它須用大容量的高速數字處理晶元和相關的軟體,單獨的TDT信號產生和TDT信號解碼設備比較罕見,一般是作為主信號(圖像和聲音)的編解碼設備的復用功能而存在。經我們反覆對比,在多節目傳送時,TDT信號在下游的復用器插入比較合適,再經調製傳輸和解調解碼,取出TDT信號.全過程的基本架構如圖1所示。主要分導入、導出、測試三個部分,均涉及到軟硬體創新開發,敘述如下。
(1)TDT信號的導入
可產生TDT信號的數字視頻設備不少,但很少設置有單獨的標準時間信號的導入介面。經多次實驗,確認這些數字視頻設備附帶的時間信息大多來自其操作系統或者說是CPU主板上的時鐘電路,而該時鐘電路的時間日期信息通常是用人手按鍵盤輸入的,並且自運行積累誤差較大。國外有一種校準CPU主板上時鐘時間的設備,使用不方便,並且每台設備一對一配置,不能共用。
我們設計了新的時碼變換和分配器,根據CCTV中心機房主控時鐘同步產生串列時間碼,分成24路RS-232信號,分別輸入到總控播出前端壓縮系統的網管伺服器中。設計了讀串口校準CPU主板時鐘時間的軟體,由於復用器的時鐘鎖定於網管(MEM)的伺服器的時鐘,復用器發出的TDT信號的時間和標準時間就一致了。在復用器中,我們將TDT的發表周期設置為20秒,國內各上星節目中大多也設置為20秒,還有少數省級台設置為30秒、15秒。
在節目出口數較少的數字視頻廣播環境中,TDT信號的時間同步就不那麼複雜。在QCN青島有線網路中心,ST3100H型GPS同步主鍾直接將標準時間用RS-232接到EPG伺服器,通過該伺服器將TDT的發表周期設置為5秒鐘重複發7次,這樣在機頂盒剛開機的時候,機頂盒面板和瀏覽畫面上的不確切時間顯示會立即更新為標準時間。 (2)TDT信號的導出
在數字視頻廣播中,設備的操作系統把TDT表與電子節目指南EPG等有機地連接,為用戶提供豐富多彩的應用,其TDT信號是在內部導出應用的,涉及的方面比較多、比較系統化,一般由為數不多的大系統集成商完成。
在有線電視機頂盒的設計過程中,青島有線網路中心最先聯合GNI、HISENSE、HAIER把TDT信號應用實用化,在瀏覽狀態和關機狀態,控制軟體自動把TDT解析出來顯示在電視屏幕上或機頂盒前面板上,這種設計為國內眾多機頂盒廠商起了引領的作用。
把TDT信號從下游設備中解析出來送到外部,將提供更加靈活多樣的應用。同時,這才有可能對該信號進行測試。在反覆考察比較了各種整機結構和解碼晶元后,我們對機頂盒常用的STi5518系列晶元進行了開發,在此平台上,完成TDT的數據提取和解析過程,利用C編程設計,藉助晶元自帶的串口,成功地將TDT信號解析出來按指定的串口格式予以輸出。整個終端的工作原理主要是兩部分:一是TDT數據的提取和解析過程:二是將解析后的TDT數據通過串口輸出。TDT數據的提取相對比較簡單,可以在程序里建立一個實時的任務,一直提取TDT,參照TDT的語法結構如下,其中,TS包的PID為0x14,table_id為0x70,UTC_time為40位的時間信息,它按照UTC和MJD包含了當前的時間和日期。這個欄位編碼為16bit,給出了MJD的16LSB,其後24bit以4b二進位BCD碼編碼為6個數字。協調世界時UTC與修正儒略日MJD之間有一定的轉化方式,從MJD中計算UTC的方法如下:
而時間的計算則需要根據MJD時間加上本地偏移。例如北京時間,需要加上東八區的偏移,這樣獲得的時間就是本地實際的時間。
第二部分的工作,就是將計算的TDT時間,通過串口送出。串口在現有機頂盒中,十分常見。而通過機頂盒串口輸出TDT數據也變得十分方便。
為了將現有TDT數據作為一個整體傳到外部,建立一個結構體如下:
TDT[MPEG-2傳送流中的時間與日期表]
TDT[MPEG-2傳送流中的時間與日期表]
通過設置簡單的串口協議,可以提高傳輸準確性。我們先後開發了帶TDT解碼輸出的有線電視機頂盒和衛星電視機頂盒,立即用其測試了大量數據。
(3)TDT信號的測試
雖然,帶TDT解碼輸出的有線電視機頂盒和衛星電視機頂盒代表了終端的實際使用狀態,但它們的來源都是調製以後的信號,我們還希望看到調製之前即ASI流中的TDT信號。可是正如前面提到的,至少在當時,從ASI流中直接解析TDT信號所需要的冷門集成電路很長時間未能湊齊。我們仔細分析了整個播出鏈路,其中調製解調過程可認為是硬體實時、時延固定的,於是我們把ASI信號送進CCTV中心機房的衛星電視調製器,然後從衛星電視調製器輸出再接帶TDT解碼輸出的衛星電視機頂盒,這樣,TDT解碼輸出並沒有經過上天下地的衛星漂移,而與從ASI直接解出TDT的效果差別不大。
如此,我們設計的TDT信號測試框圖如圖2所示。
圖2中,E和F分別是新開發的帶TDT解碼輸出的"衛星電視機頂盒"和"有線電視機頂盒",為了排除對它們的誤判,還設置了一台"模擬機頂盒時碼"發生器D,這三者作為被測對象;"基準同步時鐘"B可保持較高精度連續運行且具有電池可移動運行,它可受"GPS時鐘"C同步或受"主控時鐘"H同步,送進"時碼識別時差測試器"A的基準輸入口;基準同步時鐘B還有一路同樣的信號作為模擬被測信號可送入時碼識別時差測試器A的基準輸入口作檢驗零時差之用;時碼識別時差測試器A自動濾除重複碼而識別新秒,立即測試新秒與基準同步時鐘間的時差,時差精度為5微秒,在面板上予以顯示,同時通過RS-232口將"被測日期時間、與基準的時差、基準時間"送到微機G進行連續記錄。
如業內人士所關注的,我們對TDT探究的問題有:
①不同畫面所產生的壓縮數據量的差別是否造成TDT的抖動;
②TDT的周期及數據含義;
③TDT與導入的時間信號關係。
數據測試的數據表明:
TDT信號的傳遞,沒有受節目內容影響造成波動,其周期比較穩定;
TDT信號的周期與導入設備的性能及其設置有關,如CCTV東方物流的TDT周期約20.0007秒,而CCTV1的TDT周期約20.006秒,每次延時6毫秒,由於各碼流設備未鎖相,各行其是的結果造成了對秒周期的不等分,造成平均約50分鐘後讀秒錯位到后一秒,於是TDT的秒個位數約隔50分鐘會加1。
TDT與導入的時問信號關乎相互鎖相與否。由於各碼流設備與主板時鐘也未鎖相,ASI流與碼流設備主板的時鐘時間如同兩列并行而速度不等的的列車,TDT是非常狹窄的窗口,它看到另一個列車只能用幾號車廂來描述,而不能分辨該號車廂(即該秒)的前部、中部和尾部,即它讀到的主板的時鐘時間只能讀到秒,但並不代表該秒剛開始,也許該秒即將結束。所以,即便碼流設備主板受到外部同步,TDT的數據在發端也含有最大慢一秒的誤差。
在此基礎上,我們還進行了長時間端點測試。沒有外部同步的碼流設備的主板時鐘,其時間經TDT編碼經過傳遞,其主板時間誤差在TDT導出端得以如實反映。如測得某衛星電視信號其源端時鐘誤差為17×10-5,這即是常見的微機主板時鐘誤差。
4 TDT信號的應用前景和要注意的問題
經過實踐,我們摸清了TDT信號的規律,它導出後用途很多,在內可在圖像里或機頂盒面板上顯示,在外可引出端子作控制、顯示等用。
但也可以看到,有些播出機構對TDT表是不控制的,比如有的省級台衛視TDT日期為1997年,雖然播出時沒有用它進行控制,但因為TDT與節目流已經不可分開,即便將來讀該節目時,其原始TDT數據也會造成說不清楚的誤解。
TDT信號的深度應用前景可觀,如接收端可以通過演演算法取得10毫秒量級的精度,可以進一步開發發端設備的可控性,縮小誤差範圍,有待於更多環節的同步性、可控性研究。