基于ML86500的網(wǎng)絡(luò)攝像機方案設(shè)計
在本軟件總體設(shè)計方案中,采用了分層模塊化設(shè)計,各層之間是一種弱耦合關(guān)系,這樣各功能模塊獨立,便于開發(fā)和維護,該系統(tǒng)具有良好的移植性。RTOS操作系統(tǒng)與應(yīng)用程序之間增加Free OS API層,減少了操作系統(tǒng)變更時軟件移植的工作量。
TCP/IP協(xié)議棧為雙協(xié)議棧,不僅支持現(xiàn)有的IPv4協(xié)議,而且能夠支持下一代的互聯(lián)網(wǎng)協(xié)議IPv6;提供HTTP Server功能,用戶可能通過IE訪問IP-Camera,進行媒體播放、查看和設(shè)置參數(shù);提供FTP功能,便于用戶傳輸文件,進行程序升級;提供SNTP功能,保證IP-Camera的時間能與標(biāo)準(zhǔn)時間服務(wù)器同步;提供DDNS功能,能夠讓用戶通過動態(tài)域名方式訪問IP-Camera;提供SIP功能,使得IP-Camera能夠與SIP電話通信,使得視頻監(jiān)控更加便捷靈活;媒體數(shù)據(jù)傳輸采用RTP協(xié)議,保證圖像的實時性;文件系統(tǒng)支持FAT16和FAT32格式。
3.2 MPEG4編碼開始及停止流程
MPEG4編碼開始的主要作用是按照設(shè)定的參數(shù)初始化視頻解碼芯片、視頻編碼芯片,開始視頻編碼,同時創(chuàng)建MPEG4 TASK,用于讀取視頻數(shù)據(jù)流,發(fā)送數(shù)據(jù)。
MPEG4編碼停止的主要作用是停止視頻解碼芯片、視頻編碼芯片工作,停止MPEG4 TASK。MPEG4編碼開始及停止流程圖如圖5所示。
MPEG4 TASK主要用于讀取視頻數(shù)據(jù)流,發(fā)送數(shù)據(jù),其主要流程圖如圖6所示。MPEG4 TASK運行后,將等待信號量,將自己掛起。當(dāng)ML86500產(chǎn)生一幀數(shù)據(jù)時,會產(chǎn)生中斷,在中斷服務(wù)程序中會發(fā)送信號給MPEG4 TASK,MPEG4 TASK重新運行,并且讀取MPEG4視頻數(shù)據(jù)流,然后使用RTP協(xié)議通過網(wǎng)絡(luò)發(fā)送數(shù)據(jù)給客戶端(PC)。
4 結(jié) 語
本方案已經(jīng)過實際測試,能夠支持PAL/NTSC制式的視頻信號輸入,支持D1(N制720*480/P制720*576)、VGA(640*480)、QVGA(320*240)等多種分辨率輸出,網(wǎng)絡(luò)傳輸帶寬支持20 kb/s~6 Mb/s,低成本實現(xiàn)了高畫質(zhì),并且圖像實時性好,可廣泛應(yīng)用于倉庫、商場、交通、家庭等多種視頻監(jiān)控場合,非常具有市場競爭力。
評論