田 鋼,呂朝輝
(中國傳媒大學 信息工程學院,北京 100024)
基于視頻ES流私有空間傳輸業務數據的方法
田 鋼,呂朝輝
(中國傳媒大學 信息工程學院,北京 100024)
分析了視頻ES流私有空間的組成方式,提出了一種基于視頻ES流私有空間傳輸業務數據的方法。單一私有空間所能容納的數據量較小,業務數據需劃分成若干較小數據塊后再傳輸,介紹了此數據塊的數據結構。最后通過實驗模擬從視頻播出穩定性和業務數據傳輸可靠性兩方面驗證了此方法的可行性,該方法可以作為當前業務數據傳輸方法的一種補充。
業務數據;TS流;私有數據空間
如今我國數字電視產業正迅猛發展,電視機也越來越智能化,承載著越來越多的應用,更加注重與觀眾的互動性。不久的將來將實現看電視到用電視的轉變,實時天氣、彩票、股票等業務將逐步在電視機上呈現。這就要求TS流承載更多業務數據。本文提出一種基于視頻ES流私有空間傳輸業務數據的方法,可以作為當前傳輸方法的重要補充。
電視系統可以傳送的業務數據很多,大致可以分為以下3類:第1類,是廣播業務數據,通常是電視制作單位或者是電視信號提供商向所有用戶“強制”發布的信息,可以是緊急通知以及政策范圍內允許的公益或商業廣告等,在電視機上可以以滾動字幕的方式呈現;第2類是電視節目語言字幕業務數據,可以是多語種字幕,讓用戶靈活選擇觀看,在電視機畫面上有特定的顯示窗口;第3類是用戶定制業務數據,比如說實時天氣信息、彩票信息和股票信息等,可以在用戶自主打開的對話窗口中顯示。
以往研究業務數據在TS流中傳輸時,往往是新增TS包,這種方法需要修改PSI信息,改變了原始TS流的結構,新增業務時需要對系統整體進行大量的軟件升級。本文考慮到視頻序列中預留了大量私有數據空間,如果將它們組織起來可以傳輸大量業務數據,這種方法不僅可以作為原有傳輸技術的補充,可以解決業務數據傳輸空間不足的問題,而且在技術層面上也有現實意義。當業務數據是由節目制作部門直接提供的,比如說用戶可選語種的隨音字幕,同時它也和節目頻道一一對應,不需要修改PSI信息,制作部門只要將自定義數據放入ES流中,之后信號的打包和傳輸則由其他部門負責,技術層面上不需要做更改,傳輸設備不需要做軟件升級,大大減少了工作量,提高了傳輸可靠性。因為TS流和PS流在視頻序列層面是沒有差別的,所以本技術也可以用于PS流的傳輸[1-3]。
視頻ES流即視頻基本碼流,其結構組成如圖1所示。
本文所述方法利用的私有空間是圖1中私有數據(2),當前這部分對于幀率為25的視頻流,如果采用幀編碼則1 s傳送25個私有空間,如果采用場編碼則1 s傳送50個私有空間??梢钥闯觯绻麑⑦@些私有空間組織起來,可以傳送大量業務數據。

圖1 視頻ES層次解析圖
私有數據空間user_data的組成方式如表1所示。

表1 user_data的組成方式
表1中bslbf代表比特串,左位在先(bit string left bit first)。user_data_start_code是私有數據空間的起始碼,其值為0x000001B2。因為視頻序列每一部分的起始碼前綴都是0x000001,所以在user_data_start_code和23個串0之間都是私有數據,顯然私有數據中不能包含23位或多于23位的串0。
2.1 業務數據的組織方式
業務數據可以看成一個不定長度的文件,為了保證電視播放的連續性,不至于造成解碼器緩沖區擁堵,不能將一個大文件放入到一幀圖像的私有數據空間中,而應該將這個文件劃分成若干個文件塊,分別插入到視頻幀中傳輸出去,接收端解碼器再對各個文件塊處理,恢復原始文件后再做解析。此文件塊叫做data_block,本方法中data_block填充在表1中的user_data_i中,一個data_block的數據結構如表2所示。

表2 data_block數據結構
表2中bslbf代表比特串,左位在先(bit string left bit first);uimsbf代表無符號整數,最高位在先(un?signed integermost significant bit first)。
service_number為業務編號,通常在某一時段傳送的業務不止一個,當它們都要在視頻序列私有數據空間中傳輸時要采用時分復用的方式。每一個業務有固定的service_number,必要時service_number以及對應的PDI可以在PSI信息中標明。將不同業務都分割成文件塊,按一定規律間隔放入到私有數據空間中,解碼器再根據service_number分別恢復。service_number范圍為0~63。其中業務0為空業務,用于填充,將在下一小節中介紹。1~63為用戶自定義普通業務。
sequence_number為兩比特循環連續計數位,范圍為0~3,用于監測是否存在數據塊丟失。對于某一個業務的數據塊,sequence_number按傳輸順序依次循環連續編號,解碼器如果發現數據塊丟失,應當丟棄緩沖區未處理的數據,復位當前業務。
process_flag用于標識此數據塊數據是否需要處理,無需處理則賦0,需要處理則賦1。
data_count控制數據塊的大小,具體內容見下一小節。
reserved為8比特保留位,8位全1。
for循環中,one_bit為1比特填充位。reserved_bit為4比特保留位,4位全1。data_valid用于標識當前循環中的service_data_1和service_data_2是否需要處理,無需處理則賦0,需要處理則賦1。data_type用于標識當前循環中的service_data_1和service_data_2是什么類型的數據。data_type為01時代表數據為一個業務的結束,當一個業務結束時,業務塊中剩余service_data_1和service_data_2用0代替,相應data_type也應該賦予正確的值。data_type為10時代表數據為業務數據,da?ta_type為11時代表數據為一個業務的起始。ser?vice_data_1和service_data_2為有效數據。
marker_bits是全1字節,標識業務塊結束。
2.2 業務數據傳輸比特率的限定
業務數據的傳輸比特率只計算有效數據ser?vice_data_1和service_data_2。業務數據傳輸比特率由data_count限定。data_count為5 bit,最大值取值為32,顯然每幀數據最多插入64 byte有效數據,這樣避免了幀業務數據過多造成解碼器緩沖區擁堵。
一個TS流中的所有數據都取同一比特率,通常取9 600 bit/s,不難計算如果電視視頻幀率為25,場編碼,data_count此時取值為12;如果電視視頻幀率為25,幀編碼,data_count此時取值為24。
當要保證恒定業務數據傳輸比特率時,一些剩余私有空間要用上面所說的空業務塊填充??諛I務塊中,service_number為0,process_flag和data_type都應賦0值。
為了驗證此方法的可行性,筆者在實驗室環境中做了模擬驗證。
3.1 驗證過程
3.1.1 加載業務幀數據
將每一個構造好的業務幀數據data_block加載到TS流中的視頻私有空間中,圖2是使用UltraEdit軟件查看的流文件十六進制原碼,圖中顯示了地址分別為0x18,0x36CF,0x6B5E和0xE715處所插入的業務幀數據,圖中方框標示的部分為所加載的私有空間。
3.1.2 TS流的發送、傳輸、接收和處理
實際TS流經調制后由天線發送,再經中轉站、衛星等傳輸,最后由接收端接收、解調并播出。筆者在實驗室環境下,通過在兩塊TS流收發卡之間橋接調制器和解調器的方法模擬了這一實際過程。實驗中傳輸的TS流加載了業務幀數據,當接收到TS流后再由TS流解碼器解碼播出。
3.2 試驗結果
實驗通過檢測視頻播出穩定性和業務數據傳輸可靠性兩方面來驗證此方法是否可行。

圖2 業務幀數據的加載(截圖)
3.2.1 視頻播出穩定性
理論上加載了業務幀數據的TS流完全不影響TS流解碼。圖3為無業務數據TS流和加載業務數據后TS流經過同一TS流解碼器后畫面播出的對比??梢钥闯黾虞d業務數據后TS流的播放畫面清晰,與無業務數據TS流的播放畫面無異。說明視頻播出是穩定的,驗證了此方法是可行的。

圖3 加載業務數據前后TS流播出對比(截圖)
3.2.2 業務數據傳輸可靠性
筆者用UltraCompare軟件對比了傳輸前的模擬業務文件TR_file和傳輸后經解碼器解析后的模擬業務文件TR_file,兩文件大小均為1 Gbyte,對比結果為文件等同,見圖4。說明業務數據傳輸是可靠的,驗證了此方法是可行的。

圖4 傳輸前后業務文件對比(截圖)
通過前面對基于視頻ES流私有空間傳輸業務數據的方法描述和試驗驗證,不難看出此方法是可行的。此方法可以用于TS流傳輸多種業務數據,作為當前傳輸方法的一種重要補充。
[1]張東輝,李文輝.基于MPEG-4用戶數據域的視頻抗誤碼方法[J].計算機工程與應用,2006,42(23):75-77.
[2]郭躍,王宏遠.基于數據傳送帶協議的DVB-C數據廣播系統計與實現[J].電視技術,2003,27(10):30-32.
[3] 王楚欣,武愛敏.在數字電視碼流中基于ES進行靜幀黑場判斷的原理及實驗[J].有線電視技術,2009,16(10):56-59.
M ethod of Service Data Transm ission Based on Video Elementary Stream User Data Space
TIAN Gang,LüZhaohui
(Information Engineering School,Communication University of China,Beijing 100024,China)
The composition of video elementary stream user data space is analyzed in this paper,then a method of service data transmission based on video elementary stream user data space is proposed.The capacity of single user data space is limited.The service data is divided into some small data blocks before transmission.The data structure of this data block is described.Finally,the feasibility of the method is verified through simulation experiments from the video broadcasting stability and service data transmission reliability.This method can be used as a supplement of current service data transmission method.
service data;transport stream;user data space
TP941
A
?? 京
2013-10-13
【本文獻信息】田鋼,呂朝輝.基于視頻ES流私有空間傳輸業務數據的方法[J].電視技術,2014,38(10).
田 鋼(1986—),碩士生,主研數字媒體技術;
呂朝輝(1975—),博士,教授,主研計算機視覺和圖像處理。