基于低成本FPGA的高清低碼流H.264攝像機(jī)SoC參考設(shè)計
● OSD顯示
本文引用地址:http://butianyuan.cn/article/221557.htm可以疊加2048位圖像,圖像以宏塊為單位,結(jié)構(gòu)可以有128x1、64x2、32x4、16x8、8x16、4x32、2x64、1x128等選擇,在屏幕的位置可以設(shè)置;
● 區(qū)域管理
可以定義隱私區(qū)域、運(yùn)動檢測區(qū)域等;
?、?編碼處理
● 編碼格式
用H.264 main profile with cabac算法編碼,可以提高壓縮率,減少碼流;由于完全實(shí)現(xiàn)H.264的全部算法需要大量的資源,需要很大容量的FPGA,這是不現(xiàn)實(shí)的,如我們用1個測試序列做過測試,2個參考幀比1個參考幀的壓縮率提高了5%,但是2個參考幀的處理要比1個參考幀的處理需要多遠(yuǎn)不止5%的資源,對于一些很復(fù)雜而壓縮 率提高不多的方法我們暫時不采用,降低碼流是1個系統(tǒng)性的工作,需要從多個環(huán)節(jié)考慮;另外我們必須保證算法的準(zhǔn)確,以免在解碼端產(chǎn)生誤差;
● 編碼能力
最大為1280x720x25fps,如果需要同時編碼多路碼流,需要考慮3路碼流的每秒宏塊編碼數(shù)量之和不能大于90000,如 1280x720x23fps+320x180x23fps,1136x640x24fps+568x320x24fps+284x160x24fps 等;
● 圖像質(zhì)量控制
編碼量化參數(shù)調(diào)整范圍:24~41,值小碼流大,圖像質(zhì)量好,值大碼流小,圖像質(zhì)量差;
● 碼流控制
碼流控制方式為CBR,控制平均碼流;
③ 網(wǎng)絡(luò)處理
● 網(wǎng)絡(luò)速度峰值
目前網(wǎng)絡(luò)接口使用全雙工100M以太網(wǎng),由于圖像的編碼數(shù)據(jù)量是不均勻的,I幀的編碼數(shù)據(jù)量大,P幀的編碼數(shù)據(jù)量小,所以數(shù)據(jù)量呈脈沖式分布,在傳輸I幀的 編碼數(shù)據(jù)時盡量采用大的網(wǎng)絡(luò)速度有利于減少延遲,但是應(yīng)該考慮到ADSL的承受能力,可以設(shè)置1~70M的網(wǎng)絡(luò)速度峰值;
● 碼流均值
碼流均值是1秒種傳送的數(shù)據(jù)量,可以設(shè)置16Kbps~8128Kbps的碼流均值;CBR的碼流控制方式就是根據(jù)碼流均值來進(jìn)行的;
● 碼流緩沖
由于編碼數(shù)據(jù)量呈脈沖式分布,當(dāng)編碼的數(shù)據(jù)產(chǎn)生速度高于網(wǎng)絡(luò)速度峰值時,編碼數(shù)據(jù)就需要緩存在LP DDR SDRAM,否則就會丟失;
● 協(xié)議
TCP、RTP、RTSP、DHCP、NTP、HTTP、FTP、SMTP和DDNS;
?、?管理
● NIOS II
NIOS II是內(nèi)置CPU,運(yùn)行ucLinux,負(fù)責(zé)媒體流數(shù)據(jù)的緩沖和打包發(fā)送;
● 參數(shù)(通過WEB提供)
接收參數(shù)設(shè)置和更新,保留2份參數(shù),1份是出廠時的參數(shù),1份是實(shí)際使用的參數(shù),在正常加電時實(shí)際使用的參數(shù)起作用,按復(fù)位鍵時出廠時的參數(shù)起作用;
● 升級(通過WEB提供)
FLASH里面保存兩個配置數(shù)據(jù),1個是出廠時的配置數(shù)據(jù),1個是升級后的配置數(shù)據(jù),當(dāng)按復(fù)位鍵和升級配置數(shù)據(jù)加載失敗時按出廠時的配置數(shù)據(jù)進(jìn)行加載,否則按升級配置數(shù)據(jù)加載;
● 報警接口(通過WEB提供)
提供報警信號的上傳功能;
?、?音頻
支持雙向64kbits ALaw和16kbits/32kbitsADPCM的收發(fā),聲音偵測。
5. 結(jié)束語
用FPGA作為SoC的高清低碼流H.264攝像機(jī)已經(jīng)完成設(shè)計,達(dá)到設(shè)計目標(biāo),視頻質(zhì)量清晰流暢,完全滿足智能手機(jī)作為監(jiān)控終端的要求。
評論