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

基于S3C6410的USB視頻壓縮、回放系統

2014-07-02 00:28:20劉仁貴胡亮兵侯成英王庭良侯鎮鋒
電視技術 2014年13期
關鍵詞:系統

劉仁貴,胡亮兵,侯成英,王庭良,侯鎮鋒

(1.西北工業大學明德學院,陜西西安710124;2.南京電子技術研究所,江蘇南京210039; 3.西安博厚電子科技有限公司,陜西西安710075)

基于S3C6410的USB視頻壓縮、回放系統

劉仁貴1,胡亮兵2,侯成英3,王庭良1,侯鎮鋒1

(1.西北工業大學明德學院,陜西西安710124;2.南京電子技術研究所,江蘇南京210039; 3.西安博厚電子科技有限公司,陜西西安710075)

闡述了在嵌入式Linux下,將市面上常見的USB攝像頭作為視頻輸入設備,將其輸出的JPEG格式圖像數據通過S3C6410內部的硬件H.264編碼器壓縮成視頻文件的方法,并基于此方法,設計了一個基于S3C6410和USB攝像頭的視頻采集、壓縮、存儲系統,采用了高級語言與匯編語言相結合的方法,在USB攝像頭每秒最快輸出15幀640×480圖像的情況下,系統整體可以達到13 f/s(幀/秒)的錄制效果。該系統具有取材方便、成本低、存儲時間長、實用性強等特點。

嵌入式系統;USB攝像頭;JPEG;H.264

JPEG作為一種圖像壓縮標準,廣泛應用于網絡、數碼等領域。目前市面上常見的USB PC Camera的輸出即為JPEG格式的圖像數據,由于JPEG的壓縮率相對較低,其圖像質量較高,但占用存儲空間較大,不適合應用于對存儲空間敏感的系統中。相對于JPEG和其他圖像、視頻壓縮標準而言,H.264標準是由視頻聯合工作組提出的新一代數字視頻編碼標準,H.264的最大特點是采用幀內壓縮和幀間壓縮,具有很高的壓縮率,在同等圖像質量的條件下,H.264的壓縮率是MPEG-2的2倍以上,是MPEG-4的1.5~2倍,因此,在同等帶寬下,H.264能提供更高的圖像質量,成為目前主流壓縮標準,廣泛應用于流媒體、安防、管道探傷等領域[1]。

本文闡述了在Linux2.6.28下,以中星微ZC0301PLH為控制器的USB PC Camera作為視頻輸入設備,利用S3C6410的JPEG硬件解碼器和H.264硬件編碼器,將攝像頭輸出的640×480大小的JPEG圖像數據解碼后再壓縮成視頻文件的方法。

1 原理概述

YUV420格式的圖像數據有兩種存儲類型,一種是打包的,即Y,U,V分量是交錯存儲,也就是將一個像素的所有分量連續存放到一起。另一種是平面的,即YUV420P。在平面的YUV420中,Y,U,V三個分量是分片存儲的,形如YYYY…UU…VV…。

S3C6410的H.264硬件編碼器要求輸入的圖像數據必須是YUV420P格式的,以ZC0301PLH為控制器的USB PCCamera輸出的是JPEG格式的圖像數據,而JPEG圖像數據不能直接送入S3C6410的H.264編碼器,因此要把JPEG圖像數據解碼并轉換成YUV420P圖像數據。這一過程可以用軟件實現,但時間開銷大,速度慢。由于S3C6410內部集成了JPEG硬件解碼器,可以將JPEG圖像數據解碼成打包的 YUV422數據,因此可以利用S3C6410內部的JPEG硬件解碼器先把USB PC Camera輸出的JPEG圖像快速解碼成打包的YUV422,然后將打包的YUV422數據轉換成平面的YUV420P數據再送入S3C6410內部的H.264硬件編碼器進行壓縮編碼,最后將壓縮后的視頻文件存入SD卡或者U盤等存儲設備,即可完成視頻的錄制工作。系統的工作流程如圖1所示。

圖1 系統流程

2 系統硬件

基于USB PC Camera的視頻壓縮系統[2]主要由USB PC Camera和S3C6410核心功能模塊組成,S3C6410核心功能模塊通過USB接口讀取圖像數據,并完成圖像數據解碼、轉換、壓縮和存儲功能,同時,PC機通過USB讀取U盤或者SD卡中的視頻文件。系統硬件原理框圖如圖2所示。

圖2 系統原理框圖

3 視頻采集

V4L2(Video For Linux Two)是Linux內核中關于音、視頻設備的內核驅動,提供給應用程序訪問音、視頻設備的通用接口,在本系統中,采用V4L2接口控制USB攝像頭[3],由于需要連續、快速采集圖像,因此使用mmap(內存映射)方式讀取攝像頭數據,這樣可以大大提高了圖像數據讀取的效率。視頻采集流程如圖3所示。

在使用V4L2前,需要正確配置內核,添加V4L2驅動[4],其配置過程如下:

內核配置完成后,保存退出,編譯并重新燒寫內核。驅動添加成功后,應用程序即可通過V4L2驅動提供的接口函數控制USB攝像頭,讀取其輸出的JPEG圖像數據,完成圖像數據的采集工作。

4 JPEG解碼

圖像數據采集完成后,即要對采集到的JPEG圖像數據解碼。圖像數據解碼由S3C6410內部的JPEG硬件解碼器完成。三星公司提供了JPEG解碼的API函數[5],通過API函數,應用程序可以方便、快速地完成JPEG圖像數據到YUV422數據的解碼。三星公司提供的JPEG解碼函數及功能如下(見圖4):

圖3 視頻采集流程圖

SsbSipJPEGDecodeInit():JPEG解碼初始化,用于初始化變量和分配內存空間;

SsbSipJPEGGetDecodeInBuf(handle,size):獲取解碼輸入緩存地址和大小,handle為SsbSipJPEGDecodeInit()函數的返回值,size為要解碼的圖像的高和寬的乘積;

SsbSipJPEGDecodeExe():執行解碼;

SsbSipJPEGGetDecodeOutBuf():獲取解碼輸出緩存內存地址;

SsbSipJPEGDecodeDeInit():釋放解碼資源。

5 YUV422到YUV420P的變換

JPEG圖像數據經過S3C6410硬件解碼器解碼后得到的是YUYV格式的YUV422數據,Y,U,V分量呈交錯排列,每兩個Y共用一組UV分量,Y,U,V分量的比例為4∶2∶2,其具體排列如圖5所示。

網絡雖然是一個虛擬世界,但網絡傳播的具體表現符合狂歡化的本質特征。人們可以通過語言文字和視覺影像兩種傳播手段來審視網絡傳播的大眾狂歡。

圖4 JPEG解碼流程圖

圖5 YUV422數據格式

YUV420并不是沒有V分量。在Y分量上,YUV420在每個像素上都保留一個Y分量,但并不是每行都取U和V分量,而是在一行只取U分量,在其緊接著的下一行只取V分量,再在下一行只取U分量,如此重復,即4∶2∶0,4∶0∶2,4∶2∶0,4∶0∶2,……,因此,統稱為YUV420。YUV420與YUV422相比,兩者Y分量的總數相同,但U、V分量,YUV420只有YUV422的一半。

YUV420P屬于YUV420,為平面的YUV420,Y,U,V分量分片存放,即先存儲所有的Y分量,然后存儲所有的U分量,再存儲所有的V分量,YUV420P的數據格式如圖6所示。

圖6 YUV420P數據格式

由上述可知,要將YUV422數據轉換成YUV420P數據,最簡單的辦法就是保留所有Y分量,隔行抽取U,V分量(如圖5圓圈標示的U,V分量),并分片存儲,即可完成數據的轉換。

在進行數據轉換時,由于YUV422數據的Y,U,V分量是交叉排列,需要對YUV422數據逐字節提取。對于640×480大小的圖像,其 YUV422格式數據大小為614 400(640×480×2)字節,若用高級語言實現逐字節提取,將消耗CPU大量的時間。筆者在S3C6410平臺上,用高級語言實現YUV422到YUV420P轉換時,完成一次轉換,平均耗時100 ms左右,整個系統只能達到6 f/s(幀/秒)的的錄制效果,效果很差。

匯編語言相對于高級語言來說,具有高效性。本系統中的YUV422數據到YUV420P數據轉換采用了匯編語言來實現,將其寫成子程序,在高級語言中遵守TPCS (ARM Thumb Procedure Call Standard)規則調用該匯編子程序,充分發揮了兩種語言的優勢。

YUV422數據到YUV420P數據轉換可以先將Y,U,V分量全部提取出來,然后隔行抽取U和V,提取Y,U,V分量的匯編語言代碼如下:

筆者將YUV422數據到YUV420P數據轉換過程改用匯編語言實現后,其效率極大提高,僅耗時約20 ms左右,系統整體達到13 f/s的錄制效果,效果較好。

6 視頻壓縮和存儲

1)SsbSipH264EncodeInit(width,height,frame_rate,bitrate,gop_num):該函數用于初始化H.264硬件編碼器。width表示圖像的寬度,height表示圖像的高度,frame_rate表示幀頻,bitrate表示比特率或碼率,gop_num表示兩個相離關鍵幀之間最多包含多少個幀。

2)SsbSipH264EncodeGetInBuf(handle,0):該函數用于獲取視頻的輸入地址,返回值為視頻流的輸入首地址。通過memcpy(p_inbuf,yuv_buf,frame_size)函數即可把需要編碼的視頻流數據輸入到編碼器。其中p_inbuf機即為SsbSipH264EncodeGetInBuf(handle,0)函數的返回值,yuv_buf為要編碼的YUV420P數據,frame_size一幀圖像數據的大小。

3)SsbSipH264EncodeExe(handle):執行H.264編碼。

4)SsbSipH264EncodeGetOutBuf(handle,size):輸出已編碼好的數據。返回值為已編碼圖像的首地址;size表示已編碼圖像的大小。

5)SsbSipH264EncodeDeInit(handle):關閉硬編碼設備。

S3C6410硬件H.264編碼過程如圖7所示。

圖7 H.264硬件編碼流程

7 系統測試

圖8為晚上用30W像素普通USB攝像頭作為視頻輸入設備的測試效果。

圖8 壓縮后視頻文件回放效果

8 總結

系統在對JPEG圖像解碼和對視頻數據進行H.264編碼時,采用了硬件解碼器和硬件編碼器,大大地提高了解、編碼的速度,同時,在對需要進行大量數據處理、耗時多的YUV422轉YUV420P過程,則由匯編語言實現,極大地提高了程序的運行效率,在USB攝像頭每秒最快輸出15幀的情況下,整體可以達到13 f/s的效果,視頻播放較為流暢,且圖像清晰。在該平臺的基礎上,可以搭建多種低成本的應用,具有較強的實用價值,目前該設備已經成功應用于管道成像探傷檢測系統中。

[1]鄭世寶.智能視頻監控技術與應用[J].電視技術,2009,33(1): 94-96.

[2]張曉東,李秀娟,張杰.基于ARM的嵌入式遠程監控系統設計[J].現代電子技術,2008,31(6):22-23.

[3]張玉萍,鄒澎.基于Qt/Embedded視頻采集方案的設計與實現[J].電視技術,2012,36(23):65-68.

[4]宋寶華.Linux設備驅動開發詳解[M].北京:人民郵電出版社,2006.

[5]S3C6400/6410 JPEG encoder/decoder API specification(Linux)(REV 3.10)[EB/OL].[2013-10-29].http://www.samsungsemi.com/.

[6]API document S3C6400/6410 multi-format codec(REV 3.20)[EB/ OL].[2013-10-29].http://www.samsungsemi.com/.

USB Video Com pression and Review System Based on S3C6410

LIU Rengui1,HU Liangbing2,HOU Chengying3,WANG Tingliang1,HOU Zhenfeng1
(1.Ming De College of NWPU,Xi’an 710124,China;2.Nanjing Research Institute of Electronics Technology,Nanjing 210039,China; 3.XEVET Co.,Ltd.,Xi’an 710175,China)

A newmethod on how to build a usefuland portable video compression and review system is proposed in the paper.The embedded video system,based on the S3C6410,uses the USB PC Camera as the video input device,and the JPEG image from the USB PC Camera is transformed to H.264 video files by the inner JPEG Decoder and the H.264 encoder of the S3C6410,and the video files can be stored in SD card or USBmass storage device. Assemble language is used in the system tomake up theweakness of the high-level language.The Experimental results show that the system can achieve 13 f/s@640×480 image quality as themaximum frame number of the USB PC Camera output is15 f/s.The video files can be reviewed by PC,and the video is clear and stable with strong practical and broad application prospects.

embedded system;USB PC camera;JPEG;H.264

TP316.89

B

劉仁貴(1983— ),學士,助理實驗師,研究方向為嵌入式系統軟、硬件設計;

胡亮兵(1982— ),博士,電訊總體工程師,研究方向為雷達信號與信息處理;

侯成英(1984— ),女,學士,工程師,研究方向為電路設計;

王庭良(1979— ),學士,助理研究員,研究方向為通信與信息系統;

侯鎮鋒(1986— ),學士,研究實習員,研究方向為網絡及信息安全。

?? 雯

2013-12-17

【本文獻信息】劉仁貴,胡亮兵,侯成英,等.基于S3C6410的USB視頻壓縮、回放系統[J].電視技術,2014,38(13).

猜你喜歡
系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
基于UG的發射箱自動化虛擬裝配系統開發
半沸制皂系統(下)
FAO系統特有功能分析及互聯互通探討
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
一德系統 德行天下
PLC在多段調速系統中的應用
主站蜘蛛池模板: 欧美国产日韩在线观看| 97青草最新免费精品视频| 3D动漫精品啪啪一区二区下载| 精品少妇人妻无码久久| av大片在线无码免费| 99精品高清在线播放| 国产h视频在线观看视频| 99精品福利视频| 亚洲黄网视频| 国产在线精彩视频论坛| 欧美国产日本高清不卡| 91精品国产一区自在线拍| 国产一级毛片网站| 国产成人三级| 日韩精品免费一线在线观看| 国产成人一二三| 22sihu国产精品视频影视资讯| 国产精品视频免费网站| 国产视频a| 91丝袜在线观看| 91福利免费视频| 国产亚洲精品自在久久不卡| 97视频在线精品国自产拍| 日本三级精品| 欧美在线视频不卡第一页| 亚洲大学生视频在线播放| 宅男噜噜噜66国产在线观看| 国产麻豆aⅴ精品无码| 国产成人精品一区二区免费看京| 久久永久精品免费视频| 国内精品久久久久鸭| 国产av无码日韩av无码网站| 少妇精品网站| 99视频精品在线观看| 九月婷婷亚洲综合在线| 国产精品19p| 国产精品一区不卡| 欧美日韩一区二区三区在线视频| 亚洲首页国产精品丝袜| 国产精品短篇二区| 国产精品青青| 精品视频一区二区观看| 亚洲日韩精品综合在线一区二区| 国产精品嫩草影院av| 国产成人精品视频一区二区电影| 久久亚洲精少妇毛片午夜无码| 国产视频大全| 亚洲天堂视频在线免费观看| 十八禁美女裸体网站| 成人小视频网| 色婷婷丁香| 亚洲自偷自拍另类小说| 亚洲欧美色中文字幕| 国产丝袜一区二区三区视频免下载| 亚洲精品自拍区在线观看| 在线观看欧美国产| 青青青国产视频手机| 亚洲精品欧美日韩在线| 欧美一级在线看| 亚洲成aⅴ人在线观看| 国产亚洲视频免费播放| 国产在线91在线电影| 中文字幕在线看| 亚洲精品在线影院| 国产精品永久不卡免费视频| 97免费在线观看视频| 国产真实乱了在线播放| 美女被操91视频| 精品99在线观看| 伊人激情综合网| 亚洲色图欧美一区| 国产簧片免费在线播放| 日韩精品一区二区三区免费在线观看| 日韩亚洲高清一区二区| 日韩欧美亚洲国产成人综合| 亚洲乱亚洲乱妇24p| 精品一区二区久久久久网站| 精品超清无码视频在线观看| 一级做a爰片久久免费| 99精品在线视频观看| 伊人久综合| 动漫精品啪啪一区二区三区|