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

基于S3C2440的視頻采集及傳輸系統(tǒng)設(shè)計

2013-12-30 09:48:24王建新
電子器件 2013年3期
關(guān)鍵詞:嵌入式設(shè)備系統(tǒng)

王建新,張 凱,王 秀

(西安科技大學(xué)雁塔校區(qū)通信與信息工程學(xué)院,西安710054)

目前,各種視頻采集以及傳輸?shù)南到y(tǒng)都是由DSP(圖像處理),ARM(圖像顯示)以及利用FPGA搭建整個框架[1],這樣會造成資源嚴(yán)重浪費(fèi),并且成本較大。隨著嵌入式技術(shù)的迅猛發(fā)展,利用嵌入式實(shí)現(xiàn)遠(yuǎn)程視頻采集、可視電話會議等應(yīng)用已經(jīng)成為可能。

本文基于 S3C2440和 Linux系統(tǒng)平臺,采用USB攝像頭捕捉視頻信號,利用V4L2應(yīng)用編程接口函數(shù),實(shí)現(xiàn)了視頻連續(xù)幀圖像的采集,并利用TCP傳輸方式傳輸給服務(wù)器端,實(shí)現(xiàn)對嵌入式視頻遠(yuǎn)程傳輸。開發(fā)的終端具有體積小,功耗低,適用于便攜式視頻采集需要。

1 視頻采集傳輸系統(tǒng)的軟硬件架構(gòu)

本文以三星公司S3C2440為硬件平臺,其片上64 M SDRAM可以滿足視頻采集軟件的內(nèi)存需要,256 M NAND FlLASH用于存放文件和系統(tǒng),3個通道的UART等控制器和豐富的接口,使其擴(kuò)展功能強(qiáng)大,功耗低,簡單穩(wěn)定符合要求。整個硬件框架如圖1所示。

圖1 系統(tǒng)硬件架構(gòu)

視頻采集傳輸系統(tǒng)軟件架構(gòu)由以下部分組成:USB(ZC301)攝像頭,攝像頭驅(qū)動,視頻采集應(yīng)用程序,視頻傳輸,視頻顯示組成。如圖2所示。

圖2 視頻采集傳輸系統(tǒng)軟件構(gòu)架

USB攝像頭進(jìn)行采集圖像數(shù)據(jù),采集圖像格式為MJPE,采集應(yīng)用程序通過攝像頭驅(qū)動從攝像頭獲得采集的圖像數(shù)據(jù)。利用V4L2接口函數(shù)對設(shè)備采集的數(shù)據(jù)進(jìn)行操作,最后通過網(wǎng)絡(luò)傳輸(TCP)將數(shù)據(jù)傳輸給PC機(jī)進(jìn)行顯示[2]。

2 視頻采集應(yīng)用程序開發(fā)

Linu系統(tǒng)具有開源性,高可靠性和強(qiáng)大的網(wǎng)絡(luò)功能等特點(diǎn)。在此基于linux2.6內(nèi)核,對其進(jìn)行裁剪和配置,使內(nèi)核支持USB驅(qū)動和V4L2標(biāo)準(zhǔn),建立交叉編譯環(huán)境,移植編譯好的內(nèi)核到目標(biāo)板,以構(gòu)建linux文件系統(tǒng),進(jìn)行視頻采集傳輸應(yīng)用程序的開發(fā)。

在linux系統(tǒng)下,圖像采集設(shè)備依賴于V4L2(Video 4 linux 2)標(biāo)準(zhǔn)支持,它針對linux內(nèi)核視頻設(shè)備提供了一系列API接口函數(shù)[3],視頻采集流程如圖3所示。

①打開視頻設(shè)備

在V4L2中,視頻設(shè)備被看作一個文件。使用open()函數(shù)以阻塞模式打開攝像頭設(shè)備,函數(shù)格式為:

open()函數(shù)中包含兩個參數(shù),第1個參數(shù)代表打開的設(shè)備文件名,第2個參數(shù)代表設(shè)備的打開類型(讀/寫,阻塞或非阻塞),返回值為文件描述符fd,若返回值為大于0,則打開設(shè)備正確;若返回值為-1,則打開設(shè)備錯誤。

②初始化設(shè)備,包括獲取設(shè)備信息,設(shè)置設(shè)備格式,函數(shù)格式為:

圖3 視頻采集流程

③設(shè)置視頻捕獲格式

當(dāng)檢測完視頻設(shè)備支持的標(biāo)準(zhǔn)后,還需要設(shè)定視頻捕獲格式,函數(shù)格式如下:

④分配內(nèi)存

向驅(qū)動申請幀緩沖,一般不超過5個。使用ioctl命令字VIDIOC_REQBUFS來調(diào)用struct v4l2_requestbuffers,v4l2_requestbuffers結(jié)構(gòu)中定義了緩存的數(shù)量,驅(qū)動會據(jù)此申請對應(yīng)數(shù)量的視頻緩存。

⑤獲取并記錄緩存的物理空間

使用VIDIOC_REQBUFS,獲取兩個緩存,并通過調(diào)用VIDIOC_QUERYBUF命令來獲取這些緩存的地址,再使用mmap()函數(shù)轉(zhuǎn)換成應(yīng)用程序中的絕對地址,最后把這段緩存放入緩存隊列。使用V4L2進(jìn)行圖像采集時候,在一幀緩沖完成之后,都會將第二幀覆蓋到另一個緩存中,req.count個緩存輪流使用,不丟數(shù)據(jù)。函數(shù)格式如下:

ioctl(fd,VIDIOC_QUERYBUF,&buf);//獲取到對應(yīng)index的緩存信息,此處主要利用length信息及offset信息來完成后面的mmap操作。與用戶空間傳遞數(shù)據(jù)的一個中介,會被循環(huán)利用。

⑥圖像數(shù)據(jù)采集

V4L2有三種視頻圖像采集方式:read()、write()方式,內(nèi)存映射方式和用戶指針方式。

本文采用的內(nèi)存映射方式是在內(nèi)核空間開辟一段地址空間,通過mmap()系統(tǒng)調(diào)用將其映謝到地址空間。

圖像采集過程中需要使用兩個ioctl的命令:即VIDIOC_DQBUF和VIDIOC_QBUF命令。函數(shù)格式為:

在配置內(nèi)核時候,對USB驅(qū)動初始化,我們加上V4L2,并修改.config文件,支持ZC301攝像頭,然后進(jìn)行編譯成內(nèi)核鏡像。

3 視頻傳輸應(yīng)用程序

常用的圖像傳輸協(xié)議有TCP協(xié)議和UDP協(xié)議。

TCP是傳輸控制協(xié)議,是一種面向連接(連接導(dǎo)向)的、可靠的、基于字節(jié)流的運(yùn)輸層通信協(xié)議。UDP即用戶數(shù)據(jù)報協(xié)議,是一種無連接協(xié)議,傳輸數(shù)據(jù)之前客戶端和服務(wù)器端不建立連接[4]。

在傳輸過程中,TCP在丟包方面比UDP嚴(yán)密,不容易丟包。因此本文為利用TCP協(xié)議來傳輸數(shù)據(jù),首先初始化攝像頭利用V4L2接口,連接到linux系統(tǒng)的公用協(xié)議標(biāo)準(zhǔn),然后將數(shù)據(jù)存放至緩沖區(qū),產(chǎn)生數(shù)據(jù)包,并且將數(shù)據(jù)包利用TCP傳輸,最后傳輸?shù)?PC 機(jī)并顯示出來[5]。

在linux中網(wǎng)絡(luò)編程是通過socket接口來進(jìn)行的。Socket是一種常用的進(jìn)程之間的通信機(jī)制。TCP協(xié)議下的socket編程流程圖,如圖4所示。

Socket編程基本函數(shù)有 socket()、bind()、listen()、accept()、Send()以及 Recv()等,其中根據(jù)客戶端還是服務(wù)器,這些函數(shù)的調(diào)用流程有所區(qū)別,這里對每個函數(shù)進(jìn)行簡明:

圖4 TCP協(xié)議socket編程流程圖

Socket():該函數(shù)用于建立一個socket連接,可以指定socket類型信息,對結(jié)構(gòu)體sockaddr_in初始化:包含地址族,端口號,IP地址等;

Bind()該函數(shù)用于將本地IP地址綁定到端口號,若綁定其他IP地址則不成功。另外還用于TP連接;

Listen():服務(wù)端程序成功建立套接字和地址進(jìn)行綁定之后,還需要準(zhǔn)備在該套接字上接受新的連接請求;

Accept():調(diào)用accept()函數(shù)等待并且接收客戶端的連接請求;

Connect():用于與服務(wù)器建立連接;

Send()與Recv():分別用于發(fā)送和接收數(shù)據(jù)。

4 測試結(jié)果

搭建目標(biāo)機(jī)linux2.6.32運(yùn)行環(huán)境,并且通過宿主機(jī)使用交叉編譯器連接生成可執(zhí)行文件,向目標(biāo)機(jī)移植后運(yùn)行。

將USB攝像頭同目標(biāo)機(jī)連接好了之后,若成功掛載USB攝像頭,則終端下會顯示識別USB設(shè)備,如圖5所示。

圖5 USB攝像頭驅(qū)動測試結(jié)果

對整個系統(tǒng)進(jìn)行測試,該系統(tǒng)在傳輸320×240大小并以MJPEG編碼的視頻時,視頻監(jiān)控服務(wù)器端觀察圖像流暢并且清晰,足夠滿足視頻監(jiān)控需求,如圖6所示。

圖6 系統(tǒng)測試結(jié)果

5 結(jié)論

本文提出一種基于S3C2440平臺和嵌入式linux系統(tǒng)的C/S模型視頻采集和傳輸方案,采用普通市面上的USB攝像頭,極大的降低了成本,利用socket編程實(shí)現(xiàn)TCP網(wǎng)絡(luò)傳輸過程,經(jīng)測試,服務(wù)器端可以實(shí)時的接受到采集傳輸?shù)囊曨l,圖像清晰,滿足視頻監(jiān)控要求。

[1]周立功.ARM&WinCE實(shí)驗與實(shí)踐—基于S3C2410[M].北京:北京航空航天大學(xué)出版社,2007.

[2]王培珍,徐俊生.基于ARM9的嵌入式linux圖像采集設(shè)計系統(tǒng)[J].中國制造業(yè)信息化,2007,10:85-88

[3]李新峰,何廣生,趙秀文.基于ARM9的嵌入式Linux開發(fā)技術(shù)[M].北京:電子工業(yè)出版社,2008,10:118-127

[4]陳文智.嵌入式系統(tǒng)開發(fā)原理與實(shí)踐[M].北京:清華大學(xué)出版社,2005.

[5]怯肇乾.嵌入式網(wǎng)絡(luò)通信開發(fā)應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2010.

[6]吳明暉.基于ARM的嵌入式系統(tǒng)開發(fā)和應(yīng)用[M].北京:人民郵電出版社,2005.

[7]江湖,蘇詳芳,劉立海,等.基于網(wǎng)絡(luò)的數(shù)字視頻監(jiān)控系統(tǒng)[J].武漢大學(xué)學(xué)報(自然科學(xué)版),2000,46(5):608-612.

[8]Lu Yinli,Yu Hongli,Zhang Pengpeng.The Implementation of Embedded Image Acquisition Based on V4L2[C]//Electronics,Communications and Control(ICECC),2011 International Conference.Heng yang,China.2011:549-552

猜你喜歡
嵌入式設(shè)備系統(tǒng)
諧響應(yīng)分析在設(shè)備減振中的應(yīng)用
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機(jī)系統(tǒng)
ZC系列無人機(jī)遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
基于MPU6050簡單控制設(shè)備
電子制作(2018年11期)2018-08-04 03:26:08
搭建基于Qt的嵌入式開發(fā)平臺
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
500kV輸變電設(shè)備運(yùn)行維護(hù)探討
原來他們都是可穿戴設(shè)備
主站蜘蛛池模板: 网友自拍视频精品区| 亚洲综合国产一区二区三区| 国产农村妇女精品一二区| 不卡午夜视频| 欧美a级完整在线观看| 99精品视频在线观看免费播放| 亚洲天堂福利视频| 国产一在线| 国产精品人人做人人爽人人添| 亚洲最大福利网站| 丁香六月综合网| 女人18毛片久久| 国产白丝av| 97视频免费在线观看| 一本色道久久88亚洲综合| www亚洲天堂| 久久精品一卡日本电影| 久久99热66这里只有精品一| 久久香蕉国产线看精品| 九九九精品成人免费视频7| 国产精品夜夜嗨视频免费视频| 国产美女在线观看| 久久黄色免费电影| 麻豆精品视频在线原创| 国产不卡一级毛片视频| 午夜国产小视频| 狠狠亚洲婷婷综合色香| 91精品综合| 特级aaaaaaaaa毛片免费视频| 国产一区二区福利| 色AV色 综合网站| 五月婷婷精品| 综合久久五月天| 国产99视频精品免费视频7| 91av国产在线| 国产精品成人免费综合| 欧洲欧美人成免费全部视频| 欧美日韩成人在线观看| 亚洲最新在线| 色综合网址| 好吊色妇女免费视频免费| 免费看a级毛片| 国产精品视频观看裸模| 亚洲精品老司机| 免费aa毛片| 日本尹人综合香蕉在线观看| 五月激情婷婷综合| 午夜福利无码一区二区| 久久久久久久久18禁秘| 国产精品尹人在线观看| 午夜毛片福利| 凹凸国产熟女精品视频| 国产精品极品美女自在线网站| 国产视频a| 国产成人亚洲欧美激情| 国产乱人伦偷精品视频AAA| 啦啦啦网站在线观看a毛片| 久久久久人妻精品一区三寸蜜桃| 精品视频一区在线观看| 成人午夜亚洲影视在线观看| 亚洲国产精品人久久电影| 国产精品lululu在线观看| 九九免费观看全部免费视频| 亚洲午夜天堂| 国内毛片视频| 国产视频欧美| 天堂久久久久久中文字幕| 97视频免费在线观看| 久久久久人妻一区精品| 国产精品三级av及在线观看| 国产小视频网站| 综合久久久久久久综合网| 成人国产精品网站在线看| 亚洲一级毛片在线观| 日韩国产一区二区三区无码| 蜜桃臀无码内射一区二区三区| 国产精品成人观看视频国产| 欧洲精品视频在线观看| 国产在线无码一区二区三区| 国产在线小视频| 91欧洲国产日韩在线人成| 色综合五月|