亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        一種雙網(wǎng)口冗余的視頻編碼系統(tǒng)的設計與實現(xiàn)

        2018-02-28 02:51:10蘇威積
        信息安全研究 2018年2期
        關鍵詞:描述符解碼端口

        蘇威積 杜 煒 李 劍

        1(北京航天愛威電子技術有限公司 北京 100854)2 (北京郵電大學計算機學院 北京 100876)

        1 背景技術

        隨著互聯(lián)網(wǎng)的發(fā)展,高效、安全地傳遞信息及實現(xiàn)信息的共享已成為現(xiàn)代社會發(fā)展的一個必要條件.視頻編碼系統(tǒng)作為視頻安防監(jiān)控系統(tǒng)[1]的一部分,對網(wǎng)絡有實時性的要求,是不允許網(wǎng)絡出現(xiàn)故障的.但網(wǎng)絡涉及到的環(huán)節(jié)非常多,任何一個環(huán)節(jié)出現(xiàn)問題都會導致整個網(wǎng)絡傳輸運行的停止.所以應該給用戶提供冗余的網(wǎng)絡、冗余的通道等確保網(wǎng)絡的暢通[2].在我們的視頻編碼系統(tǒng)里,編碼板與交換設備實現(xiàn)通信時,通過網(wǎng)線將它們的網(wǎng)口連接起來.其中,交換設備網(wǎng)口中的邏輯端口通過設置的硬件接口與編碼板設備實現(xiàn)數(shù)據(jù)傳輸.在網(wǎng)口中1個邏輯端口的通信通路出現(xiàn)故障時,可以切換至另一個邏輯端口的通信通路,實現(xiàn)直接、高效的網(wǎng)口故障防護.在視頻編碼系統(tǒng)中使用雙網(wǎng)口冗余方法[3]可以提高鏈路可靠性,冗余設備的成員能夠相互動態(tài)備份.當某一個鏈路中斷時其他成員可以迅速接替其工作,切換在1 s內(nèi)完成,而用戶并不會感覺到.

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

        現(xiàn)在實現(xiàn)雙網(wǎng)口冗余的通常做法是用戶設備上只設置1個硬件接口,通過特制的I轉(zhuǎn)2網(wǎng)線連接到交換設備的2個硬件接口上,交換設備上設置內(nèi)置或外置的開關器件.當交換設備的1個邏輯端口的通信通路發(fā)生故障時,通過切換開關,斷開故障邏輯端口這一通信通路的物理連接,將連接通路切換至另一個邏輯端口的通信通路,以保證數(shù)據(jù)的傳輸[4].這種方式用戶設備只要有1個接口即可,切換用的開關器件集成在交換設備上.但是由于開關器件的引入,將會影響信號傳輸?shù)目煽啃裕瑢е率瞻l(fā)信號的實際波形無法達標.開關控制狀態(tài)變換常常引起各種信號震蕩,且開關器件本身的可靠性導致其電氣防護特性也是有限的,因此這種方式會導致交換設備本身的可靠性降低[5].所以我們需要通過軟件控制來使用雙網(wǎng)口冗余技術,以保證視頻編碼系統(tǒng)的穩(wěn)定性及實時性.

        2 系統(tǒng)概況

        本文的目的是使用海思Hi353x開發(fā)板實現(xiàn)一種雙網(wǎng)口冗余的視頻編解碼系統(tǒng),使得該系統(tǒng)穩(wěn)定可靠[6].Hi3531是針對多路D雙網(wǎng)口1和多路高清DVR和NVR產(chǎn)品應用開發(fā)的一款專業(yè)高端SOC芯片.Hi3531內(nèi)置高性能雙核A9處理器、高達5路1080P實時多協(xié)議編解碼能力的引擎和專用TOE網(wǎng)絡加速模塊,并且支持2個GMAC接口,可以實現(xiàn)雙網(wǎng)口冗余.

        本文采用的技術方案如下:

        雙網(wǎng)口冗余采用的方法是交換設備上的2個邏輯端口分別對應2個硬件接口,2個硬件接口分別通過2根網(wǎng)線與交換設備上的2個硬件接口配合,連接成2個通路,2個通路互相冗余,一旦一個邏輯端口對應的通路壞掉,則可以自動切換至另一個邏輯端口對應的通路上去.這種雙網(wǎng)口冗余就是把2個網(wǎng)口當成1個網(wǎng)口使用,起到冗余的作用.

        雙網(wǎng)口冗余[7]使用的技術是鏈路聚合技術,也稱為捆綁技術.其實是將幾條物理鏈路“組合”成邏輯上的一條數(shù)據(jù)通道,稱為1條聚合鏈路.將交換機與防火墻之間的2條物理鏈路link1和link2組成1條邏輯鏈路,該鏈路在邏輯上是一個整體,鏈路內(nèi)部組成和傳輸細節(jié)對上層是透明的,對外不再使用物理端口號fe1或fe2,而是使用冗余網(wǎng)口號(可命名為rd1).冗余網(wǎng)口對上層來說是一個整體,冗余設備由什么物理設備組成、物理設備之間如何進行協(xié)調(diào)動態(tài)備份,對上層都是透明的.冗余網(wǎng)口內(nèi)部聚合的物理鏈路共同完成收發(fā)任務并相互備份,只要還存在能正常工作的成員,整個傳輸鏈路就不會失效.也就是說如果link1失效,它的任務會迅速轉(zhuǎn)移到link2上,因此編碼板與交換設備之間的連接不會中斷.這種實現(xiàn)雙網(wǎng)口冗余的技術簡單易用,很適用于雙接口的設備上.

        在本系統(tǒng)中,整個雙網(wǎng)口冗余的視頻編解碼系統(tǒng)包括視頻編碼模塊、視頻解碼模塊、冗余網(wǎng)絡模塊和IO傳輸模塊,如圖1所示.

        3 系統(tǒng)設計

        3.1 視頻編碼模塊

        在視頻編碼模塊,我們使用了海思Hi3531開發(fā)板進行視頻編碼,編碼模塊主要由圖2所示的4個部分組成,分別為視頻輸入、視頻處理、視頻編碼、視頻輸出[8].

        1) 視頻輸入(VI).將芯片外的視頻數(shù)據(jù),通過ITU-R BT656/601/1120接口或digital camera接口,存入到指定的內(nèi)存區(qū)域.在此過程中,VI可以對接收到的原始視頻圖像數(shù)據(jù)進行裁剪、水平垂直縮小和水平垂直翻轉(zhuǎn),并輸出多個不同分辨率的視頻流及對應的直方圖信息.

        2) 視頻處理(VPSS).該部分完成視頻的圖像增強、去噪、De-Interlace、OSD疊加、銳化等功能.也就是對輸入的視頻進行前期的處理.

        3) 視頻編碼(VENC).本部分支持多路實時編碼,且每路編碼彼此獨立,編碼協(xié)議和編碼profile可以不同.在支持視頻編碼的同時,調(diào)度VPP模塊對視頻圖像進行視頻前處理,調(diào)度REGION模塊對編碼圖像內(nèi)容進行疊加和遮擋.VENC的數(shù)據(jù)流程如圖3所示.

        其中編碼通道可分為主編碼通道和次編碼通道,能夠同時輸出2路碼流:一路主碼流,另一路為次碼流.

        4) 視頻輸出(VO).該部分是本模塊的最后一步,輸入的視頻經(jīng)過VNEC模塊編碼后,由輸出模塊傳給交換設備,在這個過程中采用雙網(wǎng)口冗余來進行傳輸,保證了傳輸?shù)目煽啃?

        圖2 視頻編碼模塊

        圖3 VENC的數(shù)據(jù)流程圖

        這4個部分組成了本系統(tǒng)的視頻編碼模塊,完成了視頻從輸入到編碼、再輸出的整個過程.

        3.2 視頻解碼模塊

        在視頻解碼模塊,我們使用了海思Hi3536開發(fā)板進行視頻編碼,解碼模塊主要由圖4所示的4個部分組成,分別為視頻輸入、視頻處理、視頻解碼、視頻輸出[9].

        1) 視頻輸入(VI).將芯片外的視頻數(shù)據(jù),也就是視頻編碼模塊得到編碼后的視頻通過IO模塊傳輸過來,存入到指定的內(nèi)存區(qū)域.

        圖4 視頻解碼模塊

        2) 視頻處理(VPSS).該部分完成視頻的圖像增強、去噪、De-Interlace、OSD疊加、銳化等功能.也就是對輸入的視頻進行前期的處理,同編碼模塊的視頻處理部分.

        3) 視頻解碼(VDEC).本部分支持多路實時解碼,且每路解碼彼此獨立,解碼協(xié)議和解碼profile可以不同.其中解碼通道可分為主編碼通道和次編碼通道,能夠同時輸出2路碼流:一路主碼流,一路為次碼流.

        4) 視頻輸出(VO).該部分是本模塊的最后一步,輸入的視頻經(jīng)過VDEC部分解碼以后,由輸出模塊傳給屏幕.

        這4個部分組成了本系統(tǒng)的視頻解碼模塊,完成了視頻從輸入到解碼、再輸出的整個過程,將由編碼模塊傳來的視屏解碼后輸出到屏幕上,完成了視頻安防監(jiān)控系統(tǒng)的最后部分,保障了視頻監(jiān)控系統(tǒng)的穩(wěn)定性.

        3.3 冗余網(wǎng)絡模塊

        雙網(wǎng)口配置設置虛擬為一個網(wǎng)口,實現(xiàn)網(wǎng)口的冗余,其中一個網(wǎng)口壞掉后網(wǎng)絡通信仍可正常使用,實現(xiàn)網(wǎng)口層面的負載均衡和高可用性[10].

        主要是在Linux開發(fā)板上進行配置,具體步驟如下:

        1) 進入網(wǎng)口配置目錄;

        2) 創(chuàng)建雙網(wǎng)口綁定配置文件;

        3) 修改綁定網(wǎng)口(建議:在網(wǎng)口綁定前,先對先前的網(wǎng)口配置信息進行備份),分別修改網(wǎng)口1和網(wǎng)口2的配置;

        4) 配置modprobe參數(shù);

        5) 關閉網(wǎng)絡管理程序.

        3.4 IO傳輸模塊

        在本模塊里我們采用了select[11]模型,這是一種IO多路復用模型.一般網(wǎng)絡程序,使用accept,recv等接口.則服務端,在調(diào)用accept時,如果此時沒有客戶端連接則服務端需要等待.recv也是一樣.這種情況下服務端只能阻塞等待.select模塊,則是使用select函數(shù)去查詢你使用到的socket的狀態(tài).比如,是否有客戶端連接,是否有客戶端發(fā)送數(shù)據(jù).這樣可以針對有數(shù)據(jù)的socket進行操作.避免盲目等待.

        最主要的一個函數(shù)就是select函數(shù).該函數(shù)有5個參數(shù).

        maxfdp:是一個整數(shù)值,是指集合中所有文件描述符(socket)的范圍,即所有文件描述符的最大值加1.

        readfds,writefds,errorfds都是fd_set類型的指針,是1個socket的數(shù)組指針.

        readfds:進行可讀操作查詢的文件描述符的集合,不需要讀操作,則可傳入NULL.

        writefds:進行可寫操作查詢的文件描述符的集合,不需要寫操作,則可傳入NULL.

        errorfds:進行文件異常錯誤查詢的文件描述符,也可以傳入NULL.

        timeout:第一,若將NULL以形參傳入,即不傳入時間結(jié)構(gòu),就是將select置于阻塞狀態(tài),一定等到監(jiān)視文件描述符集合中某個文件描述符發(fā)生變化為止;第二,若將時間值設為0秒0毫秒,就變成一個純粹的非阻塞函數(shù),不管文件描述符是否有變化,都立刻返回繼續(xù)執(zhí)行;第三,timeout的值大于0,這就是等待的超時時間,即select在timeout時間內(nèi)阻塞,超時時間之內(nèi)有事件到來就返回,否則在超時后不管怎樣一定返回.

        返回值:如果有錯誤,則返回值為-1,如果超時返回則返回值為0,如果文件描述符里面有變化,則返回值大于0.

        4 總 結(jié)

        本文描述了一種雙網(wǎng)口冗余的視頻編碼方法及系統(tǒng),是安防視頻系統(tǒng)的一部分,所以要求高實時性和高穩(wěn)定性.我們將視頻通過Hi3531進行視頻編碼后傳給IO模塊輸出,在輸出過程中我們采用了select多路復用實現(xiàn)多路傳輸,并利用冗余模塊保證了一個網(wǎng)口斷掉,視頻可以在另一個網(wǎng)口上繼續(xù)傳輸,視頻傳輸?shù)紿i3536進行解碼,最終輸出到屏幕上.

        [1]雷玉堂. 安防視頻監(jiān)控實用技術[M]. 北京: 電子工業(yè)出版社, 2012

        [2]丁鑫. 基于網(wǎng)絡冗余技術的應用[J]. 工業(yè)控制計算機, 2014, 27(5): 162-162

        [3]王華, 劉冰, 劉煥敏, 等. 一種雙網(wǎng)實時串口通信的設計與實現(xiàn)[J]. 計算機系統(tǒng)應用, 2017, 26(3): 234-238

        [4]劉錫祥, 徐曉蘇, 劉建娟, 等. VxWorks環(huán)境下基于TCP/IP協(xié)議的多網(wǎng)卡數(shù)據(jù)傳輸與雙網(wǎng)卡冗余設計[J]. 工業(yè)儀表與自動化裝置, 2006, 36(3): 30-32

        [5]張士民. 基于TCP/IP網(wǎng)絡環(huán)境下網(wǎng)卡冗余熱備的實現(xiàn)[J]. 信息技術與信息化, 2016, 41(11): 26-28

        [6]皮玉華. 基于海思Hi3531的高清視頻解碼器硬件系統(tǒng)設計[J]. 中國公共安全: 學術版, 2016, 15(2): 124-126

        [7]劉玉賓. 基于VxWorks的雙冗余熱切換以太網(wǎng)的設計與實現(xiàn)[D]. 天津: 天津大學, 2008

        [8]于鳳. 基于Hi3511的H.264編解碼器的設計與實現(xiàn)[D]. 西安: 西安電子科技大學, 2013

        [9]馬林. 基于 H.264的遠程視頻傳輸軟件系統(tǒng)的開發(fā)[D]. 長春: 吉林大學計算機科學與技術學院, 2014

        [10]王哲梁. 基于嵌入式Linux的遠程視頻監(jiān)控系統(tǒng)[D]. 杭州: 杭州電子科技大學, 2014

        [11]劉運強, 王匯源. Socket和多線程在視頻傳輸中的應用[J]. 山東大學學報: 工學版, 2004, 34(2): 46-50

        猜你喜歡
        描述符解碼端口
        《解碼萬噸站》
        基于結(jié)構(gòu)信息的異源遙感圖像局部特征描述符研究
        測繪學報(2022年12期)2022-02-13 09:13:01
        一種端口故障的解決方案
        科學家(2021年24期)2021-04-25 13:25:34
        解碼eUCP2.0
        中國外匯(2019年19期)2019-11-26 00:57:32
        NAD C368解碼/放大器一體機
        Quad(國都)Vena解碼/放大器一體機
        Linux單線程并發(fā)服務器探索
        端口阻塞與優(yōu)先級
        利用CNN的無人機遙感影像特征描述符學習
        初識電腦端口
        電腦迷(2015年6期)2015-05-30 08:52:42
        丝袜美腿人妻第一版主| 不卡国产视频| 最新亚洲av日韩av二区一区| 亚洲天堂av一区二区| 亚洲欧美一区二区成人片| 成熟丰满熟妇高潮xxxxx| 欧美亚洲另类自拍偷在线拍| 女人天堂国产精品资源麻豆| 国产精品女同久久久久电影院| 亚洲av无码av日韩av网站| 亚洲欧美性另类春色| 中文字幕熟女激情50路| 久久婷婷色香五月综合缴缴情| 久久精品无码专区免费青青| 国产91在线精品福利| 精品国产色哟av一区二区三区| 亚洲成av人在线观看网址| 国产精品卡一卡二卡三| 日韩精品欧美激情国产一区| 亚洲精品国产亚洲av| 大屁股人妻女教师撅着屁股| 人妻丰满av∨中文久久不卡| 夫妻一起自拍内射小视频| 日本伊人精品一区二区三区| 国产精品熟女视频一区二区| 中文字幕Aⅴ人妻一区二区苍井空 亚洲中文字幕久久精品蜜桃 | 精品国产一区二区三区香| …日韩人妻无码精品一专区| 欧美日韩亚洲成人| 一本色道久久综合亚州精品 | 亚洲欧美国产日韩制服bt| 亚洲在线视频一区二区| 国产在线无码一区二区三区视频| 日韩精品一区二区三区免费视频| 国产精品反差婊在线观看| 丁香婷婷六月综合缴清| 欧美成免费a级毛片| 久久99精品免费一区二区| 中文字幕亚洲精品综合| 国产果冻豆传媒麻婆精东| 国产日韩成人内射视频|