基于IPP庫的MPEG-4視頻傳輸系統(tǒng)設(shè)計
2.3 視頻傳輸模塊
在壓縮視頻流通過IP網(wǎng)絡(luò)傳輸之前必須打包。由于TCP協(xié)議丟包重傳的特性增加了抖動和失真,不符合MPEG-4視頻傳輸對時延的嚴格要求,本系統(tǒng)采用UDP來傳輸,但UDP不保證可靠傳輸,接收端需要通過RTP/RTCP來檢測丟包。RTP協(xié)議提供了時間戳,序列號來控制實時數(shù)據(jù)的流放。發(fā)送端在數(shù)據(jù)包里隱蔽的設(shè)置了時間標簽,接收端依照時間標簽按照正確的速率恢復(fù)成原始的實時的數(shù)據(jù)。
2.4 視頻回放模塊
本系統(tǒng)采用FrameBuffer機制在LCD上實現(xiàn)視頻信息的顯示。FrameBuffer是一種能夠提取圖形的硬件設(shè)備,是用戶進入圖形界面很好的接口,這種接口將顯示設(shè)備抽象為幀緩沖區(qū)。用戶可以把它看作一塊內(nèi)存,只要將其映射到進程地址空間,就可以直接進行讀寫操作,而寫操作可以立即反應(yīng)在屏幕上。在應(yīng)用程序中,首先打開/dev/fb0設(shè)備文件,隨后用ioctl操作取得屏幕的分辨率和bpp值,從而計算出屏幕緩沖區(qū)的大小,并將該緩沖區(qū)映射到用戶空間,最后就可直接對屏幕緩沖區(qū)進行圖片顯示。由于本系統(tǒng)所采用的LCD只支持RGB格式的視頻流,而經(jīng)MPEG4 解碼后的數(shù)據(jù)為YUV格式的,所以在顯示之前還需運用IPP函數(shù)ippiYUV420ToRGB565_8u16u_P3C3R進行YUV到RGB格式的轉(zhuǎn)換。
3 結(jié)語
本文介紹了視頻傳輸系統(tǒng)各個模塊的功能和軟件實現(xiàn),重點介紹了基于IPP的MPEG-4編解碼模塊。從實際效果來看,在 XScale PXA270中利用IPP庫編解碼后的編碼速率比未用IPP庫提高了70%~90%,大大提高了實時性。本文的研究成果可以在視頻監(jiān)控,多媒體會議等很多領(lǐng)域得到更廣泛的應(yīng)用。
本文作者創(chuàng)新點:在基于Intel Xscale構(gòu)架的PXA270嵌入式設(shè)備上,使用IPP為MPEG-4編解碼編寫的底層API函數(shù)對視頻傳輸系統(tǒng)程序結(jié)構(gòu)進行重組并優(yōu)化,對IPP的語法規(guī)則和其中的關(guān)鍵算法給出了解釋。經(jīng)優(yōu)化后的系統(tǒng)傳輸效率和圖象質(zhì)量明顯提高。
參考文獻:
[1]Intel Integrated Performance Primitives on Intel Personal Internet Client Architecture Processors Reference Manual Version 5.0 [S].Intel.com ,2005
[2]求是科技.Visual C++音視頻編解碼技術(shù)及實踐[M].人民郵電出版社,2006
[3]洪艷偉,楊斌.嵌入式手持設(shè)備及其基于IPP的優(yōu)化. [J].《微計算機信息》,2007,2-2:23
[4]Iain E.G.Richardson 著 歐陽合 韓軍譯. H.264和MPEG-4視頻壓縮[M].國防科技大學(xué)出版社,2004
[5]鄭靈翔等.嵌入式系統(tǒng)設(shè)計與應(yīng)用開發(fā)[M].北京航天航空大學(xué)出版社,2006
評論