国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于FFmpeg的嵌入式網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)

2014-11-17 11:12:37譚石堅
科技創(chuàng)新與應(yīng)用 2014年33期
關(guān)鍵詞:接收端編碼器嵌入式

摘 要:視頻監(jiān)控正朝著嵌入式、網(wǎng)絡(luò)化、無線化的方向發(fā)展。嵌入式視頻監(jiān)控系統(tǒng)已成當(dāng)今數(shù)字視頻研究的熱點之一,如何加強視頻監(jiān)控實時性和準(zhǔn)確性是視頻監(jiān)控技術(shù)中的主要重點。本系統(tǒng)采用FFmpeg作為編碼工具,以ARM平臺為基礎(chǔ),結(jié)合嵌入式技術(shù)、視頻壓縮編碼技術(shù)、網(wǎng)絡(luò)傳輸技術(shù),設(shè)計一個低成本、高性能、易普及的嵌入視頻監(jiān)控系統(tǒng)。

關(guān)鍵詞:視頻監(jiān)控;FFmpeg;H.264

1 系統(tǒng)總體框架

視頻監(jiān)控以視頻編解碼技術(shù)、計算機網(wǎng)絡(luò)技術(shù)、數(shù)字信號處理技術(shù)和嵌入式系統(tǒng)為主要核心技術(shù)。本系統(tǒng)把從攝像機采集的模擬視頻信號通過視頻編碼器直接轉(zhuǎn)換成視頻流,并通過計算機網(wǎng)絡(luò)傳輸。具備視頻編碼處理、網(wǎng)絡(luò)通信、系統(tǒng)控制等強大功能,直接支持網(wǎng)絡(luò)視頻傳輸和網(wǎng)絡(luò)管理,使得監(jiān)控范圍達到前所未有的廣度。

本系統(tǒng)采用“采集端-服務(wù)端-接收端“的C/S架構(gòu),硬件平臺采用ARM嵌入式處理器和攝像頭,操作系統(tǒng)基于嵌入式Linux[1]。整個系統(tǒng)分成分為三個部分,分別為采集端、服務(wù)端、接收端。采集端將采集得到的視頻數(shù)據(jù)經(jīng)過處理,轉(zhuǎn)換成H.264格式。通過網(wǎng)絡(luò)在服務(wù)端進行轉(zhuǎn)發(fā),在接收端將視頻顯示出來,系統(tǒng)總體框架如圖1。

圖1 視頻監(jiān)控系統(tǒng)框架圖

采集端負責(zé)采集攝像頭數(shù)據(jù)并使用FFmpeg進行H.264的視頻編碼[2]。通過網(wǎng)絡(luò)向服務(wù)器發(fā)送視頻數(shù)據(jù)。服務(wù)器端負責(zé)接收來自采集端的視頻數(shù)據(jù),然后接收客戶端的視頻請求,向客戶端發(fā)送視頻數(shù)據(jù)。接收端為用戶客戶端,負責(zé)接收服務(wù)器視頻數(shù)據(jù)并且播放或者保存文件。

采集端是一個基于ARM的嵌入式系統(tǒng),操作系統(tǒng)使用Linux操作系統(tǒng),視頻編碼使用FFmpeg和H264提供的程序庫。采集端系統(tǒng)架構(gòu)如圖2。

圖2 采集端系統(tǒng)框架圖

本系統(tǒng)的視頻采集使用linux的video4linux2編程接口[3],而視頻編碼由FFmpeg+H264共同完成。在使用FFmpeg編碼之前,首先需要對FFmpeg庫進行初始化,注冊所有的編解碼器以及文件格式,設(shè)置編碼器碼率、幀速率、編碼像素格式等參數(shù),然后尋找編碼器并打開,打開編碼器之后才可以進行編碼[4]。使用FFmpeg編碼流程如圖3。

本系統(tǒng)中的網(wǎng)絡(luò)傳輸功能是一大重點。采集端將原始攝像頭視頻數(shù)據(jù)進過編碼后,以網(wǎng)絡(luò)方式傳輸?shù)椒?wù)器上。在使用網(wǎng)絡(luò)傳輸前需要對本機的網(wǎng)絡(luò)進行初始化。以下是部分初始化網(wǎng)絡(luò)程序[5]。

int sockfd = 0;

struct sockaddr_in addr;

bzero(&addr,sizeof(addr));

/*設(shè)置sockaddr_in結(jié)構(gòu)體中的相關(guān)參數(shù)*/

addr.sin_family = AF_INET;

addr.sin_port=htons(PORT);

addr.sin_addr.s_addr= inet_a

ddr(SERVERIP);

/*創(chuàng)建socket*/

sockfd=socket(AF_INET,SOCK_STREAM,0);

/*調(diào)用connect函數(shù)主動發(fā)起對服務(wù)器的連接*/

if(connect(sockfd,(struct sockaddr*)&addr,sizeof(addr)) == -1){

perror("connect");

exit(1);

}

網(wǎng)絡(luò)連接的初始化完成,一旦connect函數(shù)連接服務(wù)器成功,就可以隨時與服務(wù)器進行數(shù)據(jù)收發(fā)。

至此,采集端已經(jīng)完成了一幀視頻數(shù)據(jù)的采集、壓縮、網(wǎng)絡(luò)傳輸這三個主要的過程。而視頻監(jiān)控的整個過程就是以上步驟的重復(fù)進行。正是由采集端傳輸?shù)囊粠粠曨l數(shù)據(jù),最終傳送到客戶端,不斷顯示圖像,達到視頻監(jiān)控效果。

2 結(jié)束語

本系統(tǒng)采用ARM嵌入式系統(tǒng)實現(xiàn)了視頻監(jiān)控中的視頻采集、編碼和傳輸三個重要功能。與眾多的視頻傳輸設(shè)計相比,本設(shè)計采用了現(xiàn)今業(yè)內(nèi)最常用的H.264視頻編解碼技術(shù)。具有一定的前沿性和比較高的市場價值。

參考文獻

[1]嵌入式Linux應(yīng)用開發(fā)標(biāo)準(zhǔn)教程(第二版)[M].北京:人民郵電出版社,2009.

[2]FFMPEG[Z].http://www.ffmpeg.com/[2012/9/28].

[3]Video4Linux2[Z].http://en.wikipedia.org/wiki/Video4Linux[2008/3/1].

[4]X264[Z].http://www.videolan.org/developers/x264.html[2005/12/12].

[5]UNIX網(wǎng)絡(luò)編程 卷1:套接字聯(lián)網(wǎng)API(第三版)[M].北京:人民郵電出版社,2010.

作者簡介:譚石堅(1981,5-),男,籍貫:廣東,碩士,主要研究方向是嵌入式系統(tǒng)設(shè)計,視頻編解碼,網(wǎng)絡(luò)安全等。

猜你喜歡
接收端編碼器嵌入式
基于擾動觀察法的光通信接收端優(yōu)化策略
頂管接收端脫殼及混凝土澆筑關(guān)鍵技術(shù)
一種設(shè)置在密閉結(jié)構(gòu)中的無線電能傳輸系統(tǒng)
新能源科技(2021年6期)2021-04-02 22:43:34
基于多接收線圈的無線電能傳輸系統(tǒng)優(yōu)化研究
基于FPGA的同步機軸角編碼器
搭建基于Qt的嵌入式開發(fā)平臺
基于PRBS檢測的8B/IOB編碼器設(shè)計
嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
JESD204B接口協(xié)議中的8B10B編碼器設(shè)計
電子器件(2015年5期)2015-12-29 08:42:24
多總線式光電編碼器的設(shè)計與應(yīng)用
保德县| 南康市| 黔东| 包头市| 巴青县| 山阴县| 宝兴县| 阿尔山市| 定陶县| 湘乡市| 克拉玛依市| 娄底市| 那坡县| 巴塘县| 桓仁| 多伦县| 阿拉善右旗| 上栗县| 满洲里市| 宁城县| 新兴县| 虹口区| 凤阳县| 成安县| 托克逊县| 青州市| 航空| 济阳县| 武乡县| 贵阳市| 新闻| 肃宁县| 瑞金市| 平塘县| 杭锦旗| 永丰县| 南川市| 汉源县| 宜宾市| 政和县| 土默特左旗|