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

嵌入式視頻監控系統終端軟件設計與實現

2015-10-19 00:33:38王慧州浙江工業大學信息工程學院浙江省通信網技術應用研究重點實驗室浙江杭州310023
網絡安全與數據管理 2015年6期
關鍵詞:嵌入式

王慧州,彭 宏(浙江工業大學 信息工程學院 浙江省通信網技術應用研究重點實驗室,浙江 杭州 310023)

嵌入式視頻監控系統終端軟件設計與實現

王慧州,彭宏
(浙江工業大學 信息工程學院 浙江省通信網技術應用研究重點實驗室,浙江 杭州 310023)

設計并實現了基于嵌入式Linux和TSM320DM365處理器平臺的實時視頻監控系統終端。首先介紹了視頻監控系統的總體框架,從可擴展性以及實用性上設計了嵌入式終端軟件的總體框架;接著闡述了終端軟件上音視頻采集發送模塊的設計與實現方案;最后對該嵌入式終端進行測試,驗證其實際效果。

嵌入式;H.264;G711;DM365;RTP

0 引言

隨著嵌入式技術、圖像處理技術、網絡通信技術的不斷發展以及人們的安防意識日益提高,通過實時視頻傳輸系統對現場監控的應用越來越廣泛。基于ARM的視頻監控系統因其體積小、功能強、功耗低、性價比高等特點,被廣泛地應用在交通道路、學校、小區、機場等場所。因此,對基于嵌入式的網絡監控系統終端的研究具有很重要的社會和實際應用價值[1]。本文根據實際需求,設計并實現了基于DM365的網絡視頻監控系統終端,它是網絡視頻監控系統中的音視頻獲取源,集成了音視頻采集編碼、語音解碼播放、實時傳輸和信令控制等功能。本文主要闡述了終端系統軟件框架的設計與主要功能模塊的實現。

1 系統結構介紹

整個視頻監控系統[2]由三部分組成:嵌入式終端、服務器平臺和客戶端。系統結構框架如圖1所示。

圖1 系統結構框圖

嵌入式終端負責采集音視頻數據,對音視頻數據進行壓縮編碼,并將編碼壓縮數據通過3G/WLAN網發送至流媒體服務器。服務器平臺由流媒體服務器、SIP信令服務器和FTP服務器三部分組成。流媒體服務器負責轉發音視頻流,SIP信令服務器負責終端與平臺、終端與客戶端之間的信息交互,FTP服務器負責圖像文件信息的存儲備份。客戶端主要實現實時監控和終端控制功能,通過客戶端可對終端設備進行實時的視頻碼率幀率控制。整個系統為嵌入式視頻監控提供了良好的解決方案,能夠廣泛地應用在視頻監控領域中。

2 嵌入式終端軟件框架設計

嵌入式終端軟件開發基于 MontaVista Linux嵌入式操作系統,它基于Linux內核,具有高效、實時、穩定、內核可裁剪等特點[3]。同時利用 Linux系統提供的進程間通信機制可方便地實現各功能模塊之間的數據通信。嵌入式終端軟件平臺包括視頻采集編碼模塊、音頻采集編碼解碼模塊、RTP模塊、信令控制模塊以及其他的功能模塊等。終端軟件總體框架如圖2所示。

圖2 終端軟件總體框架圖

SIP信令模塊負責與服務器平臺的信令交互。信令模塊將應用管理模塊的信息進行SIP信令封裝并發送至SIP服務器;同時解析接收的SIP信令,將控制信息通過本地socket發送至應用管理模塊進行調度。

應用管理模塊負責調度各個功能模塊。管理模塊收集各個功能模塊的交互信息,將交互信息進行封裝,發送至SIP信令控制模塊,從而實現與服務器平臺的信令交互;與此同時,管理模塊還將接收到的控制信息進行解析,根據控制信息調度相應的功能模塊。在各功能模塊中,RTP模塊為主要模塊,負責音視頻數據的RTP封包、發送。

音視頻采集模塊負責實時的音視頻數據采集。該模塊采集音視頻數據,并對其進行編碼,通過 Linux共享內存機制實現與RTP模塊的數據交互。

該軟件框架中各功能模塊單獨實現,互不影響,可根據具體需求方便地添加和刪除功能模塊,同時各個模塊均由應用管理模塊進行調度統籌,便于管理。

3 音視頻功能模塊的設計與實現

嵌入式設備作為視頻監控系統的終端,需要完成語音與視頻的數據采集和發送,一次成功的視頻監控請求應當包含控制信息接收解析、數據流的發送和接收等。嵌入式終端音視頻功能模塊主要包括音視頻采集編碼模塊、RTP模塊,模塊間通過Linux進程間通信機制實現數據與控制信息的交互。

圖3所示為一次音視頻請求后音視頻相關模塊的處理流程。客戶端發起視頻請求后,SIP信令模塊將接收到服務器轉發的視頻請求信令,SIP信令在經過信令模塊的解析之后,其攜帶的控制消息將到達應用管理模塊;管理模塊解析音視頻請求控制消息,通知RTP模塊;RTP模塊開啟兩個線程用于處理音視頻數據,發送線程負責從共享內存讀取音視頻數據并進行RTP打包發送,接收線程接收流媒體服務器轉發的語音數據包并進行解碼播放。

圖3 音視頻監控流程

本文選用TI公司采用達芬奇技術的數字媒體處理器TMS320DM365作為主芯片。為了方便音視頻采集編碼的應用程序開發,TI針對達芬奇平臺提供了達芬奇多媒體應用程序接口 (Davinci Multimedia Application Interface,DMAI),DMAI封裝了底層的驅動,并且提供了易于程序開發的編程接口[4]。這使得應用程序不再關心底層硬件對于某個操作的具體實現,大大簡化了應用程序的開發。本文音視頻采集編碼模塊的大部分就是調用DMAI接口實現的。

3.1視頻采集編碼模塊實現

嵌入式終端接收到視頻請求信令之后,視頻采集編碼模塊進行視頻數據的采集,將采集的視頻數據進行H.264編碼,寫入共享內存,供RTP模塊讀取。視頻采集模塊采用多線程工作機制[5],主線程負責整個流程控制,視頻采集編碼的具體實現在 Capture線程、Video線程和Write線程中完成,三個線程通過管道進行線程間通信。

Capture線程負責采集原始視頻數據,關鍵代碼如下:

hCapture=Capture_create(hBufTab,&cAttrs)//創建一個視頻采集設備實例

Capture_get(hCapture,&hCapBuf)//從視頻采集設備獲取采集到的一幀原始數據

Fifo_put(envp->hOutFifo,hBuf)//將存有原始數據的//緩沖指針寫入hOutFifo管道中,供 video線程讀取

Fifo_get(envp->hInFifo,&hDstBuf)//從hInFifo管道讀取由Video線程寫回的緩存指針

Capture(hCapture,hCapBuf)//告知 hCapture,Capture

//線程已經完成一次操作,等待 hCapture句柄再次捕獲//一幀原始數據

Video線程負責對采集的原始視頻數據進行 H.264編碼,關鍵代碼如下:

hVe1=Venc1_create(hEngine,envp->videoEncoder,params,dynParams)//創建H.264視頻編碼器

Fifo_get(envp->hCaptureOutFifo,&hCapBuf)//從管道讀取存有原始數據的緩沖指針

Fifo_get(envp->hWriterOutFifo,&hDstBuf)//從管道讀取 Write線程寫入的緩沖指針

Venc1_process(hVe1,hCapture,hDstBuf)//將一幀原始視頻數據進行 H.264編碼

Fifo_put(envp->hWriterInFifo,hDstBuf)//將編碼數據緩沖指針寫入管道,供write線程讀取

Fifo_put(envp->hCaptureInFifo,hCapBuf)//將緩沖指針寫回管道,供 capture線程使用

Write線程負責將編碼的視頻數據寫入共享內存,由RTP模塊讀取打包發送。關鍵代碼如下:

shm_pn=createShm(SHM_DIR,SHARE_SIZE)//創建共享內存

Fifo_get(envp->hInFifo,&hOutBuf)//從管道讀取一幀編碼的視頻數據

wirteShm(shm_pn,Buffer_getUserPtr(hOutBuf),Buffer_get-NumBytesUsed(hOutBuf))//將編碼數據寫入共享內存

Fifo_put(envp->hOutBuf,hOutBuf)//將緩沖指針寫回管道

3.2音頻采集解碼編碼模塊實現

音頻處理模塊由采集編碼和解碼播放兩部分組成,通過與上層RTP模塊的交互實現雙向語音功能。在接收到視頻請求信令之后,音頻處理模塊創建兩個線程用于處理語音數據,Speech線程負責語音數據的采集、G711編碼,SpeechDec線程負責對 G711數據進行解碼、播放。兩功能模塊獨立工作,互不影響。

Speech線程主要代碼如下:

Shm_audio=createShm(AUDIO_SHM_DIR,AUDIO_SHARE _SIZE)//創建共享內存

hSe1=Senc1_create(hEngine,envp->speechEncoder,params,dynParams)//創建g711編碼器

hSound=Sound_create(&sAttrs)//創建一個音頻捕捉設備實例

Sound_read(hSound,hInbuf)//讀取音頻數據到緩沖區

Senc1_process(hInbuf,hOutBuf)//將PCM音頻數據進行G711編碼

writeShm(shm_audio,Buffer_getUserPtr(hOutBuf),Buffer_ getNumBytesUsed(hOutBuf)//將音頻數據寫入共享內存

SpeechDec線程實現過程與Speech線程類似,這里不再贅述。

3.3RTP模塊設計與實現

RTP模塊實現RTP數據包的發送和接收功能,通過與信令控制模塊的信息交互來完成發送、接收線程的創建與結束。發送線程從共享內存讀取H.264數據和G711數據,并將編碼音視頻數據進行RTP打包發送。

音頻接收線程在接收到RTP數據后,由于網絡傳輸導致數據包到達的順序具有不確定性,因此需要對語音數據進行緩存排序。首先將G711語音數據包放入緩沖隊列中,通過RTP包的序號進行優先級排序。然后取緩沖隊列音頻數據,寫入共享內存,供音頻解碼播放模塊讀取播放。合適的緩沖區大小設置尤為重要,緩沖隊列設置過小會導致語音包亂序,語音質量較差;緩沖隊列設置過大,語音延時較大,用戶體驗差。需要根據實際網絡狀況和用戶需求設置緩沖隊列大小。

4 視頻監控測試

嵌入式設備、PC客戶端通過3G/WLAN網向服務器平臺注冊登錄,進行視頻監控功能測試。客戶端發起視頻請求并成功之后,可以觀看終端設備采集的視頻,并在開啟音頻請求之后實現與采集設備終端的雙向語音通信。測試結果表明,視頻畫面清晰流暢,可進行雙向語音通信,語音質量較好。視頻監控效果如圖4所示。

Design and im plementation of a video monintoring term inal softw are based on embedded system

Wang Huizhou,Peng Hong
(Zhejiang Provincial Key Laboratory of Communication Networks and Application,College of Information Engineering,Zhejiang Univerisity of Technology,Hangzhou 310023,China)

Thispaper designsandimplementsareal-timevideomonintoringsystemterminal basedonLinuxand TSM320DM365.Firstly,it introduces the system framework.According to the scalability and usability,it designs a general framework for embedded terminal software.Then it describes the design and implementation of programs on the terminal software to send audio and video.Finally,the embedded terminal is test to verify its practical effect.

embedded;H.264;G711;DM365;RTP

TP37

A

1674-7720(2015)06-0072-03

猜你喜歡
嵌入式
Focal&Naim同框發布1000系列嵌入式揚聲器及全新Uniti Atmos流媒體一體機
TS系列紅外傳感器在嵌入式控制系統中的應用
電子制作(2019年7期)2019-04-25 13:17:14
基于嵌入式Linux內核的自恢復設計
嵌入式系統通信技術的應用
電子制作(2018年18期)2018-11-14 01:48:16
嵌入式PLC的設計與研究
電子制作(2018年16期)2018-09-26 03:27:18
搭建基于Qt的嵌入式開發平臺
基于嵌入式系統Windows CE的應用程序開發
嵌入式單片機在電機控制系統中的應用探討
電子制作(2017年8期)2017-06-05 09:36:15
嵌入式軟PLC在電鍍生產流程控制系統中的應用
電鍍與環保(2016年3期)2017-01-20 08:15:32
Altera加入嵌入式視覺聯盟
主站蜘蛛池模板: 久久国产亚洲欧美日韩精品| 影音先锋丝袜制服| 亚洲av成人无码网站在线观看| 色天天综合| 性欧美精品xxxx| 在线看片中文字幕| 伊伊人成亚洲综合人网7777| a国产精品| 国产剧情一区二区| 国内精品免费| 国产黑丝一区| 欧美日韩成人| 国产剧情无码视频在线观看| 九九热视频在线免费观看| 毛片免费试看| 亚洲人成网站观看在线观看| 久久亚洲国产最新网站| 国产精品不卡永久免费| 谁有在线观看日韩亚洲最新视频| Aⅴ无码专区在线观看| 亚洲欧美成人在线视频| 国产在线精彩视频二区| 91在线国内在线播放老师| 欧美乱妇高清无乱码免费| 老司机午夜精品视频你懂的| 97在线免费| 毛片免费在线| 8090成人午夜精品| 五月天在线网站| 在线中文字幕日韩| 97免费在线观看视频| 91外围女在线观看| 欧美高清日韩| 无码区日韩专区免费系列| 免费看av在线网站网址| 国产女人在线视频| 91在线视频福利| 精品国产乱码久久久久久一区二区| 高清无码一本到东京热| 日本爱爱精品一区二区| 久久精品女人天堂aaa| 色偷偷av男人的天堂不卡| 在线观看免费AV网| 一区二区三区毛片无码| 国产高潮视频在线观看| 毛片手机在线看| 在线看片免费人成视久网下载| 国产青榴视频| 国产亚洲欧美在线专区| 欧美日韩国产高清一区二区三区| 亚洲综合色吧| 久久国产亚洲偷自| 免费无码网站| 国产真实乱了在线播放| 欧美日韩国产精品综合 | 99热精品久久| 黄色一级视频欧美| 亚洲日产2021三区在线| 国产又爽又黄无遮挡免费观看| 国产高清不卡视频| 免费国产无遮挡又黄又爽| 四虎成人在线视频| 91亚洲精品国产自在现线| 蜜芽国产尤物av尤物在线看| 91精品国产91久久久久久三级| 国产成人久视频免费| 久久永久精品免费视频| 国产91高跟丝袜| 亚洲综合第一区| 无码'专区第一页| 在线看片国产| 亚洲AV无码乱码在线观看裸奔 | 精品国产一区二区三区在线观看| 亚洲精品国产自在现线最新| 丁香五月亚洲综合在线| 日韩免费视频播播| 欧美日韩在线观看一区二区三区| 精品无码一区二区三区电影| 国产福利一区视频| 免费无码AV片在线观看国产| 久久久久无码精品| 国产精品成人免费综合|