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

列車CCTV網(wǎng)絡監(jiān)控系統(tǒng)SDK的設計與應用

2013-10-25 09:27:26張颯漪劉全利
服裝學報 2013年5期
關(guān)鍵詞:網(wǎng)絡通信功能設備

張颯漪, 劉全利, 王 偉

(大連理工大學控制科學與工程學院,遼寧大連116024)

閉路電視(Closed Circuit Television,CCTV)網(wǎng)絡監(jiān)控系統(tǒng),是安全技術(shù)防范體系中的一個重要組成部分[1],現(xiàn)已應用于社會安防監(jiān)控的各大領域[2],同時在軌道交通中也發(fā)揮了巨大的作用。列車CCTV監(jiān)控系統(tǒng)可以分為前端、傳輸和終端3個部分[3]。就硬件而言,前端用于獲取被監(jiān)控區(qū)域的圖像,傳輸部分通常由視頻電纜補償器、視頻放大器等組成,終端包括監(jiān)視器和控制設備以及記錄設備等;就軟件而言,前端屬于服務器,傳輸部分屬于網(wǎng)絡通信,終端屬于客戶端。在實際項目應用中,一般CCTV的前端產(chǎn)品供應商都會配套一個SDK(Software Development Kit),針對自己的產(chǎn)品制定內(nèi)部通信協(xié)議并實現(xiàn)API的封裝,留出功能接口供給客戶端編程使用。客戶端程序開發(fā)人員可以在不了解視頻壓縮、回放和網(wǎng)絡傳輸?shù)燃夹g(shù)的前提下,進行視頻程序開發(fā)。

文中設計實現(xiàn)的CCTVSDK是一個基于某地鐵項目的車載CCTV設備進行的接口封裝,此項目中使用的前端攝像頭編碼卡和DVR(Digital Video Recorder)均集視頻采集、壓縮和網(wǎng)絡傳輸于一體,為CCTVSDK的設計和實現(xiàn)提供了前提。另外,微軟公司的DirectShow編程接口,為在Windows開發(fā)平臺上處理各種格式的媒體文件回放、音視頻采集等高性能要求的多媒體應用提供了完整解決方案。該CCTVSDK實現(xiàn)了取流、播放、存儲、獲取設備狀態(tài)、獲取視頻數(shù)據(jù)等接口功能,以滿足此項目地面監(jiān)控系統(tǒng)的開發(fā)需求,并為本項目列車CCTV系統(tǒng)的地面監(jiān)控開發(fā)提供高效、完整、便捷的開發(fā)和控制手段。

1 監(jiān)控中心對CCTVSDK的需求分析

文中的CCTVSDK是在某城市地鐵項目開發(fā)過程中,針對車載CCTV監(jiān)控系統(tǒng)定制的開發(fā)包。該列車由6節(jié)編組組成,具體如圖1所示。每個編組的監(jiān)控系統(tǒng)由車載攝像機(Camera)、車載DVR、車載監(jiān)控單元(TLCD)以及車載交換機(Switch)組成。

圖1 列車CCTV系統(tǒng)結(jié)構(gòu)示意Fig.1 Structure sketch of the train CCTV system

Camera由攝像頭和編碼卡兩部分組成,分布在客室和司機室,一塊編碼卡引出兩個TNC連接器,通過同軸電纜分別和一個攝像頭相連。攝像頭負責視頻采集,編碼卡采用Linux嵌入式平臺,負責對視頻圖像數(shù)據(jù)按照H.264編碼標準[4]進行編碼壓縮,并作為RTSP[5]服務器等待取流。

TDVR也采用Linux嵌入式平臺,分布在司機室,車頭車尾各一個,負責按照項目需求管理自己所屬范圍內(nèi)的攝像機,上電后根據(jù)RTSP取流協(xié)議將攝像頭實時視頻數(shù)據(jù)按照一定規(guī)則(如時間、通道號等)存儲在硬盤中,方便查詢錄像歷史。

TLCD安裝在司機室,車頭車尾各一個,采用Linux嵌入式平臺,可以通過在觸摸板上進行人工操作,以輪詢或者單獨監(jiān)控的方式對車廂內(nèi)日常和緊急情況進行監(jiān)控,還可以修改車內(nèi)其他IP設備參數(shù),便于司機在運營時掌握列車狀態(tài)、不同車廂內(nèi)乘客情況以及停車時維護。

Switch用于各車廂CCTV設備連接,上述設備均通過以太網(wǎng)連接到交換機上,各個車廂內(nèi)交換機再級連,為列車的監(jiān)控系統(tǒng)網(wǎng)絡通信數(shù)據(jù)(包括控制命令數(shù)據(jù)和視頻數(shù)據(jù))提供傳輸通道,同時為構(gòu)成局域網(wǎng)奠定了基礎。

地面監(jiān)控系統(tǒng)通過路由與車載交換機相連,可以通過主動發(fā)起通話,獲取車載設備信息、車輛緊急信息,獲取監(jiān)控畫面之后進行控制中心上墻顯示,或進行控制中心本地存儲等。

通過對系統(tǒng)的分析可以看出,文中的車載CCTV監(jiān)控系統(tǒng)以全數(shù)字IP設備為基礎,對其操作涉及到網(wǎng)絡通信、流媒體等方面的技術(shù),導致地面監(jiān)控開發(fā)人員開發(fā)過程較為復雜。對于攝像頭實時預覽,地面監(jiān)控開發(fā)人員需要知道RTSP取流協(xié)議,獲取視頻數(shù)據(jù)之后,需要將視頻數(shù)據(jù)進行音視頻解碼并負責顯示,當多路視頻輪詢切換時,要考慮不同顯示窗口的切換問題、CPU的利用率等問題;對于以DVR錄像文件下載和本地回放,地面監(jiān)控開發(fā)人員需要知道DVR內(nèi)部存儲規(guī)則(時間段、通道號、硬盤號等),文件格式結(jié)構(gòu)和文件轉(zhuǎn)換過程,以及回放時播放器機制等;對于監(jiān)測設備狀態(tài),地面監(jiān)控開發(fā)人員要想知道設備是否在線、掉線、重連、有無緊急情況發(fā)生等狀態(tài),需要自己建立網(wǎng)絡通信機制,通過一系列套接字實現(xiàn)狀態(tài)查詢功能。這一切都對地面監(jiān)控系統(tǒng)的開發(fā)形成了不便和困擾。

因此,地面監(jiān)控中心需要集成3大類功能:①網(wǎng)絡視頻流處理;②車載錄像本地下載、存儲和回放;③車載設備狀態(tài)檢測、緊急信息獲取。

以上所有功能在CCTVSDK中都進行了封裝,以Windows API的形式提供給地面監(jiān)控系統(tǒng)的編程人員,最終產(chǎn)品以DLL[6](動態(tài)鏈接庫)的形式生成。這樣的設計就使用戶不再關(guān)心內(nèi)部通信和操作細節(jié),極大地提高了二次開發(fā)的效率。

2 CCTVSDK軟件結(jié)構(gòu)

CCTVSDK接口功能主要包含設備操作、本地視頻文件回放和控制操作、車載緊急信息獲取3大模塊。其中設備操作由設備取流、視頻播放、視頻本地存儲、視頻數(shù)據(jù)操作和設備狀態(tài)監(jiān)控這幾部分組成。軟件結(jié)構(gòu)如圖2所示。

圖2 CCTVSDK軟件結(jié)構(gòu)Fig.2 Structure of CCTVSDK

其中網(wǎng)絡視頻流處理模塊基于C/S模型,由設備取流、視頻播放、視頻本地存儲、視頻數(shù)據(jù)操作幾部分組成;本地視頻處理模塊由錄像文件回放和回放控制兩部分組成;OCC報警監(jiān)控模塊同樣基于C/S模型,由車載設備狀態(tài)監(jiān)控和車載緊急信息獲取兩部分組成。

應用程序開始時,無論想要實現(xiàn)何種功能,必須首先調(diào)用相應模塊的初始化操作接口,主要用于開辟SDK內(nèi)部資源,如為網(wǎng)絡通信創(chuàng)建套接字、清空設備隊列以及初始化COM庫等。

應用程序調(diào)用過程中,可能有多種調(diào)用方法實現(xiàn)同一種功能,編程人員可根據(jù)自己需求選取不同分支方法。

應用程序結(jié)束時,需要調(diào)用相應模塊的清除操作接口進行清理資源操作,主要目的是用來回收內(nèi)部資源,避免內(nèi)存泄露。

3 CCTVSDK軟件的內(nèi)部功能實現(xiàn)

3.1 設備取流功能的實現(xiàn)

CCTVSDK實現(xiàn)的取流功能是基于標準RTSP協(xié)議,從開始申請網(wǎng)絡取流到成功獲取視頻數(shù)據(jù)的過程就是一個RTSP協(xié)議的實現(xiàn)過程。

RTSP協(xié)議全稱為實時流媒體協(xié)議(Real Time Streaming Protocol),是由Real Network和Netscape以及哥倫比亞大學共同提出的如何有效在IP網(wǎng)絡上傳輸流媒體數(shù)據(jù)的應用層協(xié)議。這個協(xié)議位于RTP和RTCP之上,本身并不傳輸數(shù)據(jù),而是使用TCP或RTP完成數(shù)據(jù)的傳送。它只是相當于流媒體服務器的遠程控制。

車載攝像頭編碼卡和車載DVR均為RTSP服務器,文中涉及到的控制過程中包含以下幾個命令,具體見表1。各個步驟之后的狀態(tài)流程如圖3所示。CCTVSDK作為客戶端進行相關(guān)取流操作,當一個RTSP的申請過程在Play命令成功之后就可以收到服務器發(fā)出的視頻數(shù)據(jù)。

表1 RTSP請求流程Tab.1 Request process of RTSP

圖3 RTSP狀態(tài)轉(zhuǎn)換Fig.3 State transition diagram of RTSP

C++的開源項目Live555為RTSP每個過程的實現(xiàn)提供了良好的開發(fā)基礎。它實現(xiàn)了對標準流媒體傳輸協(xié)議(如RTP/RTCP、RTSP、SIP等)的支持,并實現(xiàn)對多種音視頻編碼格式的音視頻數(shù)據(jù)接收和處理的支持。由于結(jié)構(gòu)設計良好,Live555已被用于多款開源播放器的流媒體播放功能的實現(xiàn),如VLC,MPlayer。Live555的整體框架包括 4 個庫:UsageEnvironment模塊是對系統(tǒng)環(huán)境的抽象,包括抽 象 類 UsageEnvironment,TaskScheduler 和HashTable,實現(xiàn)對事件的異步讀取、對事件句柄的設置以及對錯誤信息的輸出等;BasicUsageEnvironment模塊中的類主要是對UsageEnvironment中對應類的實現(xiàn);Groupsock模塊用于數(shù)據(jù)包的接收和發(fā)送等網(wǎng)絡通信,支持單播和多播;LiveMedia模塊非常重要,包含了實現(xiàn)RTSP Server的類,還有針對不同流媒體類型(TS流或PS流)編碼的類,其中Medium是基類。

運用這一開源代碼,CCTVSDK將RTSP的實現(xiàn)過程加以提煉并抽象提取出來,封裝成名為CstreamMedia的類,并將主要過程以Public成員函數(shù)的形式表現(xiàn)出來。這些接口依次為:

int rtspClientOpenStream(const char* url,int flag),負責PLAY命令之前的所有過程操作;

int rtspClientPlayStream(void),負責發(fā)送PLAY命令和解析應答;

int rtspClientReadFrame(FrameInfo*& frame),負責取流之后視頻數(shù)據(jù)獲取;

intrtspClinetGetMediaInfo(enum CodecType codectype,MediaInfo& mediainfo),負責視頻流的類型判斷;

int rtspClientPauseStream(void),負責發(fā)送PAUSE命令和解析應答;

int rtspClientCloseStream(void),負責發(fā)送TEARDOWN命令和解析應答。

當創(chuàng)建一個CstreamMedia類的對象時,通過調(diào)用以上不同接口,便可實現(xiàn)RTSP的整個流程,完成取流過程并在成功取流過程后加以過程控制。

3.2 設備視頻播放功能的實現(xiàn)

設備視頻播放功能基于微軟的DirectShow SDK開發(fā)完成。DirectShow是經(jīng)過DirectX 6.0中的Direct Media發(fā)展而來,集成了DirectX家族中其他成員(如 DirectDraw、DirectSound 等)的技術(shù)[7]。Dshow設計初衷就是要讓應用程序開發(fā)人員從負責的數(shù)據(jù)傳輸、硬件差異、同步性等工作中解脫出來,使得多媒體應用變得簡單。

DirectShow使用Filter Graph模型管理整個數(shù)據(jù)流的處理過程,參與數(shù)據(jù)處理的各個功能模塊是Filter。各個Filter按照一定的順序連接成一條“流水線”協(xié)同工作。Filter按照功能可以分為3類:Source Filters,Transform Filters和 Rendering Filters。

Source Filters主要負責獲取數(shù)據(jù)(數(shù)據(jù)源可以是文件、計算機里的采集卡、數(shù)字攝像機等),然后將數(shù)據(jù)往下傳輸。數(shù)據(jù)傳送可以分為推模式和拉模式,推模式最典型的情況發(fā)生在實時源中;拉模式典型發(fā)生在文件源中。Transform Filters主要負責數(shù)據(jù)的格式轉(zhuǎn)換,例如數(shù)據(jù)流分離 /合成、解碼 /編碼等,然后將數(shù)據(jù)繼續(xù)往下傳輸;Rendering Filters主要負責將數(shù)據(jù)送給顯卡、聲卡進行多媒體的演示播放,或者輸出到文件進行存儲。CCTVSDK中視頻播放功能實現(xiàn)嚴格按照Source Filter-Transform Filter-Rendering Filter的結(jié)構(gòu)設計完成。

Source Filter采用推模式,被封裝為CRTSPStreamFilter類,由CBaseFilter和CAMThread派生出來。Source Filter可以使用專門的線程將經(jīng)過RTSP談判獲取的網(wǎng)絡數(shù)據(jù)流推送下去。因此,在CRtspStream的構(gòu)造函數(shù)中開啟了RTSP的請求過程,如果成功,在循環(huán)推送的線程中將會把車載監(jiān)控設備發(fā)出的H.264視頻數(shù)據(jù)流推送到下一級Filter,在類的具體實現(xiàn)代碼中,以上闡述的過程體現(xiàn) 在 CRTSPStreamFilter::DoBufferProcessing-Loop()和CRTSPStreamFilter::FillBuffer()中。每次傳遞的過程都可以獲取到此次傳遞buffer大小。

CH264Decoder是CTransformFilter的子類,當這一Filter對象被添加到Graph中并收到上級傳來的數(shù)據(jù)時,會進入CH264Decoder::Transform()的階段,將視頻數(shù)據(jù)根據(jù)buffer類型和大小進行標準H.264解碼。解碼的過程運用了ffmpeg[8]開源解決方案。解碼之后的YUV數(shù)據(jù),繼續(xù)傳送到下一級Filter。

Rendering Filter運用了DirectShow新一代的Video Render即 VMR7(Video Mixing Render)。VMR有很多新特性,其中典型的特性是實現(xiàn)了真正的無窗口模式(Windowsless)。普通Render在顯示視頻時,總是需要創(chuàng)建窗口,將此窗口作為應用程序創(chuàng)建窗口的子窗口;而VMR無需如此,應用程序使用時,只需要傳入窗口句柄,畫面就可以在傳入的窗口中顯示,沒有父子關(guān)系。

當用戶準備啟動視頻播放時,運用IGraphBuilder::Connect()方法將以上3個Filter連接,形成一條播放鏈路,具體如圖4所示。再運用IMediaControl::Run()這一方法,數(shù)據(jù)流就會在Filter中自動傳遞,畫面顯示流暢,實現(xiàn)預覽功能。

圖4 Dshow數(shù)據(jù)傳輸流程Fig.4 Data transform chart of Dshow

3.3 視頻本地存儲功能的實現(xiàn)

視頻本地存儲功能是在取流成功的基礎上,在Source Filter內(nèi)部加入接口,將網(wǎng)絡原始視頻數(shù)據(jù)存儲成標準AVI文件,存儲文件名稱以“CAM_當前時間_設備IP_端口號.avi”和“DVR_當前時間_設備IP_通道號_錄像起始時間_錄像結(jié)束時間.avi”規(guī)則進行命名,以避免錄像文件名稱重復。

AVI(AudioVideoInterleaved)是微軟推出的一種音視頻交互格式[9]。它采用了一種有損壓縮方式,分為文件頭、數(shù)據(jù)塊、索引塊3部分(見圖5)。

圖5 AVI數(shù)據(jù)存儲格式Fig.5 Data storage layout of AVI

AVI文件采用的是RIFF文件結(jié)構(gòu)方式,存儲過程簡單易操作,且滿足列車監(jiān)控單元對視頻文件的存儲需求。RIFF(Resource Interchange File Format,資源互換文件格式)是微軟公司定義的一種用于管理Windows環(huán)境中多媒體數(shù)據(jù)的文件格式。構(gòu)造RIFF文件的基本單元為數(shù)據(jù)塊(Chunk)。整個AVI文件是一個以ID為RIFF的塊,其中包含3種塊(此種結(jié)構(gòu)中只有視頻信息,沒有音頻信息):

1)ID 為 LIST,數(shù)據(jù)類型為“hdrl”:包含 AVI文件一般信息,如文件頭、數(shù)據(jù)流頭、數(shù)據(jù)流格式。

2)ID為 LIST,數(shù)據(jù)類型為“movi”:以幀為單位,記錄視頻數(shù)據(jù)信息。

00dc:表示該幀數(shù)據(jù)的類型和流編號,dc-壓縮視頻幀;db-非壓縮視頻幀。

3)ID為idx1,記錄數(shù)據(jù)幀索引信息,包括:

數(shù)據(jù)塊標記(如00dc),數(shù)據(jù)塊屬性,數(shù)據(jù)塊相對位置,數(shù)據(jù)塊大小。

在SDK中,將AVI文件的存儲操作封裝成CGenerateAVI類,留出公共操作接口。

3.4 設備狀態(tài)監(jiān)控功能的實現(xiàn)

設備狀態(tài)監(jiān)控功能是地面監(jiān)控系統(tǒng)的又一功能需求。在監(jiān)控過程中可實時獲取不同列車的各個CCTV設備的在線狀態(tài),以便應用程序根據(jù)掉線情況作出冗余處理或者告知維護人員及時處理故障。

CCTVSDK實現(xiàn)流程如下:①設備狀態(tài)通過客戶端發(fā)送消息、服務器給與應答的方式進行判斷。以UDP的方式逐一發(fā)送檢測設備狀態(tài)協(xié)議的網(wǎng)絡通信數(shù)據(jù)包,設備接收后會根據(jù)協(xié)議給與應答。②CCTVSDK初始化時,經(jīng)用戶指定后開啟一個內(nèi)部循環(huán)檢測線程,用戶每注冊一個設備,會得到一個設備ID號,CCTVSDK內(nèi)部記錄該設備IP,并將這一ID號與此IP地址相互關(guān)聯(lián),同時此設備信息則被添加到設備隊列中,該檢測線程在此設備隊列中不斷檢測每個設備的在線狀態(tài)。③如果在一定的超時時間內(nèi)(文中實現(xiàn)代碼中默認設置為2 s)沒有檢測到正確的回復包,則認為設備掉線;假如在斷線一段時間后的某次檢測過程中,又收到該設備正確的回復包,則認為此設備恢復正常。④設備斷線、在線的變化狀態(tài),CCTVSDK都會以回調(diào)函數(shù)的方式通知用戶。

檢測設備狀態(tài)的通信協(xié)議中的數(shù)據(jù)包采用“報文頭 +報文內(nèi)容”的格式(見表2)。

表2 報文格式Tab.2 Message layout

表2中COMM_HEAD包含此數(shù)據(jù)包的一般信息,如包長度、校驗和等;INTER_HEAD用于區(qū)分數(shù)據(jù)包功能,記錄此數(shù)據(jù)包消息編號等信息;消息數(shù)據(jù)根據(jù)不同的功能進行不同的特殊定義,用不同消息ID號區(qū)分,包含了所有需求功能的信息。

設計這種數(shù)據(jù)包格式基于現(xiàn)有網(wǎng)絡通信協(xié)議數(shù)據(jù)包格式定義。在網(wǎng)絡通信協(xié)議中,以UDP協(xié)議為例,用戶數(shù)據(jù)報被分為報頭和數(shù)據(jù)兩部分。報頭包括源端口、目的端口、報文長度及校驗和。傳輸過程中,通過檢查報頭信息就可以獲取此數(shù)據(jù)包的源地址和目的地址,校驗和可以保證數(shù)據(jù)的安全性[10]。同理,通過COMM_HEAD可對數(shù)據(jù)包進行校驗,一旦發(fā)現(xiàn)數(shù)據(jù)有錯誤,則不再對余下數(shù)據(jù)進行判斷;如果校驗正確,則再通過INTER_HEAD中的消息ID號確定報文的具體功能,作出不同的處理。可以看出,以這種格式安排數(shù)據(jù)包不僅整齊而且便于擴展,添加功能時只需添加不同的消息ID號即可,為編程過程中整包數(shù)據(jù)的解析和解析后的處理流程都提供了很大便捷。

基于以上實現(xiàn)過程,用戶在使用CCTVSDK時,只需在初始化時注冊一個有關(guān)設備狀態(tài)的回調(diào)函數(shù),在此函數(shù)實現(xiàn)中作出自己應有的動作即可。這一設計方法極大地簡化了用戶調(diào)用流程。

3.5 本地視頻文件回放和控制功能的實現(xiàn)

本地視頻文件回放和控制功能同樣是基于微軟的DirectShow開發(fā)平臺。

Dshow的播放操作都是基于Filter的COM組件完成的,根據(jù)不同視頻編碼選取不同的Filter,通過Pin之間的連接就能串聯(lián)起來,從而構(gòu)建一個完整的Filter Graph。對于一些具體的已知文件格式,Dshow為開發(fā)人員準備了一種非常方便的“智能連接”方法,不用開發(fā)人員手動添加不同的Filter,而是自動加入必要的Filter完成文件回放Filter Graph的構(gòu)建。

Dshow實現(xiàn)多種智能連接方法,其中一種是通過IGraphBuilder::RenderFile()實現(xiàn)的。該方法給出一個文件名稱之后,會首先查找注冊表,根據(jù)一些算法尋找并創(chuàng)建正確的Source Filter,然后從該Source Filter的各個輸出pin開始,進行智能連接。這是一個“遞歸”過程,直到所有分支都連接到一個Rendering Filter上為止。對于編程人員而言,如果想實現(xiàn)智能連接過程,只需要在初始化COM之后調(diào)用IGraphBuilder::RenderFile()這一接口,用已知的文件名作為參數(shù),即可成功播放。

對于播放控制方面,Dshow也已經(jīng)方便地提供了各種屬性接口:開始、停止、暫停、恢復、快進、慢進、單幀播放、獲取播放文件大小和幀數(shù)、獲取當前播放速度和幀數(shù)、改變播放進度、幀定位、調(diào)整窗口等等。這些屬性接口都是通過Graph的屬性方法實現(xiàn)的。在智能連接過程中的初始化階段,只要再添加IMediaControl和IMediaPosition屬性操作接口,即可方便地完成以上功能操作。

3.6 車載緊急信息獲取功能的實現(xiàn)

車載緊急信息的獲取功能是通過用戶調(diào)用CCTVSDK的相應接口從車載監(jiān)控單元(TLCD)處獲取。這一獲取過程是通過基于UDP傳輸協(xié)議的網(wǎng)絡通信方式實現(xiàn)。

以上涉及的網(wǎng)絡通信消息包和應答包協(xié)議屬于內(nèi)部協(xié)議,格式見表3。

表3 消息格式Tab.3 Message layout

用戶在使用CCTVSDK功能時,需要通過IP地址獲取某個車載TLCD的訪問權(quán)限后,再發(fā)送獲取緊急信息的數(shù)據(jù)包。TLCD在一定超時時間內(nèi)給予回復,回復包中包含本車所有緊急信息的內(nèi)容,CCTVSDK負責按字節(jié)解析之后,將緊急信息類型、優(yōu)先級以及對應車廂號等有用信息返回給用戶,用戶負責進行下一步處理操作。

4 結(jié)語

在城市軌道交通實際項目開發(fā)中,基于車載監(jiān)控系統(tǒng)的SDK開發(fā)包應用非常廣泛,文中基于CCTV監(jiān)控網(wǎng)絡的SDK開發(fā)包針對車載設備內(nèi)部通信協(xié)議和標準取流協(xié)議等,提供了滿足地面監(jiān)控中心開發(fā)需求的各功能接口。

1)具備設備取流、實時預覽、實時回放、存儲視頻文件、文件回放等視頻功能,為了方便用戶不同調(diào)用習慣,還將這些功能接口以不同的接口形式給予開放。具有極大的靈活性和可操作性。

2)具備檢測車載設備狀態(tài)和獲取車載設備緊急信息功能,此項設計優(yōu)于傳統(tǒng)SDK。用戶可以運用此項報警聯(lián)動功能,使得整個監(jiān)控體系變得更加完善。

[1]王唯.遠距離多路電視監(jiān)控系統(tǒng)的設計[J].科技信息,2009(35):889-890.

WANG Wei.The design of long-range multi-channel TV monitoring system[J].Science and Technology Information,2009(35):889-890.(in Chinese)

[2]袁文鳳.論視頻技術(shù)的使用與發(fā)展[J].科技信息,2009(18):199-201.

YUAN Wen-feng.Discussing on using and development of video technology[J].Science and Technology Information,2009(18):199-201.(in Chinese)

[3]姜濤.淺談閉路監(jiān)控(CCTV)系統(tǒng)[J].哈爾濱職業(yè)技術(shù)學院學報,2009(1):126-127.

JIANG Tao.Discussing on closed circuit television(CCTV)system[J].Journal of Harbin Institute of Vocational Technology,2009(1):126-127.(in Chinese)

[4]畢厚杰.新一代視頻壓縮編碼標準:H.264/AVC[M].北京:人民郵電出版社,2009.

[5]孟懷軍,朱義勝.實時流協(xié)議RTSP的淺析[J].鹽城工學院學報:自然科學版,2003,16(3):29-31.

MENG Huai-jun,ZHU Yi-sheng.Study on real time streaming protocol[J].Journal of Yancheng Institute of Technology:Nature Science Edition,2003,16(3):29-31.(in Chinese)

[6]Johnson M H.Windows System Programming[M].3rd.MA,Boston:Addison-Wesley Professional,2005.

[7]陸其明.Dshow開發(fā)指南[M].北京:清華大學出版社,2003.

[8]FFmpeg.About FFmpeg.[EB/OL].(2007-03-09)[2013-04-19].http://www.ffmpeg.org/about.html.

[9]徐敏,陸達,趙洪志,等.廉價冗余盤陣列(RAID)發(fā)展綜述[J].計算機工程與應用,1999,35(6):27-29.

XU Min,LU Da,ZHAO Hong-zhi,et al.Review of RAID technology[J].Computer Engineering and Applications,1999,35(6):27-29.(in Chinese)

[10]姜楠,王健.常用多媒體文件格式壓縮標準解析[M].北京:電子工業(yè)出版社,2005.

猜你喜歡
網(wǎng)絡通信功能設備
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
諧響應分析在設備減振中的應用
海上軍用網(wǎng)絡通信的安全控制技術(shù)
基于網(wǎng)絡通信的智能照明系統(tǒng)設計
電子制作(2019年15期)2019-08-27 01:11:48
基于MPU6050簡單控制設備
電子制作(2018年11期)2018-08-04 03:26:08
網(wǎng)絡通信中信息隱藏技術(shù)的應用
談計算機網(wǎng)絡通信常見問題及技術(shù)發(fā)展
電子制作(2017年17期)2017-12-18 06:41:06
關(guān)于非首都功能疏解的幾點思考
500kV輸變電設備運行維護探討
原來他們都是可穿戴設備
消費者報道(2014年7期)2014-07-31 11:23:57
主站蜘蛛池模板: 久久精品欧美一区二区| 网友自拍视频精品区| 亚洲欧美不卡视频| 中文字幕人成人乱码亚洲电影| 国产精品福利尤物youwu| 91小视频在线观看| a级毛片网| 国产99视频在线| 国产精品自在拍首页视频8| 国产成人精品高清不卡在线| 免费在线看黄网址| 91小视频在线| 精品人妻AV区| 亚洲天堂日韩av电影| 国产欧美精品一区二区| 亚洲欧美日韩视频一区| 精品伊人久久久香线蕉| 午夜爽爽视频| 福利片91| 在线日本国产成人免费的| 国产XXXX做受性欧美88| 国产大全韩国亚洲一区二区三区| 国产在线98福利播放视频免费| 午夜国产在线观看| 真实国产乱子伦高清| 亚洲欧洲日产国产无码AV| 成人国产精品网站在线看| 欧美在线伊人| 韩日午夜在线资源一区二区| 在线色国产| 国产精品女主播| 国产成人一区在线播放| 亚洲精品无码日韩国产不卡| 天天躁夜夜躁狠狠躁图片| 亚洲大尺度在线| 岛国精品一区免费视频在线观看 | 亚洲精品卡2卡3卡4卡5卡区| 精品国产自在在线在线观看| 伊人天堂网| 91美女在线| 九色视频在线免费观看| a级毛片毛片免费观看久潮| 91精选国产大片| 日本免费一级视频| 激情网址在线观看| 国产精品福利导航| 亚洲高清在线播放| 欧美无专区| 国产一在线| 波多野结衣无码中文字幕在线观看一区二区| 夜夜拍夜夜爽| 欧美性精品| 无码专区在线观看| 欧美亚洲国产精品第一页| 在线免费亚洲无码视频| 日韩欧美国产成人| 中文字幕亚洲第一| 凹凸国产分类在线观看| 久久精品中文无码资源站| av午夜福利一片免费看| 久久香蕉国产线看精品| 四虎成人精品在永久免费| 国产激情无码一区二区APP| 国产伦片中文免费观看| 国产a在视频线精品视频下载| 一级全黄毛片| 亚洲一区网站| 一级毛片免费观看不卡视频| 97精品久久久大香线焦| 97超碰精品成人国产| 99久久精品久久久久久婷婷| 国产精品视频免费网站| 玖玖精品视频在线观看| 国产成人a在线观看视频| 国产成人综合久久精品下载| 国产成人综合网| 爽爽影院十八禁在线观看| 午夜国产小视频| 秋霞国产在线| 欧美另类第一页| 国产成人精品18| 久久99热这里只有精品免费看 |