引言
傳統(tǒng)的模擬視頻接口有復合視頻信號(CVBS、A/V),S端子(Y/C、S-Video),模擬分量視頻信號(Y、U、V或Y、R-Y、B-Y)和通用 D-SUB( 9芯)端口等。隨著人們對圖像顯示質量要求的不斷提升,在視頻監(jiān)控方面用模擬接口來傳輸和顯示監(jiān)控的視頻已經(jīng)不能滿足人們的要求。以高清數(shù)字電視為代表的數(shù)字視頻設備的應用越來越普遍,模擬視頻接口標準更加無法適應在帶寬、內容保護、音頻支持等方面的發(fā)展需求,這就使得數(shù)字視頻接口標準更能適應市場的需求。HDMI(High-Definition Multimedia Interface)是數(shù)字視頻接口中的一種接口標準,由于其具有單一線纜上能同時傳輸音視頻、帶寬高和 HDCP加密等優(yōu)點,所以此接口在多媒體數(shù)字產(chǎn)品中得到了廣泛的應用[1]。在嵌入式視頻監(jiān)控系統(tǒng)中加入 HDMI接口,可在帶 HDMI接收端的監(jiān)控終端清楚地看到監(jiān)控場景,進而擴展了視頻監(jiān)控的應用場所。
1. HDMI技術及其基本傳輸原理
1.1 HDMI技術簡介 HDMI是首個支持在單線纜上傳輸,不經(jīng)過壓縮的全數(shù)字高清晰度、多聲道音頻和智能格式與控制命令數(shù)據(jù)的數(shù)字接口,由 Silicon Image倡導,聯(lián)合索尼、東芝等八家著名的消費類電子制造商聯(lián)合成立的工作組共同開發(fā)的。HDMI最早的接口規(guī)范是 2002年 12月公布的HDMI 1.0,目前的最高版本是2006年6月發(fā)布的HDMI 1.3。HDMI通過一條HDMI纜線可以提供所有的音視頻源與音視頻終端之間的連接,實現(xiàn)視頻源和顯示終端的雙向通信,在保持高品質的情況下能夠以數(shù)碼形式傳輸未經(jīng)壓縮的高分辨力視頻和多聲道音頻數(shù)據(jù),還可搭配寬帶數(shù)字內容保護HDCP(High-band with Digital Content Protection)。新發(fā)布的HDMI
1.3[2]支持的帶寬更高,還增加了 Deep Color技術,支持 xvYCC色彩標準、唇型同步、新型無損音頻格式 Dolby TrueHD和 DTS-HD Master Audio等。
1.2 HDMI基本傳輸原理
HDMI系統(tǒng)結構由 HDMI源(發(fā)送端)和 HDMI宿(接收端)組成,其傳輸結構圖如圖 1所示,HDMI傳輸線包括三個不同的 TMDS數(shù)據(jù)信息通道和一個時鐘通道,這些通道用來傳輸音視頻數(shù)據(jù)及附加信息,音視頻數(shù)據(jù)和附加信息通過三個不同的 TMDS通道傳送到接收端上,而視頻的像素時鐘則通過 TMDS時鐘通道傳送,接收端接受這個頻率參數(shù)之后,再還原另外三個數(shù)據(jù)信息通道傳遞過來的信息。DDC通道用來在發(fā)送端和接收端之間進行配置以及狀態(tài)信息交換??蛇x的CEC通道用來提供用戶環(huán)境中各種不同的音視頻產(chǎn)品之間的高層控制功能,例如自動設定的細節(jié)、單鍵播放或是遙控。
圖2 ANX9030 內部功能結構圖
ANX9030基于 Wide Eye信號恢復技術,能夠提供高性能的傳輸能力,其功能模塊主要有音視頻數(shù)據(jù)捕獲、I2C從接口、像素格式處理和 TMDS發(fā)送等。其中視頻處理模塊最高可支持 24位,整個處理頻寬接近4Gb/s;音頻數(shù)據(jù)捕獲模塊支持 8通道共 24位高精度數(shù)字音頻輸出,提供 I2S和 S/PDIF標準輸出接口;像素格式處理模塊支持 RGB數(shù)字色度分量 4:4:4格式與多種模式 YCbCr數(shù)字色差分量 4:2:2之間的轉換,支持 HDTV和 PC(最高支持
利用 EP9302的外圍集成接口可大大簡化接口電路的設計。EP9302與 ANX9030的連接包括控制部分、視頻部分和音頻部分等??刂撇糠钟糜?EP9302對 ANX9030進行訪問控制,如寄存器設置,ANX9030向 EP9302發(fā)送中斷控制信號,其訪問方式可通過 I2C控制線進行;視頻部分用于 EP9302將采集處理后的視頻數(shù)據(jù)以及相應的同步、時鐘等信號發(fā)送給ANX9030,本文采用 16位的 YCBCr 4:2:2方式進行連接;音頻部分用于 EP9302將音頻數(shù)據(jù)發(fā)送給ANX9030,其連接方式采用I2S。
3.驅動軟件實現(xiàn)
軟件設計包括音視頻源的軟件設計和 HDMI發(fā)送控制器 ANX9030的驅動設計。由于在EP9302微處理器的開發(fā)板上已完成了音視頻的采集和輸出設計,所以本文的軟件設計主要是 HDMI控制器的驅動設計。利用開源的 ANX9030固件程序可簡化驅動程序的開發(fā),主要包括 ANX9030的初始化處理、狀態(tài)機變化、音視頻模式的設置及異常處理等。主循環(huán)程序如下:
void main(void){
Init_ANX9030();
while(1){ANX9030_Interrupt_Process();
ANX9030_Timer_Process ();
}}
ANX9030的工作模式及初始化流程如圖4所示:
ANX9030的初始化。在 ANX9030復位電路的上升沿,DEV_ADDR_SEL引腳的狀態(tài)決定ANX9030的 I2C地址。假定此引腳為低,I2C地址為 0x72和 0x7A被選擇。首先確認 ANX9030存在且能正常工作,部分代碼如下:
while (1) {
ANX9030_Resetn_Pin = 0;
delay_ms(2);
ANX9030_Resetn_Pin = 1;
delay_ms(2);
c = ANX9030_i2c_read_p0_reg(ANX9030_DEV_IDL_REG, &c1);
if ((c == 0) && (c1 == 0x30)) {
c = ANX9030_i2c_read_p0_reg(ANX9030_DEV_IDH_REG, &c1);
if((c == 0) && (c1 == 0x90))
break;
}}
ANX9030在上電復位后,設置 DE_GEN和 BT_656同步信號檢測,然后進行像素格式和時鐘路徑的設置來配置視頻信息。由于 HDMI兼容DVI,所以發(fā)送端可工作在 HDMI模式或 DVI模式,在此只需對 ANX9030的 HDMI_MODE位設置為 1(HDMI)或0(DVI)即可。檢測到 HDMI模式后,設置 HDMI的音頻格式及數(shù)據(jù)包,沒有異常中斷時,使能數(shù)據(jù)包發(fā)送即可把音視頻數(shù)據(jù)包等信息發(fā)送出去,發(fā)送成功后返回。
除了像素時鐘檢測(CKDT)和熱插拔檢測(HPDT)功能外,ANX9030的大部分功能都處于待機狀態(tài),軟件需要正確的配置其他寄存器,這些寄存器的詳細配置可參考 ANX9030的芯片資料。
ANX9030的異常處理。由于 ANX9030提供了 16個中斷觸發(fā)源,包括軟件觸發(fā)中斷、檢測到顯示器中斷、接收端上電/斷電檢測中斷、S/PDIF輸入丟包中斷及 CTS變化中斷等,所以源端主控制器需要一個中斷來管理 ANX9030所發(fā)出的中斷。一般只需要熱拔插檢測、RI_128連接完整性檢測及音頻 FIFO溢出、CTS變化等中斷即可。本設計利用 EP9302的中斷引腳 INT0來捕獲 ANX9030引發(fā)的中斷,然后進行相應的中斷處理。
4.結束語
HDMI是針對下一代多媒體影音設備所開發(fā)的傳輸接口,適用于數(shù)字電視、DVD播放機、DVD錄放機、PVR、機頂盒及其他數(shù)字視聽產(chǎn)品,現(xiàn)在已廣泛應用于 PC機及平板顯示器等消費類電子產(chǎn)品上。本文詳細說明了 HDMI接口原理、源接口芯片特點、接口電路設計及在 ARM9嵌入式平臺上系統(tǒng)軟件的實現(xiàn)方法,該系統(tǒng)可用于安防監(jiān)控和高清晰視頻會議等領域。
本文作者創(chuàng)新觀念:把高清多媒體接口 HDMI應用到視頻監(jiān)控系統(tǒng)中,和一般監(jiān)控系統(tǒng)相比,具有監(jiān)控場景更加清晰和使用靈活等優(yōu)點。