摘 要: 設計了一種基于IP Camera的網絡視頻監控系統,系統通過各種不同的接入服務,提供了C/S、Web、ClickOnce等多種訪問方式,實現了多種平臺下對視頻終端的監控。系統采用類似于DNS的目錄服務,將所有物理節點、邏輯節點均統一編碼,并存儲到本地配置數據庫或文件中,實現了視頻終端、客戶監控端、視頻數據文件等信息的管理和訪問。系統在有線和無線兩種不同的傳輸方式下,根據不同的網絡傳輸特點,分別采用了TCP和UDP兩種不同的通信方式和通信機制向外部提供視頻數據服務,提高了視頻流暢性。
關鍵詞: IP camera;視頻監控;TCP/IP;目錄服務;視頻解碼
隨著網絡技術的發展和網絡建設的普及,與傳統的模擬監控比較 , 基于網絡技術的數字化監控系統具有結構靈活、抗干擾性能強、支持遠程傳輸、便于自動化管理和易于大規模生產的優勢,傳統的模擬監控系統的監控和調度功能將逐漸被基于IP Camera的網絡視頻監控系統所替代[1]。基于當前的應用背景和技術支持,本文設計了一種基于IP Camera的網絡視頻監控系統,通過這種帶有以太網接口、TCP/IP協議棧[2]、Web Server的智能網絡視頻監控終端,授權客戶端在Internet上可以使用多種訪問方式來監控此終端。
1 系統架構
1.1 系統邏輯架構
各個接入服務共享同一個邏輯數據總線,本系統中的數據均通過UDP協議在各個服務之間發送、轉移、加工、存儲。具體的篩選、處理工作由數據消費者進行[3]。
系統邏輯架構圖如圖1所示。

1.2 系統數據流向架構
系統數據流向架構如圖2所示。

本視頻監控系統主要由網絡錄像服務器(NRU)、視頻音頻轉發服務器(VTDU)、中心管理服務器(CONS)、設備配置和管理服務器(DMS)幾部分構成。其中,網絡錄像服務器主要實現音視頻的錄像;音視頻轉發服務器主要實現音視頻數據的轉發;中心管理服務器(CONS)主要實現對前端設備和客戶端的認證和管理;接入服務器(CONS)主要實現對信令的解析;設備配置和管理服務器主要實現對所有設備的配置和顯示所有設備的狀態。
2 系統各組成部分功能
2.1 錄像服務器
錄像服務器的功能有:根據中心管理服務器的指令,向轉發服務器請求媒體數據,并對媒體數據進行錄像;當客戶端向錄像服務器請求媒體數據時,錄像服務器把錄像文件的數據發送到客戶端。
2.2 中心管理服務器
中心管理服務器負責保存視頻服務器等設備的安裝信息及所有設備的報警信息和操作日志;根據配置信息,對需要錄像的視頻,向錄像服務器發送請求錄像信息;保存客戶端和管理平臺的用戶權限。
2.3 轉發服務器
向客戶端、管理平臺、錄像服務器轉發來自視頻服務器的媒體數據。
2.4 配置終端
配置終端對系統中的所有設備進行安裝和參數配置與查詢。
2.5 接入服務器
接入服務器對系統中的所有設備進行調度,解析設備之間的協議。
2.6 客戶端
客戶端功能:播放視頻圖像;對播放的視頻圖像進行本地錄像;本地回放錄像文件;接收報警信息。
2.7 視頻服務器
對于無線視頻服務器,通過測試在無線網絡上用TCP傳輸媒體數據時延時太大,所以無線視頻服務器只能采用UDP進行媒體數據傳輸。對此,需要作以下幾個方面的設計:
(1)轉發服務器
無線傳輸時采用一個線程接收UDP的數據,把接收到的媒體數據放到緩沖區;有線傳輸時采用一個線程接收TCP的數據,把接收到的媒體數據放到緩沖區。
(2)接入服務器
系統設計一個UDP接收和發送模塊,為每個無線視頻服務器在UDP模塊上建立一個TCP連接,根據視頻服務器的類型,在客戶端請求數據時給客戶端不同的應答信息。
(3)客戶端
采用視頻解碼策略、視頻參數的重發功能和云臺參數設置的重發功能。
(4)數據庫提供的樹型結構中增加一個視頻服務器的類型。
3 系統主要部分工作流程
3.1 注冊流程
視頻終端向服務器注冊過程如圖3所示。

3.2 請求媒體數據
客戶端連接指定視頻終端后,向視頻終端請求媒體數據,接入服務器將信息進行轉發到視頻終端。視頻終端收到命令后將媒體數據發送到接入服務器并轉發到客戶端,也可以直接將媒體數據發送到客戶端。控制命令仍然通過接入服務器轉發,從而提高網絡視頻效率。具體數據流程如圖4所示。

3.3 云臺控制
客戶端訪問視頻終端時通過接入服務器的數據轉發完成對視頻終端連接的云臺進行控制。具體數據流程如圖5所示。

3.4 配置終端
管理平臺可以對指定的視頻終端進行遠程配置,通過接入服務器的數據轉發完成各種參數的配置。具體數據流程與圖5所示類似。
4 軟件實現原理
4.1 網絡視頻傳輸策略
在網絡帶寬不穩定或者較差的情況下為了盡量保證網絡視頻服務器傳輸到服務器的視頻數據的完整性和實時性[4],采用了雙重處理機制:
(1)單位時間內比較視頻歷史緩沖中的數據包個數,如果發現數據包個數大于500包,則執行清除歷史緩沖操作,并重新關閉打開編碼器來編碼出一個新的IDR幀用于傳輸[4];
(2)定時比較當前編碼幀的時間與待發送的數據包的時間差值,如果大于5 s,則執行清除歷史緩沖的操作,并重新關閉打開編碼器來編碼出一個新的IDR幀用于傳輸[5];
(3)另外為了保證對帶寬的充分利用以及傳輸到服務器端的碼流可以正常播放,在清除歷史緩沖時增加了1幀的完整性判斷,即必須保證當前傳輸的視頻數據非1幀才執行清除歷史緩沖的操作[6]。
4.2 目錄服務功能設計
目錄服務具有配置終端和中心管理服務器的功能,主要用于保存系統中所有設備的安裝和參數配置,并提供查詢、修改服務;保存系統中所有硬件服務器、軟件服務的安裝和配置信息,并提供查詢、修改;視頻文件的目錄管理服務;客戶端的配置、權限等信息維護;權限的保存、查詢、管理接口;體現系統一定的拓撲結構。
目錄服務功能實現:
(1)類似于DNS服務,采用UDP通信向外部提供服務[7]。
(2)目錄服務之間也可互相訪問,從而提供目錄冗余,它需通過管理人員設置,以免形成回路。
(3)所有物理節點、邏輯節點均統一編碼,并存儲到本地配置數據庫或文件中[8]:①服務器采用網卡“MAC地址”編碼,計算機名作為默認摘要信息;②運行在服務器上的服務程序,采用“MAC地址.服務編碼.端口號”形式編碼,例如“1234567890AB.MS1:8080”;③C/S客戶端計算機采用“MAC地址:端口號”唯一編碼;④攝像頭采用內部物理地址編碼;⑤企業組織的層級采用ASCII方式編碼;⑥訪問用戶采用字符串編碼。
(4)目錄內容淘汰方法[9]包括:靜態內容長期保留和動態內容按約定超時周期淘汰。
本文闡述了IP Camera的網絡視頻監控系統的系統設計以及主要部分的實現原理。著重介紹了視頻數據傳輸以及目錄服務的設計方案和實現方法,并對其中的一些關鍵技術的實現作了詳細的描述。系統服務器端采用Visual C++編程語言實現各種服務[10]。該系統支持多種平臺的客戶端訪問,并具有良好的交互性和流暢的視頻效果。
參考文獻
[1] 徐力,孔巖.視頻監控系統的現狀和發展趨勢[J].信息技術與信息化,2005(4):60-62.
[2] 任泰明.TCP/IP協議與網絡編程[M].西安:西安電子科技大學出版社,2004.
[3] 顧尚杰,薛質.計算機通信網基礎[M].北京:電子工業出版社,2000.
[4] 畢厚杰,汪濤.寬帶IP(數據)和視頻接入技術(第1版)[M].北京:北京郵電大學出版社,2002.
[5] 精英科技.視頻壓縮與音頻編碼技術[M].北京:中國電力出版社,2001.
[6] 黎洪松.數字視頻技術及其應用(第1版)[M].北京:清華大學出版社,1997.
[7] 蔣東興.Windows Sockets網絡程序設計大全[M].北京:清華出版社,1999.
[8] PURI A,CHEN Xue Min,LUTHRA A.Video coding using the H.264/MPEG-4 AVC compression standard[J].Signal Processing Image Communication,2004(19):793-849.
[9] 吳樂南.數據壓縮[M].北京:電子工業出版社,2000.
[10] 陳光明.實用Visual C++編程大全[M].西安:西安電子科技大學出版社,2000.
