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.

主站蜘蛛池模板: 2019国产在线| 日韩无码视频播放| 免费jjzz在在线播放国产| 青青极品在线| 日本人又色又爽的视频| 国产情精品嫩草影院88av| 91福利在线观看视频| 日韩精品无码免费一区二区三区 | av一区二区三区在线观看| 无码在线激情片| 亚洲高清中文字幕在线看不卡| 91精品在线视频观看| a级毛片在线免费观看| a毛片基地免费大全| 喷潮白浆直流在线播放| 波多野结衣一区二区三区四区视频 | 国产白浆视频| 精品人妻无码区在线视频| 91色综合综合热五月激情| 久久久精品国产SM调教网站| 丁香婷婷激情网| 伊人久久影视| 国产呦精品一区二区三区网站| 久久99国产综合精品女同| 好久久免费视频高清| 91久久性奴调教国产免费| 一边摸一边做爽的视频17国产| 久久99国产精品成人欧美| 91亚洲视频下载| 亚洲有码在线播放| 亚洲天堂网视频| 麻豆精选在线| 国产自在线播放| 色综合狠狠操| 精品无码人妻一区二区| 欧美在线综合视频| 色色中文字幕| 国产亚洲一区二区三区在线| 久久99久久无码毛片一区二区 | 免费人成又黄又爽的视频网站| 人妻中文字幕无码久久一区| 国产精品污污在线观看网站| 免费视频在线2021入口| 天天色天天综合网| 91欧美亚洲国产五月天| 精品视频一区二区三区在线播| 一本一本大道香蕉久在线播放| 日韩欧美中文亚洲高清在线| 在线观看亚洲精品福利片| 国产第八页| 国内精品久久久久久久久久影视| 91福利在线观看视频| 二级特黄绝大片免费视频大片| 国产欧美日韩专区发布| 激情午夜婷婷| 999国内精品久久免费视频| 婷婷成人综合| 激情综合图区| 国产性猛交XXXX免费看| 亚洲性日韩精品一区二区| 亚洲美女一区| 最新国产你懂的在线网址| 国产精品成人一区二区不卡| 精品久久久久久久久久久| 五月婷婷综合网| 1769国产精品免费视频| 狠狠久久综合伊人不卡| 中国国产一级毛片| 色男人的天堂久久综合| 色哟哟国产成人精品| 国产成人永久免费视频| 狠狠色婷婷丁香综合久久韩国| 欧美亚洲国产视频| 亚洲成人免费在线| 国产网站黄| 国产在线八区| 国产人成午夜免费看| 日韩精品一区二区三区中文无码| 亚欧乱色视频网站大全| 国产91视频免费| 国产精品久久久久久久久kt| 日韩在线欧美在线|