视频监控/存储系统设计要点
視頻監控系統包括以下組成部分:
| 編號 | 模塊名稱 | 功能及備注 |
| 1 | 設備代理 | 系統與前端設備進行通信 |
| 2 | 報警 | 接收/存儲報警信息(外部報警) |
| 3 | 流媒體 | 轉發視頻流,因為設備并發連接有限,通常配備多個網卡 |
| 4 | 設備接入 | 前端設備接入系統,一般通過onvif,rtsp或SDK,電力系統有自己的協議 |
| 5 | 存儲 | 下文將重點描述 |
| 6 | 聯動 | 包括策略定義域執行 |
| 7 | Web | 跨平臺可采用QtWebkit或mjpeg方式 |
| 8 | 電子地圖 | 一般支持矢量圖,在地圖上疊加視頻,支持多畫面 |
| 9 | 級聯 | 多級系統級聯 |
| 10 | 控制服務 | 云臺控制和權限管理 |
| 11 | 預覽 | 客戶端 |
| 12 | 校時 | 統一設置設備時間 |
?
存儲的設計宗旨:即存的下、找得到。做到以下兩點即為合格的存儲:錄像不丟失,快速找得到。
?
存儲的發展過程:
| 名稱或組成 | 位置 | 結構描述 | 較上一代的進步 |
| PC式DVR | 前端 | 在PC上使用板卡接收視頻流,存入本地硬盤 |
|
| 嵌入式DVR | 前端 | 使用專用設備接收視頻流,存入本地硬盤 | 避免病毒、人員不當操作帶來的風險 |
| 存儲服務器+IPSAN | 后端 | 集中存儲,1+n模式,服務器收流后再發給IPSAN存儲 | 可靠性提高 |
| 管理機+存儲主機 | 后端 | 集中分布式存儲,1+n模式,存儲主機收流存儲在IPSAN上,管理機負責分配和統一查詢 | 避免帶寬浪費,降低存儲服務器壓力 |
?
存儲的過程:設備接入收流à流媒體分發à寫入磁盤à錄像查詢
?
存儲設計特點:寫多讀少,易產生磁盤碎片。據經驗,磁盤循環覆蓋3輪,讀寫效率降低80%。
防止磁盤產生大量碎片的方法:
1.??????預分配空間:在磁盤中預先分配存儲空間,并在空間中寫滿“垃圾數據”,人為使其成為連續空間。(可以通過“新磁盤初始化”過程實現;或在后臺運行一個低優先級的線程,在空閑時進行預分配,分配完成后線程退出。)
2.??????循環利用文件:不刪除老文件,而是將老文件標記為“無效”。磁盤寫滿后尋找“無效文件”,重新寫入。
?
存儲視頻格式:
可以使用原始格式(前端取來不加轉換)或者統一格式(轉換)。一般建議使用統一格式,以便于其它相關模塊的開發,提升低耦合性和通用型。注意此處轉換不是指轉碼。通常使用PS封裝的H264流。(PS封裝中包含了時間信息)
?
注意事項:
使用Intel i7處理器和NVIDIA獨立顯卡的PC客戶端,在播放16路1080P視屏時會出現嚴重卡頓。通常解決方案是當顯示路數少時,提升分辨率和碼率;當顯示路數多時,適當降低分辨率和碼率。
?
關于拉模式和推模式:
通常建議使用拉模式,即獲取視頻流這一操作由后端(客戶端或者存儲主機發起)。這樣方便平臺系統的模塊化,也降低了對前端設備的要求。
?
存儲模式:
管理機上有一個全局統一的數據庫存放錄像的索引,包括I幀時間戳,事件時標等。
每臺存儲主機上有一個小數據庫,記錄本地存放了哪些錄像文件,每個文件對應哪臺前端設備的哪段時間,哪些文件已被標記“無效”哪個是當前正在使用的文件等。
存儲主機運行時需向管理機上報運行狀態。
?
分配存儲資源:
支持在界面上指定,由管理機分配哪個IPC存到那個存儲主機上。
存儲主機啟動時向管理機上報資源,管理機根據資源可以自動分配哪些攝像機存到哪臺存儲主機上。
?
錄像檢索:
查詢時向管理機查詢,管理機將具體查詢的數據定位到某一臺存儲主機上。即用戶不需要關心錄像文件存儲在哪一臺存儲主機中。
錄像查詢方式:
1.??????按照攝像機-時間段來檢索:最基本的檢索方式。
2.??????按照攝像機-事件標簽來檢索:(準智能檢索)需要檢測并存儲SmartIPC產生的事件標簽,檢索時可根據事件標簽進行。(也支持人工添加自定義標簽)
3.??????按照攝像機-內容檢索:即在需要檢索時再調用分析模塊,在分析服務器上設定分析參數,預先把錄像過濾一遍,產生片段后再提交給用戶。(這提供了一種視頻分析的應用新思路!)
?
容災和異常處理:
目標是在異常情況下保證錄像的完整性。包括3點:即切換、冗余、恢復。
1.??????存儲主機可以分為值班機和備用機,可以設置成N+1的形式,當某個值班機宕機時,由管理機發現,并用備用機頂上。
2.??????同一臺存儲主機中的多塊硬盤可以設置成N+1的冗余形式,當某個硬盤損壞時,用備用盤頂上。
3.??????設備宕機后已存儲數據的恢復,最簡單的方式是使用多副本存儲。
4.??????要考慮某些關鍵錄像不可被覆蓋,可以采用數據庫加鎖的形式,或者將關鍵錄像遷移到某一獨立的存儲主機上。
5.??????故障恢復后的處理:已升至值班狀態的原備機維持值班狀態。從故障中恢復的原主機作為備機使用。
6.??????當發現有IPC、磁盤、存儲主機故障時,需要提醒工作人員處理。
?
舊系統升級需考慮原有NVR、DVR、外接存儲介質(如SD卡、外接硬盤)的IPC,在現有存儲體系中的地位,納入還是不納入。
?
其它:
存儲策略:可以根據用戶需求(或向用戶提建議),在存儲時降低幀率。某些畫面相對靜止和光線暗淡的攝像機可采用更低的幀率。
通常情況下,在不考慮主碼流子碼流的情況下,存儲幀率和預覽幀率是統一的。
存儲的數據文件大小不宜過大,經驗采用128MB。
網絡利用率:經驗中,網絡利用率超過50%,畫面會出現明顯問題。
錄像文件的平滑切換:將錄像文件預讀到流媒體中來處理(自己做個實驗試試)。
在大規模分布式存儲系統中,可將存儲主機與設備部署在同一個局域網中,將管理機部署在主站端,以此解決存儲對網絡帶寬的利用問題。
總結
以上是生活随笔為你收集整理的视频监控/存储系统设计要点的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Qt编译过程中出现的问题
- 下一篇: 解放军军济技术高中选科有必选科目吗