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

基于Hi3531的NVR軟件平臺的設計與實現

2015-05-05 01:59:39王尚波
電視技術 2015年1期

文 凱,張 潤,王尚波

(1.重慶郵電大學 通信新技術應用研究中心,重慶 400065;2.重慶信科設計有限公司,重慶 400065)

基于Hi3531的NVR軟件平臺的設計與實現

文 凱1,2,張 潤1,王尚波1

(1.重慶郵電大學 通信新技術應用研究中心,重慶 400065;2.重慶信科設計有限公司,重慶 400065)

為了滿足市場對兼容性強和簡單易用的NVR軟件平臺的需求,通過分析和研究Hi3531媒體處理平臺、ONVIF、流媒體、Qt等技術,設計并提出了一種NVR軟件平臺設計方案。介紹了NVR系統和軟件架構的設計方法,重點討論了NVR實時預覽和錄像回放模塊的實現。最后,給出了平臺的運行效果。

NVR;Hi3531;實時預覽;錄像回放

隨著國民安防意識的增強,以及平安城市建設步伐的加快,國內網絡視頻監控進入迅猛的發展時期。但是市面上,由于存在各廠家設備的兼容性差和傳輸距離短等問題,嚴重影響網絡視頻監控系統的普及,標準化和網絡化的NVR軟件平臺已成為研究熱點。

Hi3531平臺由華為海思公司制造,具有8路D1或5路1 080p的解碼能力,同時提供視頻處理功能,能滿足多數視頻監控系統的需求[1]。本NVR系統采用Hi3531平臺,結合Web、流媒體技術、ONVIF和Qt等主要技術,實現了一個具有兼容性好、實用性強的NVR軟件平臺。

1 NVR系統架構

1.1 系統架構概述

NVR以海思Hi3531為媒體處理平臺,采用ONVIF作為信息交互協議。NVR系統設計原理如圖1所示,NVR首先通過ONVIF獲得IPC的媒體URL,流媒體客戶端通過此URL向IPC請求視頻數據,然后將請求到的數據經Hi3531解碼模塊之后顯示。在本地客戶端呈現遠程設備管理、系統管理和錄像回放等功能。NVR同時響應遠程Web客戶端的請求,并通過網絡向遠端的PC用戶轉發IPC的音視頻數據和網絡控制消息,實現遠程實時預覽、遠程錄像、遠程報警、遠程回放及遠程云臺控制等功能。

圖1 NVR系統設計原理

1.2 軟件架構設計

NVR系統軟件架構如圖2所示。

圖2 NVR系統軟件架構

下面簡要介紹NVR的主要模塊:

1)協議服務模塊

本模塊用于實現協議通信服務,由ONVIF協議和Web服務器組成。ONVIF協議描述網絡視頻的接口、數據類型和數據交互的模式[2],Web服務器為網頁瀏覽提供服務。

2)邏輯處理模塊

該模塊負責完成系統的邏輯功能,主要包括錄像回放、實時預覽、系統管理和遠程設備管理等。本模塊的主要任務是實現實時預覽和錄像回放,因為在協議服務模塊中實現了其他邏輯業務,比如遠程設備管理[3]。

視頻解碼模塊主要是通過解碼引擎處理接收到的音視頻數據。為了實現圖像數據的預覽、編碼或抓怕,將解析后的數據發往視頻處理子系統 (Video Processing Sub System,VPSS)進行處理,VPSS可對圖像進行圖像增強、銳化、去噪等處理,并同源輸出多路不同分辨率的圖像數據,最后把數據送到顯示設備上顯示。

錄像回放模塊主要是請求視頻流,按照錄像策略,將視頻數據生成某種特定的格式寫入硬盤,并能通過通道號、日期實現快速錄像查詢。

3)客戶端

系統采用C/S和B/S相結合的架構,客戶端分為Web客戶端和本地客戶端,用于將系統功能以界面的方式呈現給用戶,客戶端通過SOAP協議實現與協議服務模塊之間的通信。Web客戶端用戶只需輸入服務器的IP就能訪問服務器,下載并安裝視頻插件,通過C/S的安全登錄認證,就能登錄服務器并訪問設備。本地客戶端由Qt開發,具有可移植性強,開發周期短、模塊程度高、支持2D/3D圖形渲染等特點[4]。

4)操作系統

操作系統層采用Linux 3.0.8內核,其專門用于海思系列多媒體Soc。該系統具有精簡的內核,媒體處理層驅動在啟動時通過模塊的方式動態加載,因而應用程序具有更高的靈活性。

2 NVR邏輯處理的實現

NVR邏輯處理主要完成系統管理、實時預覽、錄像回放和遠程設備管理等功能,本節重點討論實時預覽模塊和錄像回放模塊。

2.1 實時預覽模塊

實時預覽是NVR最重要的功能之一,該模塊涉及ONVIF、流媒體和解碼等技術。ONVIF主要用于發現設備,獲得設備IP地址、設備能力、碼流令牌等。流媒體則根據碼流令牌獲得碼流的URI,通過URI請求碼流。視頻解碼其是對碼流解壓縮的過程,為了滿足實時性要求,NVR采用的是Hi3531的硬件解碼器。該芯片具有高達5路1 080p實時多協議解碼能力,保證了系統的流暢性和實時性。

1)獲得碼流令牌

碼流分為主碼流和子碼流,通過不同的令牌標記。要獲得碼流令牌,需要完成以下步驟:首先,當攝像頭接入監控網絡中時,會多播包含設備類型、作用域和IP的hello報文。其次,NVR收到報文后,多播包含設備類型和作用域的probe報文。然后,所有在網攝像頭解析報文,提取設備信息查看是否匹配,如果匹配成功,則返回包含設備類型、作用域和IP的match報文。最后,將設備增加到NVR的設備列表中,有了攝像頭的IP地址就能獲得設備的能力,得到設備的媒體服務信息地址mediauri,獲得攝像頭的所有配置文件(profiles)信息,進而獲得碼流令牌profiletoken,格式如:videosource_192_168_1_108_0_000。通過ONVIF獲得碼流令牌,極大的提高了平臺的兼容性。

2)請求碼流

通過碼流令牌,構造流媒體地址URI,格式如:rtsp://192.168.1.134:554/cam/realmonitor?profile=videosource_192_168_1_109_0_000&streamname=108。由于Live555容易擴展,采用它完成RTSP傳輸和接收功能,降低了平臺的開發難度。通過流媒體地址URI與IPC流媒體服務器建立連接,創建RTP/RTCP會話,并持續接收媒體流數據,發往解碼引擎。

3)視頻解碼

視頻解碼器對碼流進行解碼,之后對圖像進行處理,如去噪、銳化和圖像增強等[5]。視頻解碼過程如圖3所示。

2.2 錄像回放模塊

錄像回放模塊是NVR最重要的功能之一,主要包括存儲和回放兩部分。

2.2.1 錄像存儲

1)存儲策略

在錄像存儲的過程中,會頻繁讀寫和刪除文件。頻繁刪除文件會造成大量碎片,因而嚴重影響文件的讀寫速度,造成硬盤的空間利用率低。早期的解決方法是把錄像文件都保存在同一個文件中,處理方式簡單,可以避免碎片。但是由于視頻數據連續存儲,無法實現隨機的錄像回放,會嚴重影響錄像查詢的時間。并且沒有記錄視頻幀的時間戳信息,無法實現同步[6]。

為解決這些問題,本文根據硬盤存儲容量,將整個硬盤空間預先分割成若干固定大小的數據文件和索引文件,盡量確保同一通道的錄像文件在硬盤存儲地址的連續性,以減少碎片。并且一個錄像文件只存放相同通道的視頻數據,便于錄像查詢。當硬盤的剩余空間小于某一特定值時,覆蓋最早的錄像文件。如果錄像文件大小超出鎖設定大小時,在新的錄像文件中繼續錄像。

2)文件結構

在存儲放視頻幀的時候,分別將視頻數據寫入數據文件,索引信息寫入索引文件。錄像存儲所涉及的文件包括硬盤掛載信息文件mountinfo、管理文件recordtotalinfo.index、數據文件recorddata.data和索引文件recordindex.index,下面將對每個文件的組織和功能進行分析:

(1)mountinfo文件主要記錄硬盤掛載的時間。

(2)recordtotalinfo.index文件用于管理整個分區,它記錄了分區中所有數據文件和索引文件的信息。

(3)recordindex.index索引文件主要存放若干片段和索引文件狀態信息。片段由幀接收到的時間、幀在數據文件的位置、片段大小和錄像類型組成,索引文件狀態信息包括URL、第一個片段的開始時間、最后一個片段的開始時間、包的大小、數據文件中已存放幀的大小、片段的總大小、狀態標志、片段的總數量、每個數據頭后關鍵幀的數量以及數據頭的數量。

(4)recorddata.data數據文件用于存放視頻幀,包括關鍵幀和非關鍵幀,由片段頭部、幀頭部和數據3部分組成。片段頭部由數據段的開始時間、幀率、寬度、高度、幀數、每幀的長度,幀頭部包括幀的類型、數據長度和時間戳。

3)存儲實現

啟動一個錄像任務,分配一塊錄像緩沖區recordbuffer,Rtsp客戶端向IPC請求視頻數據,接收到一幀數據時,判斷該幀是否需要進行錄像存儲,如果需要則將視頻數據存儲到分配好的recordbuffer中。啟動錄像存儲線程,判斷緩沖區是否已滿,如果是則把緩沖區中的所有數據寫入數據文件,把緩沖區的片段和和索引文件狀態信息寫入索引文件中,否則繼續接收一下幀。

在錄像存儲實現中,采用recordbuffer緩存機制,即在視頻流寫到數據文件的過程中,引入了recordbuffer。利用這一機制,降低了讀寫硬盤的頻率,提高了系統性能。在數據文件寫滿時,可先將視頻流存放在緩存中,然后再打開空余的數據文件繼續寫入,防止在切換數據文件時視頻流的丟失,保證視頻流的完整性[6]。

此外,將緩存區的內容寫入數據文件前,需先從對應索引文件狀態消息中獲得數據文件的大小和數據文件已存放幀的大小,與緩沖區的大小進行判斷,設置數據文件的狀態標志(已滿、空閑和正在使用)。索引文件的狀態信息中記錄了最早的錄像時間,當所有的數據文件中錄滿之后,可以覆蓋最早的數據文件,提高了錄像的連續性和硬盤空間的利用率[6]。

2.2.2 錄像回放

1)查詢錄像

當查詢某通道某特定時刻的視頻錄像時,會啟動一個查詢線程。首先,遍歷系統中的所有分區,判斷分區的掛載時間是否滿足查詢時間的要求。其次,遍歷硬盤的所有索引文件,找到與待查詢通道相同的URL索引文件。最后,遍歷索引文件,判斷索引文件狀態信息中第一個片段的起始時間和最后一個片段的起始時間是否在查詢時間范圍內,如果是,則將相應的片段保存到單向錄像查詢鏈表中。錄像查詢流程圖如圖4所示。

圖4 錄像查詢流程圖

2)播放視頻錄像

首先,根據開始播放時間,在錄像查詢鏈表找到對應的錄像片段;其次,根據錄像片段的開始位置,確定數據幀在數據文件的起始位置;然后,讀取數據信息,包括數據長度、幀率、時間戳、寬度、高度、時間。最后,將數據送到解碼通道,播放錄像文件。

3 Web客戶端軟件的實現

Web客戶端運行效果如圖5所示。Web客戶端分實時預覽、錄像查詢、告警設置和系統配置4部分。實時預覽界面由設備列表、視頻顯示區、分屏區和云臺控制區組成,視頻顯示區可最多顯示16路視頻。云臺控制區用于操作云臺,如旋轉、變倍和變焦等。錄像查詢主要是查詢和播放Web服務器的錄像文件。報警設置用于配置告警信息,如:告警時間段、錄像時長、抓圖等。系統配置用于用戶管理、網絡設置、錄像配置等[7]。

圖5 視頻監控客戶端的運行效果圖(截圖)

4 小結

目前,本NVR軟件平臺已經商用,兼容性、實時性、穩定性和操作性都等到了廣泛認可。文中給出了軟件平臺的架構,以及視頻解碼器和錄像回放實現的基本方法,對安防領域的開發者具有一定參考價值。隨著安防領域的迅猛發展,本文提出的軟件平臺設計方法具有一定的應用價值。

[1]深圳海思半導體有限公司. Hi3531/Hi3532媒體處理軟件開發參考[Z].深圳:深圳海思半導體有限公司,2012.

[2] ONVIF Core specification version 2.0[S]. 2010.

[3]徐飛明.基于ONVIF協議的NVR軟件平臺的設計與開發[D].杭州:浙江大學,2012.

[4]HUANG Y, LI J, XU F, et al. Intelligent fault diagnosis system in large industrial networks[C]//Proc. IEEE International Conference on Apperceiving Computing and Intelligence Analysis. Chengdu: IEEE Press, 2008:319-323.

[5]深圳海思半導體有限公司. Hi3531 H.264編解碼處理器簡介[Z].深圳:深圳海思半導體有限公司, 2012.

[6]司小海,馬躍.數字視頻系統錄像與回放技術的研究[EB/OL].[2014-04-24].http://www.paper.edu.cn/html/releasepaper/2012/11/363/.

[7] 郭聳,洪炳镕,陳鳳東.基于嵌入式Linux和Web服務器的網絡視頻監控系統[J].哈爾濱商業大學學報:自然科學版, 2005, 21(6):736-738.

責任編輯:李 薇

Design and Implementation of NVR Software Platform Based on Hi3531

WEN Kai1,2, ZHANG Run1,WANG Shangbo1

(1.ResearchCentreforApplicationofNewCommunicationTechnologies,ChongqingUniversityofPostsandTelecommunications,Chongqing400065,China;2.ChongqingInformationTechnologyDesigningCo.,Ltd.,Chongqing400065,China)

In order to meet the market demand for compatibility and facility of the NVR software platforms, through the method of analyzing and researching Hi3531 media processing platform, ONVIF, streaming media, Qt technology, et al, a design of a NVR software platform is put forward. The architecture of NVR system and software are explained. The realization of NVR video decoding and video playback module are emphasized. Finally, the result of the platform is given.

NVR; Hi3531; live preview; playback

TN946

A

10.16280/j.videoe.2015.01.016

2014-05-31

【本文獻信息】文凱,張潤,王尚波.基于Hi3531的NVR軟件平臺的設計與實現[J].電視技術,2015,39(1).

主站蜘蛛池模板: 精品久久久久成人码免费动漫| 国产在线视频二区| 中文字幕在线欧美| 欧美三级不卡在线观看视频| av在线手机播放| 97视频在线精品国自产拍| 思思热精品在线8| 一本大道视频精品人妻 | 国产一区在线视频观看| 国产日韩欧美在线视频免费观看 | 亚洲动漫h| 国产自在自线午夜精品视频| 最近最新中文字幕在线第一页| 亚洲日本中文综合在线| 伊伊人成亚洲综合人网7777| 国产成人精品在线1区| 91青青草视频在线观看的| 亚洲无码高清一区二区| 久久国产精品影院| 丁香婷婷在线视频| 午夜日韩久久影院| 91一级片| 午夜精品久久久久久久2023| 99这里只有精品在线| 精品综合久久久久久97超人| 沈阳少妇高潮在线| 国产日本一线在线观看免费| 无码内射中文字幕岛国片| 欧美激情综合一区二区| 91香蕉视频下载网站| 国产美女人喷水在线观看| 国产亚洲欧美日本一二三本道| 亚洲国产看片基地久久1024 | 中国国产A一级毛片| 亚洲一区无码在线| 精品国产免费观看一区| 亚洲无码37.| 国产欧美亚洲精品第3页在线| 91欧洲国产日韩在线人成| 99er精品视频| 青青草a国产免费观看| 超清无码一区二区三区| 日韩欧美91| 91福利免费视频| 亚洲精品手机在线| 99国产精品国产| 国产色婷婷| 1级黄色毛片| 99视频在线免费| 2020最新国产精品视频| 亚洲天堂网在线视频| 国产精品亚洲专区一区| 国产精品欧美在线观看| 亚洲大学生视频在线播放| 日本高清有码人妻| 在线观看国产精品日本不卡网| 欧美啪啪一区| 日本精品视频一区二区| AV无码国产在线看岛国岛| 亚洲国产日韩在线观看| 国产女人18水真多毛片18精品 | 欧美一区二区人人喊爽| 中文字幕66页| 国产精品一线天| 久久精品中文字幕免费| 毛片三级在线观看| 亚洲视频三级| 亚洲乱码视频| 国产乱人激情H在线观看| 亚洲愉拍一区二区精品| 精品超清无码视频在线观看| 永久在线精品免费视频观看| 国产精品自在在线午夜区app| 国产精品爽爽va在线无码观看 | 精品欧美视频| 国产精品综合久久久| 国产呦精品一区二区三区网站| 一区二区日韩国产精久久| 91av国产在线| 2021国产精品自产拍在线| 美女被狂躁www在线观看| 亚洲欧洲自拍拍偷午夜色|