李賢軍
安徽四創(chuàng)電子股份有限公司,安徽合肥 230088
基于信號量的視頻監(jiān)控API設計與實現(xiàn)
李賢軍
安徽四創(chuàng)電子股份有限公司,安徽合肥 230088
隨著平安城市不斷推進,視頻監(jiān)控成為國家建設的重點。在視頻監(jiān)控中,監(jiān)控客戶端為重要的組成部分,所有視頻、錄像都要通過客戶端進行調閱查看,可見穩(wěn)定高效的視頻監(jiān)控客戶端的接口(API)設計是比較重要的。從目前來看,各視頻廠家提供視頻API各不相同,或多或少都存在著一些問題,使用不習慣;而且,由于國內專業(yè)技術封閉不公開,對于視頻監(jiān)控API的設計也沒有太多相關關鍵的資料可循。本文以信號量技術為核心基礎,提供了一套視頻監(jiān)控API設計方案,并予以實現(xiàn),以促進視頻監(jiān)控客戶端穩(wěn)定性和高效性。
信號量;視頻監(jiān)控;API;多線程
在軟件開發(fā)中,我們常用到計算機的各種技術,其中一種就是多線程(或進程)互斥與同步。對于不同的操作系統(tǒng),線程的互斥與同步實現(xiàn)方式各不相同,對于windows和Linux系統(tǒng)都有如下方式:消息隊列、信號量和共享內存,其中信號量是在控制多線程同步中使用比較多一種方式。信號量是一個整數(shù):大于或等于0時代表可供并發(fā)進程使用的資源實體數(shù);小于0時代表正在等待使用臨界區(qū)的進程數(shù);用于互斥的信號量初始值應大于0。在視頻監(jiān)控API開發(fā)中,我們經(jīng)常需要同時操作、或者快速操作某一功能(如視頻播放、視頻控制、云臺控制等),此時會在短時間內進行很多次操作,并且所有的操作都需要通過網(wǎng)絡與服務器進行交互。……