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

基于FFMPEG實(shí)時(shí)視頻傳輸系統(tǒng)設(shè)計(jì)

2021-07-19 09:37:16明瑞張金奎胡杰
電腦知識與技術(shù) 2021年15期
關(guān)鍵詞:系統(tǒng)

明瑞 張金奎 胡杰

摘要:實(shí)時(shí)視頻監(jiān)控是如今各個(gè)領(lǐng)域必不可少的關(guān)鍵技術(shù)。本文設(shè)計(jì)的基于FFMPEG多媒體工具的實(shí)時(shí)視頻傳輸系統(tǒng),采用Raspberry Pi CM4高性能處理器搭載Ubuntu16.04操作系統(tǒng),利用視頻內(nèi)核驅(qū)動Video for linux2獲取攝像頭圖像數(shù)據(jù),結(jié)合X264、FFMPEG等庫實(shí)現(xiàn)圖像的壓縮編碼、封裝,H264視頻流通過EC20 4G模塊上傳至遠(yuǎn)程視頻服務(wù)器,有效地實(shí)現(xiàn)了在服務(wù)器端進(jìn)行實(shí)時(shí)監(jiān)控功能,該系統(tǒng)可廣泛應(yīng)用于野外、偏遠(yuǎn)地區(qū)的實(shí)時(shí)可視化,具有部署便捷、傳輸穩(wěn)定、可擴(kuò)展性強(qiáng)、成本低等特點(diǎn)。

關(guān)鍵詞:Raspberry Pi;4G;EC20;FFMPEG;實(shí)時(shí)視頻傳輸

中圖分類號:G642? ? ? 文獻(xiàn)標(biāo)識碼:A

文章編號:1009-3044(2021)15-0025-03

Abstract: Real-time video surveillance is an essential key technology in various fields today. The real-time video transmission system based on FFMPEG multimedia tools designed in this paper adopts Raspberry Pi CM4 high-performance processor with Ubuntu16.04 operating system, and uses video kernel to drive Video for linux2 to obtain camera image data. Combining X264, FFMPEG and other libraries to achieve image compression, encoding and packaging. H264 video streams are uploaded to a remote video server through the EC20 4G module, effectively realizing the real-time monitoring function on the server side. The system can be widely used in the wild and remote areas. Real-time visualization has the characteristics of convenient deployment, stable transmission, strong scalability, and low cost.

Key words: Raspberry Pi; 4G; EC20; FFMPEG; Real-time Video Transmission

隨著物聯(lián)網(wǎng)技術(shù)的發(fā)展,越來越多的設(shè)備需要遠(yuǎn)程控制、實(shí)時(shí)收發(fā)傳輸數(shù)據(jù),對可視化的需求愈發(fā)強(qiáng)烈。本系統(tǒng)利用在可視化航標(biāo)項(xiàng)目,選擇內(nèi)河航道的交通環(huán)境作為采集目標(biāo),為滿足航道交通的實(shí)時(shí)監(jiān)控和航行交通事故仲裁視頻回溯。在當(dāng)今4G通信技術(shù)領(lǐng)域,4G LTE 無線視頻綜合成本低、二次開發(fā)兼容性強(qiáng)、傳輸性能穩(wěn)定,通信速率快[2],人工維護(hù)費(fèi)用低,可以將不同航道的現(xiàn)場信息實(shí)時(shí)通過無線通訊手段傳送到無線監(jiān)控中心,并且自動形成視頻數(shù)據(jù)庫便于日后的檢索。在高速率的傳輸保障下,本系統(tǒng)可廣泛應(yīng)用于野外、偏遠(yuǎn)地區(qū)的實(shí)時(shí)可視化,并且可根據(jù)不同的應(yīng)用需求拓展其他的硬件設(shè)備。

1 系統(tǒng)框架

本系統(tǒng)由高性能處理器樹莓派CM4、500W像素 CSI攝像頭、EC20 4G模塊、遠(yuǎn)程視頻服務(wù)器構(gòu)成。Raspberry Pi Compute module4尺寸小巧,核心板集成4核ARM Cortex-A72內(nèi)核,可滿足圖像壓縮視頻編碼的算力需求解決了數(shù)據(jù)傳輸中的帶寬限制問題,以達(dá)到實(shí)時(shí)性的目的。CSI攝像頭通過15cm軟排線連接至樹莓派CSI接口,利用Linux系統(tǒng)內(nèi)核驅(qū)動Video4Linux2采集Raw Video圖像信息,對原始圖像進(jìn)行像素轉(zhuǎn)換生成YUV420P像素格式數(shù)據(jù)、壓縮編碼成H264視頻流、封裝生成FLV格式的文件,最終以文件流的形式通過EC20模塊的TCP/IP協(xié)議棧提供的AT指令集訪問FTP服務(wù)器實(shí)現(xiàn)實(shí)時(shí)視頻上傳至視頻服務(wù)器。服務(wù)器端亦可根據(jù)通信協(xié)議下達(dá)關(guān)機(jī)、重啟等系統(tǒng)命令,也可調(diào)節(jié)視頻碼率、壓縮比和幀率等參數(shù),當(dāng)指令下發(fā)至EC20模塊,Linux系統(tǒng)根據(jù)指令的種類觸發(fā)相應(yīng)的軟中斷處理命令,達(dá)到遠(yuǎn)程控制的功能。系統(tǒng)框圖如圖1所示。

2 系統(tǒng)硬件設(shè)計(jì)

Raspberry Pi CM4-EC20終端為本系統(tǒng)的主要硬件設(shè)計(jì),搭載博通公司生產(chǎn)的 BCM2711高性能處理器 、亞博公司生產(chǎn)的CSI攝像頭以及移遠(yuǎn)的EC20 4G模塊。樹莓派操作系統(tǒng)為自裁剪制作的輕量版Ubuntu16.04,該系統(tǒng)鏡像編譯安裝OPENCV、FFMPEG、X264等環(huán)境。CSI攝像頭是一款兼容樹莓派的圖像傳感器可以以SVGA、UXGA、VGA等時(shí)序輸出RGB565、YUV、JPEG等格式的圖像,其圖像像素可高達(dá)500W(2925x1944),本系統(tǒng)調(diào)用Linux內(nèi)核驅(qū)動Video4Linux2獲取Raw Video原始圖像,并在內(nèi)存中將YUV422像素格式數(shù)據(jù)通過雙三次縮放算法(Bicubic)輸出為640x480分辨率的YUV420P格式數(shù)據(jù)便于壓縮成H264視頻流,對編碼視頻流加以封裝即可生成視頻文件,采用循環(huán)覆蓋寫入,多線程處理,實(shí)時(shí)上傳視頻給遠(yuǎn)程服務(wù)器。在網(wǎng)絡(luò)環(huán)境惡劣情況下,同時(shí)本地也保存有視頻錄像備份,便于航道交通事故回溯,有理有據(jù)。4G模塊EC20 –R2.1 Mini Pcle提供了PCI ExpressMini Card標(biāo)準(zhǔn)接口,支持最大上行速率50Mbps,在多網(wǎng)絡(luò)制式下能夠從3G網(wǎng)絡(luò)輕松平滑過渡到4G網(wǎng)絡(luò),其USB通信口與樹莓派主控芯片通信,通過AT指令撥號上網(wǎng)FTP連接服務(wù)器,負(fù)責(zé)將視頻流數(shù)據(jù)傳送至云端服務(wù)器。

3 系統(tǒng)軟件設(shè)計(jì)

3.1 樹莓派-CSI攝像頭H264編碼系統(tǒng)設(shè)計(jì)

硬件部分驅(qū)動應(yīng)用程序采用Ubuntu 16.04操作系統(tǒng)下VS Code開發(fā)平臺,C/C++語言編程,其設(shè)計(jì)流程如圖2所示。

1)讀取攝像頭設(shè)備:

在Linux系統(tǒng)中,V4L2(video4linux2)內(nèi)核驅(qū)動下攝像頭作為文件對象打開讀取視頻數(shù)據(jù)。由于本系統(tǒng)只有一個(gè)攝像頭,利用Opencv中VideoCapture類創(chuàng)建一個(gè)捕獲對象camera,通過成員函數(shù)open( )來打開/dev/video0設(shè)備[2]。為了節(jié)省內(nèi)存和CPU的算力,在判斷設(shè)備開啟后,利用carmera.set( )函數(shù)設(shè)置攝像頭輸出圖像數(shù)據(jù)的分辨率為1280 x 720、幀數(shù)為25 幀。

2)讀取視頻信息,初始化像素轉(zhuǎn)換句柄:

上一步驟中已經(jīng)設(shè)置了圖像的長、寬和幀率,本環(huán)節(jié)主要讀取視頻幀的圖片格式——RGB565,視頻編碼H264僅支持YUV4:2:0的連續(xù)或隔行視頻的編碼,因此需要初始化像素轉(zhuǎn)換任務(wù)句柄,像素轉(zhuǎn)換可以轉(zhuǎn)換圖片分辨率、像素格式等,將操作句柄設(shè)置為RGB565像素格式轉(zhuǎn)YUV420P格式,圖片分辨率轉(zhuǎn)變?yōu)?40 x 480,采用雙三次插值算法縮小圖像。

3)創(chuàng)建編碼器,初始化編碼器:

基于ffmpeg的視頻壓縮,編碼器不能為空指針必須要動態(tài)申請內(nèi)存創(chuàng)建。與此同時(shí)創(chuàng)建h264的流媒體準(zhǔn)備存儲編碼過后的視頻流,創(chuàng)建文件名為video.h264的文件以便封裝流媒體。打開編碼器關(guān)聯(lián)輸出流媒體和輸出文件,初始化像素格式為AV_PIX_FMT_YUV420P,圖像寬為640, 高為480,比特率為1800000(分辨率一定的情況下,比特率越高圖像越清晰,但是數(shù)據(jù)量會更大),設(shè)置圖像層組大小為10(關(guān)鍵幀的周期,此數(shù)值越大圖像編碼后的數(shù)據(jù)越小,但會增加編碼的時(shí)間),設(shè)置B幀數(shù)量為3(該幀為視頻圖片空間的前后預(yù)測幀,相同碼率的情況下, 越多 B 幀的視頻,越清晰但對于編碼的復(fù)雜度較高)[3]。

4)寫入視頻頭:

寫入視頻之前會對接口設(shè)置檢查,音頻、視頻的通道檢查,視頻的參數(shù)檢查,檢查輸出封裝是否支持h264編碼格式。經(jīng)過以上檢查,對video.h264文件寫入文件頭信息。

5)讀取視頻幀,對圖像序列轉(zhuǎn)換

Opencv讀取的幀像素格式為BGR格式,需要利用ffmpeg轉(zhuǎn)碼成為YUV240P才能滿足H264編碼的要求,與RGB要求三個(gè)獨(dú)立的通道傳輸信號相比YUV占用更少的帶寬。“Y”表示明亮度,“U”和“V”表示色度即分別為色調(diào)與飽和度,這樣的色彩模型使亮度和色度分開,從而更適用于編碼壓縮。圖像由720P縮放至640 x 480采用雙三次插值法。該算法利用待采樣點(diǎn)周圍16個(gè)點(diǎn)的灰度值作三次插值,不僅考慮到4 個(gè)直接相鄰點(diǎn)的灰度影響,而且考慮到各鄰點(diǎn)間灰度值變化率的影響,三次運(yùn)算可以得到更接近高分辨率圖像的放大效果[4]。這種算法需要選取插值基函數(shù)來擬合數(shù)據(jù),其最常用的插值基函數(shù)如圖3所示。

利用求得縮放圖像某像素點(diǎn)在原圖像的相對位置,通過此坐標(biāo)找到距離最近的16個(gè)像素點(diǎn),利用插值基函數(shù),即可求出對應(yīng)每個(gè)像素的權(quán)值進(jìn)而獲得縮放后的像素值。

6)壓縮編碼

調(diào)用X264編碼器編碼YUV420P序列時(shí)需調(diào)整對應(yīng)Y、U、V數(shù)據(jù)地址的偏移。以第一幀為例Y數(shù)據(jù)為 307200(640 *480)Byte,U、V數(shù)據(jù)均為分別為76800(640*480/4 )Byte。那么對應(yīng)視頻幀的第一幀存儲順序依次為存儲Y信息、U信息、V信息。公式如圖4所示。

FrameData [0]=? data[0]

FrameData [1]=? data[0] + w*h

FrameData [2]=? data[0]+ w*h*5/4

其中FrmaeData為視頻編碼輸入數(shù)組,data為轉(zhuǎn)換后的YUV420P像素格式圖片數(shù)據(jù)。

7)寫入文件封裝文件尾:

編碼一幀即打包一幀視頻到AVPacket緩存中,再調(diào)用文件寫入函數(shù)fwrite完成視頻寫入文件。最后寫入文件尾,封裝成為FLV格式的視頻文件。文件采用循環(huán)覆蓋方式[4]。

3.2 FTP實(shí)時(shí)文件上傳系統(tǒng)設(shè)計(jì)

初始化EC20,通過USB發(fā)送AT指令查看SIM卡是否正確插入、檢查SIM卡是否注冊GPRS功能以及誤碼率、設(shè)置GPRS的APN獲取相關(guān)運(yùn)營商的信息后完成入網(wǎng)。調(diào)用FTP AT指令連接遠(yuǎn)程服務(wù)器,發(fā)起FTP請求,設(shè)置用戶名和密碼,二進(jìn)制文件傳輸模式以及FTP文件傳輸?shù)刂范丝诩纯砷_始視頻上傳。調(diào)用AT指令A(yù)T+QFTPPUT傳出文件。

4 測試結(jié)果

針對船舶交通實(shí)時(shí)監(jiān)控中,船舶均為體積龐大的沙船、貨船,航行速率偏低。本系統(tǒng)在多次測試調(diào)試如表1下得出該系統(tǒng)在640x480分辨率下的圖像清晰,幀數(shù)在25幀以上,流暢度和清晰度能滿足預(yù)期航道實(shí)時(shí)監(jiān)控的需求。

5 結(jié)束語

本文基于ffmpeg設(shè)計(jì)的航道實(shí)時(shí)視頻傳輸系統(tǒng),在整個(gè)系統(tǒng)硬件的選擇和軟件的構(gòu)件上有效地滿足了可視化航標(biāo)燈的項(xiàng)目需求,4G網(wǎng)絡(luò)給予本系統(tǒng)實(shí)時(shí)性保證、穩(wěn)定性,可將航道上交通信息實(shí)時(shí)視頻傳輸至數(shù)據(jù)中心,事故回溯有理有據(jù),一次投放部署即可在服務(wù)器端通過命令遠(yuǎn)程控制模塊的啟動、復(fù)位和需求變化。本系統(tǒng)應(yīng)用潛力巨大,可滿足偏遠(yuǎn)、惡劣環(huán)境下的遠(yuǎn)程監(jiān)控,日后隨著嵌入式設(shè)備圖像處理、數(shù)據(jù)壓縮技術(shù)的不斷提升,ffmpeg實(shí)時(shí)視頻傳輸系統(tǒng)的應(yīng)用將在各個(gè)領(lǐng)域發(fā)揮重要作用。

參考文獻(xiàn):

[1] 王建,林楚婷.基于4G數(shù)據(jù)傳輸模塊的數(shù)據(jù)采集傳輸系統(tǒng)設(shè)計(jì)[J].工業(yè)控制計(jì)算機(jī),2020,33(2):37,40.

[2] 遲穎.基于ARM和OpenCV的視頻監(jiān)控系統(tǒng)設(shè)計(jì)[D].大連:大連海事大學(xué),2016.

[3] 楊培凱.無線圖像傳輸在糧蟲檢測中的應(yīng)用[D].武漢:武漢輕工大學(xué),2016.

[4] Keys R.Cubic convolution interpolation for digital image processing[J].IEEE Transactions on Acoustics,Speech,and Signal Processing,1981,29(6):1153-1160.

[5] 閆春秀.基于行車記錄儀的視頻監(jiān)控存儲策略的研究與實(shí)現(xiàn)[D].成都:電子科技大學(xué),2020.

【通聯(lián)編輯:梁書】

猜你喜歡
系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機(jī)系統(tǒng)
ZC系列無人機(jī)遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統(tǒng)
基于UG的發(fā)射箱自動化虛擬裝配系統(tǒng)開發(fā)
半沸制皂系統(tǒng)(下)
FAO系統(tǒng)特有功能分析及互聯(lián)互通探討
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
一德系統(tǒng) 德行天下
PLC在多段調(diào)速系統(tǒng)中的應(yīng)用
主站蜘蛛池模板: 国产极品美女在线观看| 成人精品视频一区二区在线| 日韩欧美国产成人| 亚洲天堂久久新| 嫩草国产在线| 日本人又色又爽的视频| 成年人福利视频| 久草性视频| 国国产a国产片免费麻豆| 2018日日摸夜夜添狠狠躁| 日本www在线视频| 97精品久久久大香线焦| 国产91精选在线观看| 国产精品白浆在线播放| AV熟女乱| 亚洲一区免费看| 国产乱子伦精品视频| 97一区二区在线播放| 欧美精品另类| 亚洲国产日韩视频观看| 亚洲日韩欧美在线观看| 亚洲天堂福利视频| 国产农村1级毛片| 91麻豆精品视频| 久久美女精品国产精品亚洲| 日韩欧美国产另类| 成色7777精品在线| 国产永久在线观看| 国产91无毒不卡在线观看| 久久久久人妻一区精品| 91综合色区亚洲熟妇p| 欧美成人午夜影院| 国产在线欧美| 国产精品久久自在自2021| 亚洲天堂区| 欧美翘臀一区二区三区| 97国内精品久久久久不卡| 又粗又大又爽又紧免费视频| 最新国产精品第1页| 欧美人人干| 日韩午夜福利在线观看| 亚洲天堂伊人| 亚洲无码37.| 婷婷综合缴情亚洲五月伊| 国产美女在线观看| 国产SUV精品一区二区6| 中文字幕无码制服中字| 亚洲αv毛片| 伊人大杳蕉中文无码| 亚洲欧美成人网| 凹凸精品免费精品视频| 亚洲欧洲天堂色AV| 欧美精品成人| 国产原创演绎剧情有字幕的| 国产乱子伦精品视频| 国产色婷婷| 国产精品天干天干在线观看| 亚洲成人在线免费| 久久久波多野结衣av一区二区| 一级黄色片网| 韩日无码在线不卡| 亚洲视频二| 精品国产亚洲人成在线| 日韩AV无码一区| 蜜臀AVWWW国产天堂| 三级国产在线观看| 九月婷婷亚洲综合在线| 青青青伊人色综合久久| 在线欧美一区| 亚洲最新网址| 天天色天天综合| 国产成人精品日本亚洲77美色| 黄色网页在线观看| 国产在线视频导航| 看看一级毛片| 欧美在线精品怡红院| 五月天香蕉视频国产亚| 国产高清在线精品一区二区三区| 日本不卡在线视频| 国产在线视频导航| 亚洲国产无码有码| 亚洲国产欧洲精品路线久久|