《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 基于TMS320DM642和H.264的網絡視頻監控系統設計
基于TMS320DM642和H.264的網絡視頻監控系統設計
李 鵬,胡 波 西安電子科技大學
摘要: 文中給出了一種基于TMS320DM642和H.264的網絡視頻監控系統的設計方案,并對其主要硬件TMS320DM642和H.264編碼器進行了詳細描述,論述了編碼器優化的基礎上,同時給出了H.264編碼碼流的網絡傳輸方法。實驗結果證明,利用這個方案所設計的硬件平臺和軟件,可以實現H.264編碼碼流的網絡實時傳輸。
Abstract:
Key words :

0 引言
    隨著英特網的普及,人們可以從網絡上得到的信息越來越多。以前,人們只能得到文字和一些簡單的圖形信息,能夠得到的視頻信息是很少的。造成這種現象的主要原因是視頻信息的數據量是非常巨大的,如果想傳輸它,就必須有很大的網絡帶寬,而如此大的網絡帶寬在現實中是需要耗費巨大的成本才能完成的。視頻的編碼標準就是在這個前提下被提出來的。
    視頻編碼技術到現在為止已發展了很多年了,各種研究機構和標準化組織也已經提出了很多解決辦法,但到現在為止視頻編碼的標準主要分為兩大類:一類是國際標準化組織和國際電工委員會第一聯合技術組制定的MPEG系列標準;另一類是ITU針對多媒體通信制定的H.26x系列視頻編碼標準。H.264只是視頻編碼標準,它對音頻方面沒有任何的規定,但是它的壓縮效率高、圖像質量好并且傳輸碼率很低,所以它非常適合于視頻的網絡傳輸。
    在本文中,首先描述的是設計的硬件系統,它是H.264算法和網絡協議對應的C代碼運行的平臺。核心器件是TMS320 DM642,它是TI公司專門針對多媒體傳輸或網絡視頻的監控設計并生產的一款DSP芯片。在此硬件平臺下對于EDMA和網絡接口的高效使用是極其重要的;其次描述的是H.264編碼器的優化。由于H.264算法是極其復雜的,所以要實現視頻編碼的實時性也就成為一件難事。因此,就必須對代碼進行優化,以達到視頻序列能夠在網絡中實時傳輸的目的;最后描述的是H.264編碼碼流的網絡傳輸。在此部分主要介紹H.264編碼器中的NAL層和RTP傳輸層的對接,將NAL層的數據按照RFC3984協議的規定對數據進行打包。

1 硬件平臺
    視頻監控系統的硬件是H.264算法和網絡傳輸協議運行的基本硬件平臺,圖1所示為本系統設計的硬件系統框圖。

a.JPG


    設計中用到的RTP協議是主要針對于H.264編碼碼流進行處理的RFC3984協議。至于UDP和IP,由于,TI提供的各種類型的DSP套件是支持Socket套接字的,所以,在得到RTP層的打包數據后,就可以直接利用套接字對RTP層以后的數據流進行處理。
    系統中的TMS320DM642是TI公司C6000系列DSP,它的處理核心是C64x型的高性能數字信號處理器,具有極強的處理性能,這里用的DSP的核心頻率是600Mhz。它在使用時具有高度的靈活性和可編程性,而且外圍集成了非常完整的音頻、視頻和網絡通信等設備及接口,特別適用于網絡視頻監控、數字廣播以及基于數字視頻/圖像處理的消費類電子產品等高速DSP應用領域。本系統中用到的外圍接口主要有:視頻接口、存儲器接口、網絡接口和串口。
    圖像A/D轉換芯片用的是SAA7115,它負責將模擬視頻信號轉換成為數字視頻信號。NORFLASH用的是spansion公司的Am29LV033C,它的作用是負責永久性的存儲完成H.264編碼算法和網絡傳輸協議的C代碼。在硬件系統剛剛上電啟動時,NOR FALSH中引導程序先被加載到DSP內,然后,引導程序被執行,引導程序會將應用程序加載到SDRAM中,最后,應用程序會在SDRAM中被執行。SDRAM用的是三星的HY57V28162 0E,它的作用主要有兩個:一是存儲要執行的應用程序,二是臨時存儲要被處理的圖像數據。串口在這里主要是輔助調試用的。EMAC接口是非常重要的,它是傳輸已經處理的H.264編碼碼流的,這里用的是intel公司研發的LXT971A。
    硬件系統的工作過程如下:首先是模擬COMS攝像頭采集PAL制式的模擬視頻信號。然后圖像A/D轉換芯片SAA7115HL會將模擬視頻信號轉換成數字視頻信號并傳輸給TMS320DM642。TMS320DM642中的EDMA控制器會先將從A/D轉換器得到的視頻圖像存儲到SDRAM中,等到TMS320DM6 42處理器已經準備好處理圖像的時候,再從SDRAM中將圖像取出來進行H.264格式的編碼壓縮。編碼完成之后,會得到H.264的編碼碼流,這個時候,再利用RTP/UDP/IP的協議棧將H.264的編碼碼流進行逐層打包并通過EMAC接口發送到因特網上。

2 H.264編碼器的優化
    H.264的編碼器是非常復雜的,所以,當我們用C代碼實現其功能的時候,往往會面臨實時性的問題,即處理器無法在1s內完成所要求的數據處理量。為了使視頻遠端顯示連續,必需使處理器在1s內能夠壓縮編碼并通過網絡傳輸20幀以上的圖像。但是,在寫出第一版代碼時,會發現處理器根本就無法達到要求,在1s鐘之內,它只能處理5-6幀的圖像,因此就必須對編碼器進行優化,以求能夠達到實時性。
    一般來說,如果在DSP中實現H.264的編碼器優化,那么優化過程主要分為四個階段,分別是算法優化、C代碼優化、線性匯編的優化、CCS編譯器下的選項優化,它們被順序的完成。在DSP中實現H.264編碼器的優化過程見圖2。

b.JPG


    H.264的編碼算法主要有:幀內預測編碼、幀間預測編碼、DCT變換和量化、熵編碼,其中最消耗時間的是幀間預測編碼,它用的時間要占到整套算法運行時間80%左右,因此,幀間預測編碼算法的優化也就成為H.264編碼器算法優化的重點。
    實現編碼器C代碼的優化,主要是注意在寫C代碼的時候要寫出高效簡潔的代碼,使在能夠保持算法基本功能的前提下,占用的處理器運算資源最少。如果C代碼級優化完了之后,還不能滿足實時性,就必須用到線性匯編的優化。線性匯編代碼是對影響速度的關鍵C代碼進行重寫。線性匯編代碼與C6000的匯編代碼類似,不同的是線性匯編代碼并不用像匯編代碼那樣要給出所有的信息,它可以對這些信息進行一些選擇,也可以由匯編優化器確定,如指令使用的寄存器,指令使用的功能單元等,匯編優化器會根據代碼的情況確定這些信息,并產生匯編文件。
    在優化過程中,一般都會借助于編譯器自帶的優化功能進行優化。CCS中有優化選項,來幫助我們對代碼進行進一步的優化。優化選項共有四個:o0、o1、o2、o3。o0級別的優化內容有:簡化控制流圖、分配變量到寄存器、進行循環旋轉、刪除未使用的代碼、簡化表達式和代碼;o1級別的優化除了包括o0的內容外還有:執行局部復制/常量傳遞、刪除未使用的賦值語句、刪除局部共有表達式:o2級別的優化除了包括o1的內容外還有:進行軟件流水、進行循環優化、刪除全局共有子表達式、刪除全局未使用的賦值語句、把循環中對數組的引用轉變為遞增的指針形式、進行循環展開;o3級別的優化除了包括o2的內容外還有:刪除未使用的所有函數、內聯小的函數、重新對函數聲明進行排序、識別文件變量的特征。

3 H.264編碼碼流的網絡傳輸設計
3.1 H.264編碼器NAL層和VCL層的分離
    在H.264的編碼中,網絡抽象層和視頻編碼層是分開的。H.264編碼器NAL和VCL的分層結構如圖3。視頻編碼層負責視頻序列的壓縮編碼,網絡抽象層負責使H.264的編碼碼流能夠適應各種網路。這種分層結構可以使設計出來的系統即擁有高效率的編碼特性又擁有良好的網絡適應性。

c.JPG


3.2 RFC3984協議的包頭格式及使用
    圖4為RTP固定頭字段格式,具體描述如下:

d.JPG


    版本V:2 bits此處的值為2.
    填充標識P:1 bit
    如果在分組的末尾包含填充字節,那么此處的值為1,注意,填充并不是有效載荷的內容。
    貢獻源(CSRC)數目CC:4 bits
    標識位M:1 bit
    標識位可以用來表示特定層面的某些重要事件。
    載荷類型PT:7bits
    不同的音視頻編碼標準對應不同的音視頻編碼標準,有些已經被完全規定好了,例如G.723音頻的RTP載荷類型定義為4,H.263定義為34。對于H.264的RTP載荷媒體類型,目前還沒有規定,可以根據需要自行定義。表1描述了媒體類型各種載荷類型。

e.JPG


    序號:16 bits
    每發送一個RTP數據分組,序號加1。接收者可以用它來檢測分組丟失和恢復分組順序。
    時間戳:32 bits
    時間戳反映了RTP數據分組中第一個字節的采樣時間。采樣時間必須來源于一個單調線性增長的時鐘。
    同步源SSRC:32 bits
    同步源應隨機選擇,但要確保同一個RTP會話中的唯一性。如果一個源改變了源傳輸地址,必須選擇一個新的SSRC標志符。

4 結束語
    本文首先給出了用于運行H.264算法和網絡協議的硬件平臺,然后介紹了H.264的優化方法,最后在研究了RTP協議RFC3984的基礎上介紹了H.264編碼碼流的網絡傳輸方法。總之,本文主要就是完成H.264編碼碼流的實時網絡傳輸。由于時間和精力有限,只是用到了RTP協議,為了提高可靠性。還可加入RTCP協議,使其能夠得到更好的服務質量。另外,若在此基礎上再去研究速率控制和差錯控制方法,并應用于本系統,可以進一步提高視頻顯示質量。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 国产第3页| 成年人网站在线观看免费 | 亚洲综合精品一二三区在线 | 亚洲日本三级 | 午夜久久精品 | 曰韩色视频 | 日韩国产午夜一区二区三区 | 国产v欧美v日本v精品 | 色激情综合 | 日本三级免费网站 | 天天操夜夜操免费视频 | a一级毛片免费高清在线 | 91免费视频软件 | 色就色欧美| 亚洲成在人天堂在线 | 日韩欧美视频在线 | 福利视频午夜 | 色avav| 欧美日韩一区二区三区免费不卡 | 久久夜靖品 | 日本国产黄色片 | 国产99r视频精品免费观看 | 色站网| 波多野结衣视频在线观看 | 91精品成人免费国产 | 欧美性精品hdvideosex | 国产综合成人观看在线 | 亚洲一级视频在线观看 | 色综合天天综合网看在线影院 | 免费看黄视频 | 天堂五月天| a天堂中文在线官网 | 波多野结衣最新 | 色在线免费观看 | 日韩中文精品亚洲第三区 | 在线免费观看亚洲 | 18女人免费毛片a级 18女人毛片水真多免费 | 免费精品精品国产欧美在线 | 国内精品视频 | 波多野结衣中文字幕在线视频 | free女厕所vedio中国 |