999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Linux系統(tǒng)中H.264編解碼器的移植與應(yīng)用

2015-04-29 00:00:00馬敬奇
科技資訊 2015年10期

摘 要: Linux系統(tǒng)因開源而被更多的企業(yè)所采用,H.264編解碼因具有高壓縮比、良好的網(wǎng)絡(luò)適應(yīng)性成為視頻編解碼技術(shù)的研究熱點。怎樣將H.264編解碼器移植到Linux系統(tǒng)上,以完成效率更高、壓縮比更高視頻編解碼技術(shù),是突破編解碼技術(shù)的關(guān)鍵。本文經(jīng)過分析H.264編解碼算法,將H.264編解碼器移植到Linux系統(tǒng)中,實現(xiàn)了H.264對視頻文件的編解碼,為嵌入式系統(tǒng)的移植奠定了基礎(chǔ)。

關(guān)鍵詞:Linux H.264編解碼 嵌入式

中圖分類號:TP368 文獻標識碼:A 文章編號:1672-3791(2015)04(a)-0000-00

作者簡介:馬敬奇(1980-) ,男,河南安陽,碩士,控制科學與工程 廣東工業(yè)大學。

一 Linux系統(tǒng)介紹

Linux極大的繼承了UNIX操作系統(tǒng),Minix系統(tǒng)、GNU計劃、POSIX標準和Internet網(wǎng)絡(luò)的發(fā)展也極大的推動其發(fā)展。Linux系統(tǒng)內(nèi)核由進程調(diào)度,文件管理,內(nèi)存管理,網(wǎng)絡(luò)接口,進程間通信組成。在Linux系統(tǒng)采取的一種樹結(jié)構(gòu)實現(xiàn)文件的管理,所有文件都是從“根”(用“/”代表)開始的,這種樹結(jié)構(gòu)具有比磁盤分區(qū)更大的靈活性。

二 H.264標準

1.H.264編碼器

H.264編碼器[1]以幀為單位進行,編碼從 開始。 為當前幀的前一幀, 即為當前幀,與編碼預測值P相減得到帶編碼的幀差 。其中的預測值P有兩種方法獲得1)幀間預測[2]模式下通過 運動補償?shù)玫剑?)在幀內(nèi)模式下由當 中已完成編碼并且重建的宏塊[3]預測得到。幀差 經(jīng)由T(DCT變換)變換器得到的數(shù)據(jù)再經(jīng)由Q(量化器)變化得到量化系數(shù)X。最后量化系數(shù)X經(jīng)由重排序、熵編碼得到完整的.264編碼流[4]。

是通過量化系數(shù)X經(jīng)過一系列變換得到的,目的是編碼后面的宏塊并且重建編碼幀,首先量化系數(shù)X經(jīng)過Q-1和T-1,得到反變換恢復值 ; 與P相加得到原始幀 , 經(jīng)過濾波獲得重建幀 。

2. H.264解碼器

從理論上講H.264的解碼是編碼的逆變換,在圖2所示的逆變換過程中,首先接受經(jīng)過H.264編碼的流文件;其次,編碼的流文件經(jīng)由熵編碼接著對熵編碼進行重排序,此時可以獲得經(jīng)過量化的數(shù)據(jù)流X(也稱作量化系數(shù));接著,逆變換還體現(xiàn)在下面的過程將得到的X進行Q-1(反量化算法)和T-1(逆DCT變換),得到反變換恢復值 ;在獲得恢復值 進入加法器之前,解碼器已從文件頭信息中變換出在編碼器端的預測值P,兩者相加得到原始幀 ,最終 經(jīng)過濾波器得到解碼幀 。

三 H.264的編譯與移植

1.H.264編碼器移植

本文選擇X264為編碼器、FFMPEG作為解碼器。通過編譯移植的x264產(chǎn)生可執(zhí)行文件壓縮源視頻文件,輸出.264文件;得到的編碼文件經(jīng)過ffmpeg解碼器還原出視頻文件。

在編譯x264之前,為了提升H.264的編碼性能,需要優(yōu)化MMX、SSE,因此首先編譯安裝yasm。

./configure –prefix=/usr/local/bin/

make

make install

編譯X264:

cd X264

./configure

修改config.mak的一些選項,如cc=linux-gcc、arch=linux,然后

make

make install

得到X264二進制可執(zhí)行文件。

ffmpeg的編譯需要一些庫文件的支持,在進行編譯之前要移植這些庫文件,例如SDL庫。

解壓縮軟件包

配置,生成Makefile

./configure --enable-shared --disable-yasm --prefix=/usr/local/ffmpeg

編譯完成后輸入make 命令進行下一步,接著輸入make install命令進行編譯,最終可編譯得到ffmpeg可執(zhí)行文件,得到的可執(zhí)行文件對 H.264文件解碼。

四 實驗結(jié)果

在Linux系統(tǒng)下進行實驗,本文所用系統(tǒng)為Ubuntu,視頻文件格式y(tǒng)uv。將test.yuv視頻文件放在可執(zhí)行文件./H.264相同的文件夾下,運行./H.264命令過程如“ test.yuv 編碼過程”所示,輸出文件compress.264。

接著將得到的文件compress.264放到解碼文件夾下,并執(zhí)行./ffmpeg命令,解碼過程如“compress.264解碼過程”所示,得到解碼文件decode.yuv。

最后通過播放器查看原視頻文件和經(jīng)過編碼、解碼得到的視頻文件,并進行對比,如圖4所示。發(fā)現(xiàn)經(jīng)過編解碼的視頻文件信息保持完好,清晰度、視頻播放的流暢性都與原視頻相差不多,基本滿足需要。

五 結(jié)論

隨著網(wǎng)路時代的進一步成熟,如何將視頻文件在網(wǎng)絡(luò)環(huán)境下穩(wěn)定、快速的傳輸是突出的問題,H.264編碼方法為視頻壓縮提供了一種新方法,實驗驗證該算法能夠完好的編碼源視頻數(shù)據(jù),并通過ffmpeg解碼,經(jīng)過解碼的視頻文件保持良好的完整性,適合視頻編碼。

參考文獻

[1] 韓守謙,裴海龍,王清陽.基于Xenomai的實時嵌入式Linux操作系統(tǒng)的構(gòu)建[J].計算機工程與設(shè)計,2011,1(32):96-99.

[2] 楊春玲,孫亞明.H.264幀內(nèi)編碼和JPEG2000對靜止圖像進行編碼的性能比較[J].中國圖像圖形學報,2006,11(3):425-429.

[3] 曹睿學,張保平,溫偉娟.基于ARM9的H.264視頻實時解碼器研究與實現(xiàn)[J].計算機測量與控制,2010,18(5):1118-1121.

[4] Yinyuan Wang,An Improved Image Edge Detection Algorithm Based on H.264 Intra Prediction [J].Intelligence Science and Information Engineering,2011:450-453.

主站蜘蛛池模板: 国产精品三级专区| 刘亦菲一区二区在线观看| 国产国拍精品视频免费看| 国产高清毛片| 一级毛片网| 亚洲欧美在线综合一区二区三区| 婷婷六月综合网| 精品自窥自偷在线看| 国产午夜福利片在线观看| 欧美日韩动态图| 亚洲最新在线| 国产成人高清精品免费| 日韩美女福利视频| 日本不卡在线视频| 亚洲精品777| 亚洲色偷偷偷鲁综合| 亚洲一区无码在线| 成人自拍视频在线观看| 婷婷亚洲最大| 72种姿势欧美久久久久大黄蕉| 国产在线高清一级毛片| 一级黄色网站在线免费看| 久久精品66| 精品自拍视频在线观看| 波多野结衣一区二区三视频 | 99视频免费观看| 成人小视频在线观看免费| 亚洲女同一区二区| 国产第一福利影院| 熟女视频91| 激情成人综合网| 国产日产欧美精品| 国产欧美日韩精品第二区| 91在线激情在线观看| 国产在线97| 免费a级毛片视频| 国产永久在线视频| 丝袜亚洲综合| 日韩精品免费一线在线观看| 东京热一区二区三区无码视频| 26uuu国产精品视频| 波多野结衣第一页| 大乳丰满人妻中文字幕日本| 免费国产高清视频| 日韩a级毛片| 情侣午夜国产在线一区无码| 成人欧美在线观看| 欧美日本不卡| 四虎在线观看视频高清无码| 国产综合另类小说色区色噜噜| 国产成人一区| 色婷婷电影网| 国内精自线i品一区202| 亚洲人成网18禁| 亚洲AV无码久久精品色欲| 日韩黄色精品| 日本欧美中文字幕精品亚洲| 亚洲精品视频在线观看视频| 欧洲成人免费视频| 日韩黄色精品| 国产成人精品三级| 91欧美在线| 久久伊人久久亚洲综合| 久久精品中文字幕少妇| 日韩午夜伦| 成人福利在线视频| 思思热在线视频精品| 狼友视频一区二区三区| 亚洲免费人成影院| 成人一区在线| 一本色道久久88| 国产精品黄色片| 99伊人精品| 国产日韩欧美成人| 精品成人一区二区| 欧美激情视频一区二区三区免费| 99免费在线观看视频| 欧美第九页| 四虎在线观看视频高清无码| 亚洲免费毛片| 欧美不卡视频一区发布| 国产精品深爱在线|