新聞中心

        EEPW首頁 > EDA/PCB > 設計應用 > 基于網絡和H.264的視頻監控系統設計

        基于網絡和H.264的視頻監控系統設計

        作者: 時間:2016-10-16 來源:網絡 收藏

        隨著公眾安全防護意識的越來越強,視頻安全監控系統因其直觀,便利,信息內容含量豐富等特征而被廣泛應用。市面上的監控設施大部分采用網絡作為傳輸媒介。本文在網絡通信技術的基礎上設計了一種系統方案,該系統由前端視頻服務器終端外加網絡絡和中心3部分組成。視頻服務器端使用攝像頭記錄視頻數據,經過DM643 7DSP進行H.264硬件編碼壓縮,RTP封包后經網絡傳輸。當中心接收到網絡傳來的RTP封包后,將其傳輸給監控中心的上位機進行軟件解碼處理,最后實時顯示視頻。網絡視頻監控的顯著特征就是具有廣泛的分布范圍,能夠便捷地在居民住宅區,工廠企業,大型商場,醫院等場所設置,組建網絡化監控系統。

        本文引用地址:http://www.104case.com/article/201610/308314.htm

        1 系統總體設計

        系統總體結構如圖1所示。

        基于網絡和H.264的視頻監控系統設計

        硬件設計部分有包含視頻記錄模塊和DSP模塊。其中, DSP模塊為此硬件系統設計的關鍵,這個模塊承擔整個嵌入式系統的控制與調度任務。通電后, DSP自動引導有關的外圍硬件設備驅動,用于控制視頻記錄模塊實時獲取視頻數據流,并對錄制的視頻數據以網絡抽象層單元的形式進行H.264硬件編碼操作,然后對其進行RTP封包操作并通過RJ45網絡接口傳送至網絡進行傳輸。軟件設計工程可分解為前端視頻服務器軟件開發和視頻監控中心軟件開發兩部分。前端視頻服務器軟件開發設計包括建立CCS開發環境,在CCS下編寫攝像頭和網卡等有關外圍設備驅動程序,以及編寫視頻數據記錄和H.264壓縮編碼代碼,編寫通信代碼模塊等。監控中心的軟件設計工程包含網絡數據的接收和解包模塊代碼,視頻數據的解碼模塊代碼以及界面顯示代碼。系統軟件流程如圖2所示。

        基于網絡和H.264的視頻監控系統設計

        2 系統硬件設計

        DM6437 DSP模塊硬件電路設計結構如圖3所示。

        基于網絡和H.264的視頻監控系統設計

        系統主控芯片采用TT公司基于第三代高性能VelociTI超長指令字架構的DM6437 DSP,這是一種功耗低,性價比高的定點DSP,擁有內部存儲資源和強大的視頻處理能力。DM64 37另外增加了視頻處理模塊以方便視頻前端的預處理和視頻后端的顯示,同時也減少了DSP核心的運算量。NAND Flash使用存儲空間為512 MB的K9F2G08UOM模塊,用于存儲啟動文件、軟件內核、根文件系統以及應用程序。SDRAM采用兩片存儲空間為128 MB的K4X51163PC芯片,該芯片工作電壓范圍為1.8~3.3 V,用于存儲和讀取系統運行時的程序和程序運行時產生的數據。網絡卡芯片使用Davicom公司設計的10/100 Mbit·s-1支持網速自適應的網絡卡芯片DM9000AE,因此網絡物理層和數據鏈路層的通信得以實現。

        3 系統軟件設計

        系統軟件設計按功能劃分為前端視頻服務器終端軟件設計以及視頻監控中心軟件設計兩部分。

        3.1 視頻服務器終端軟件設計

        視頻服務器終端的軟件系統設計主要包含微軟Windows XP系統配置和應用程序開發組成。該系統使用Windows XP作為硬件平臺的操作系統,借助對核心程序的調整去掉與系統不相關的外圍硬件驅動,并安裝了USB攝像頭驅動程序和DM9000AE網卡驅動程序等,共同組成應用程序正常運行所需要的軟件操作環境。應用程序的設計是軟件模塊設計的關鍵,共包含視頻數據的記錄、H.264硬件編碼壓縮和RTP協議打包發送3個模塊。

        3.1.1 視頻數據采集

        在Windows操作系統中,TI公司的DSP軟件開發工具CCS為用戶空間提供了一套完整的接口函數API,通過調用這些接口函數可對視頻記錄設備進行打開、采集和關閉等操作,視頻采集流程如圖4所示。在進行其他操作前,應先調用接口函數open()以阻塞方式啟動攝像頭設備,設備名稱為“video0”。然后借助ioctl()函數調整視頻采集參數,包括圖像尺寸、幀率、視頻格式等,例如將視頻格式設置為YUV422。CCS支持兩類視頻數據記錄方式:一種是通過使用read()函數直接讀取攝像頭;另一種是通過調用內存映射函數mmap()將采集到的視頻數據存儲到對應的用戶緩沖區再進行讀取。第二種更加快捷便利,所以本文采用此方式讀取記錄視頻數據。記錄到的視頻數據為YUV422格式,但H.264編碼器匹配的輸入視頻格式卻為YUV420P,所以為了將已經記錄的視頻數據傳送至H.264編碼器進行編碼,還需將YUV422格式的視頻數據轉換為YUV420P格式。視頻格式的轉換過程使用FFmpeg開源庫提供的API函數完成。

        基于網絡和H.264的視頻監控系統設計

        3.1.2 H.264編碼

        DM6437 DSP內部集成有多媒體硬件編解碼模塊,該模塊支持MPEG-4,H.263以及H.264編解碼方案,具備優異的編解碼性能。該方案通過該多媒體硬件編解碼模塊模塊進行H.264硬件編碼。當操作系統加載了多媒體硬件編解碼模塊驅動后,應用程序主進程可以調用多媒體硬件編解碼模塊函數接口實現視頻數據的H.264硬件編碼。

        3.1.3 RTP協議打包及傳輸

        經H.264編碼后的視頻數據通常分為兩個不同的層:視頻編碼層(Video Coding Layer,VCL)和網絡適配層(Network Adaptation Layer,NAL)。這兩個層各有分工,視頻編碼層主要功能是以H.264規定的編碼方式表示視頻信息,而網絡適配層則負責根據網絡實際情況對數據進行封包,目的是使視頻編碼層數據的格式方便網絡傳輸。根據RFC3984,H.2 64視頻流的封包模式可有以下3種形式:單一網絡適配層單元模式,組合封包模式以及分片封包模式。(1)對于長度

        3.2 監控中心軟件設計

        監控中心系統主要負責H.264編碼后的視頻數據流接收,軟件解碼以及界面顯示。解碼后的數據通過網絡接收,使用UDP Socket編程;而H.264視頻流的軟件解碼使用開源的FFmpeg函數編寫實現,界面顯示通過使用開源跨平臺的多媒體庫,即SDL(Simple DirectMedie Layer)實現。監控中心軟件流程如圖5所示。

        基于網絡和H.264的視頻監控系統設計

        4 系統測試及分析

        在實驗室內進行系統綜合測試,在視頻監控前端采用設定的視頻服務器終端,對應的監控主機使用臺式PC機。監控前端設置的視頻記錄像素分辨率為1 024×768,視頻傳輸速率為30 Sample·s-1,按順序先后運行服務器端程序以及客戶端程序。記錄到的視頻監控系統運行效果如圖6所示,截圖畫面顯示視頻播放流暢、清晰度高,較好地滿足了系統設計要求。

        基于網絡和H.264的視頻監控系統設計

        5 結束語

        結合網絡通信技術和流媒體技術,基于DM6437DSP和嵌入式Windows操作系統,設計并實現了一種可通過網絡傳輸的視頻監控系統,并將此方案在實驗室內進行了網絡驗證。實驗結果表明,這種方案工作正常,較好地滿足了設計要求。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 荔浦县| 景东| 中西区| 扶沟县| 屯门区| 巧家县| 方山县| 堆龙德庆县| 玉溪市| 瓦房店市| 理塘县| 华阴市| 图片| 郯城县| 宜黄县| 正阳县| 谷城县| 龙口市| 沾化县| 远安县| 舟山市| 虹口区| 乌兰察布市| 乌兰浩特市| 三都| 泽库县| 邓州市| 普兰店市| 福建省| 定襄县| 信宜市| 磴口县| 平远县| 东丽区| 福安市| 奉节县| 弥勒县| 襄汾县| 无锡市| 濉溪县| 湘乡市|