數字機頂盒字幕解碼顯示系統設計一
區域分段(region composition)。用于定義該區域的寬高、水平垂直位置、所使用的CLUT 表的CLUT_id值、對象的id、區域背景色以及像素深度等信息。
CLUT 分段(CLUT definition)。用于定義顏色,以便把傳輸的虛顏色轉換成實際色板中的顏色。
對象數據分段(object data)。用于定義對象的編碼方法和編碼數據。編碼方法包括像素編碼和字符編碼。每一個對象可以看作是一個可顯示的圖像單元。
每一頁數據的完整顯示都至少需要這四個數據分段,所以在解析字幕流時,需要利用各種結構體及鏈表對這幾個數據段數據進行解析并存儲。
在STB 上實現字幕接收和顯示主要包括四大模塊:數據提取模塊、數據解碼模塊、圖層顯示模塊和用戶控制模塊。各模塊關系如圖2 所示。
圖中,用戶控制模塊用于響應用戶按鍵,并發送消息控制其它各模塊;數據提取模塊根據接收控制模塊發來的濾波啟動、停止或提取字幕數據等控制消息,并完成數據的提取工作;數據解碼模塊負責對數據提取模塊送來的字幕原始數據進行解碼,并將解碼后的數據送到指定的緩沖區內供圖層顯示模塊調用;圖層顯示模塊用于實現字幕界面的各種OSD 顯示操作。
圖2 字幕系統模塊關系圖。
評論