基于TMS320DM642和H.264的網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)設(shè)計(jì)
摘要:文中給出了一種基于TMS320DM642和H.264的網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)的設(shè)計(jì)方案,并對(duì)其主要硬件TMS320DM642和H.264編碼器進(jìn)行了詳細(xì)描述,論述了編碼器優(yōu)化的基礎(chǔ)上,同時(shí)給出了H.264編碼碼流的網(wǎng)絡(luò)傳輸方法。實(shí)驗(yàn)結(jié)果證明,利用這個(gè)方案所設(shè)計(jì)的硬件平臺(tái)和軟件,可以實(shí)現(xiàn)H.264編碼碼流的網(wǎng)絡(luò)實(shí)時(shí)傳輸。
關(guān)鍵字:TMS320DM642;實(shí)時(shí)傳輸控制協(xié)議;RFC3984;H.264
0 引言
隨著英特網(wǎng)的普及,人們可以從網(wǎng)絡(luò)上得到的信息越來(lái)越多。以前,人們只能得到文字和一些簡(jiǎn)單的圖形信息,能夠得到的視頻信息是很少的。造成這種現(xiàn)象的主要原因是視頻信息的數(shù)據(jù)量是非常巨大的,如果想傳輸它,就必須有很大的網(wǎng)絡(luò)帶寬,而如此大的網(wǎng)絡(luò)帶寬在現(xiàn)實(shí)中是需要耗費(fèi)巨大的成本才能完成的。視頻的編碼標(biāo)準(zhǔn)就是在這個(gè)前提下被提出來(lái)的。
視頻編碼技術(shù)到現(xiàn)在為止已發(fā)展了很多年了,各種研究機(jī)構(gòu)和標(biāo)準(zhǔn)化組織也已經(jīng)提出了很多解決辦法,但到現(xiàn)在為止視頻編碼的標(biāo)準(zhǔn)主要分為兩大類:一類是國(guó)際標(biāo)準(zhǔn)化組織和國(guó)際電工委員會(huì)第一聯(lián)合技術(shù)組制定的MPEG系列標(biāo)準(zhǔn);另一類是ITU針對(duì)多媒體通信制定的H.26x系列視頻編碼標(biāo)準(zhǔn)。H.264只是視頻編碼標(biāo)準(zhǔn),它對(duì)音頻方面沒(méi)有任何的規(guī)定,但是它的壓縮效率高、圖像質(zhì)量好并且傳輸碼率很低,所以它非常適合于視頻的網(wǎng)絡(luò)傳輸。
在本文中,首先描述的是設(shè)計(jì)的硬件系統(tǒng),它是H.264算法和網(wǎng)絡(luò)協(xié)議對(duì)應(yīng)的C代碼運(yùn)行的平臺(tái)。核心器件是TMS320 DM642,它是TI公司專門針對(duì)多媒體傳輸或網(wǎng)絡(luò)視頻的監(jiān)控設(shè)計(jì)并生產(chǎn)的一款DSP芯片。在此硬件平臺(tái)下對(duì)于EDMA和網(wǎng)絡(luò)接口的高效使用是極其重要的;其次描述的是H.264編碼器的優(yōu)化。由于H.264算法是極其復(fù)雜的,所以要實(shí)現(xiàn)視頻編碼的實(shí)時(shí)性也就成為一件難事。因此,就必須對(duì)代碼進(jìn)行優(yōu)化,以達(dá)到視頻序列能夠在網(wǎng)絡(luò)中實(shí)時(shí)傳輸?shù)哪康模蛔詈竺枋龅氖荋.264編碼碼流的網(wǎng)絡(luò)傳輸。在此部分主要介紹H.264編碼器中的NAL層和RTP傳輸層的對(duì)接,將NAL層的數(shù)據(jù)按照RFC3984協(xié)議的規(guī)定對(duì)數(shù)據(jù)進(jìn)行打包。
1 硬件平臺(tái)
視頻監(jiān)控系統(tǒng)的硬件是H.264算法和網(wǎng)絡(luò)傳輸協(xié)議運(yùn)行的基本硬件平臺(tái),圖1所示為本系統(tǒng)設(shè)計(jì)的硬件系統(tǒng)框圖。
設(shè)計(jì)中用到的RTP協(xié)議是主要針對(duì)于H.264編碼碼流進(jìn)行處理的RFC3984協(xié)議。至于UDP和IP,由于,TI提供的各種類型的DSP套件是支持Socket套接字的,所以,在得到RTP層的打包數(shù)據(jù)后,就可以直接利用套接字對(duì)RTP層以后的數(shù)據(jù)流進(jìn)行處理。
系統(tǒng)中的TMS320DM642是TI公司C6000系列DSP,它的處理核心是C64x型的高性能數(shù)字信號(hào)處理器,具有極強(qiáng)的處理性能,這里用的DSP的核心頻率是600Mhz。它在使用時(shí)具有高度的靈活性和可編程性,而且外圍集成了非常完整的音頻、視頻和網(wǎng)絡(luò)通信等設(shè)備及接口,特別適用于網(wǎng)絡(luò)視頻監(jiān)控、數(shù)字廣播以及基于數(shù)字視頻/圖像處理的消費(fèi)類電子產(chǎn)品等高速DSP應(yīng)用領(lǐng)域。本系統(tǒng)中用到的外圍接口主要有:視頻接口、存儲(chǔ)器接口、網(wǎng)絡(luò)接口和串口。
圖像A/D轉(zhuǎn)換芯片用的是SAA7115,它負(fù)責(zé)將模擬視頻信號(hào)轉(zhuǎn)換成為數(shù)字視頻信號(hào)。NORFLASH用的是spansion公司的Am29LV033C,它的作用是負(fù)責(zé)永久性的存儲(chǔ)完成H.264編碼算法和網(wǎng)絡(luò)傳輸協(xié)議的C代碼。在硬件系統(tǒng)剛剛上電啟動(dòng)時(shí),NOR FALSH中引導(dǎo)程序先被加載到DSP內(nèi),然后,引導(dǎo)程序被執(zhí)行,引導(dǎo)程序會(huì)將應(yīng)用程序加載到SDRAM中,最后,應(yīng)用程序會(huì)在SDRAM中被執(zhí)行。SDRAM用的是三星的HY57V28162 0E,它的作用主要有兩個(gè):一是存儲(chǔ)要執(zhí)行的應(yīng)用程序,二是臨時(shí)存儲(chǔ)要被處理的圖像數(shù)據(jù)。串口在這里主要是輔助調(diào)試用的。EMAC接口是非常重要的,它是傳輸已經(jīng)處理的H.264編碼碼流的,這里用的是intel公司研發(fā)的LXT971A。
評(píng)論