基于ARM9的嵌入式3G無(wú)線視頻監(jiān)控系統(tǒng)設(shè)計(jì)
相對(duì)于有線網(wǎng)絡(luò)而言,無(wú)線網(wǎng)絡(luò)狀況更不穩(wěn)定,除去網(wǎng)絡(luò)流量所造成的傳輸速率的波動(dòng)外, 設(shè)備的移動(dòng)速度和所在位置也會(huì)嚴(yán)重地影響到傳輸速率。其次, 無(wú)線信道的環(huán)境也要比有線信道惡劣得多,數(shù)據(jù)的誤碼率也要高許多,而高壓縮的碼流對(duì)傳輸錯(cuò)誤非常敏感, 還會(huì)造成錯(cuò)誤向后面的圖像擴(kuò)散, 因此無(wú)線流媒體在信源和信道編碼上需要很好的容錯(cuò)技術(shù)。錯(cuò)誤恢復(fù)的工具隨著視頻壓縮編碼技術(shù)的提高在不斷改進(jìn)。舊的標(biāo)準(zhǔn)(H.261、H.263、MPEG-2 的第二部分)中,使用片和宏塊組的劃分、幀內(nèi)編碼宏塊、幀內(nèi)編碼片和幀內(nèi)編碼圖像來(lái)防止錯(cuò)誤的擴(kuò)散。之后改進(jìn)的標(biāo)準(zhǔn)(H.263+,MPEG-4)中,使用多幀參考和數(shù)據(jù)分割技術(shù)來(lái)恢復(fù)錯(cuò)誤。H.264 標(biāo)準(zhǔn)在以前的基礎(chǔ)上提出了三種關(guān)鍵技術(shù)來(lái)進(jìn)行錯(cuò)誤的恢復(fù), 分別是參數(shù)集合、靈活的宏塊次序(FMO)和冗余片(RS)。FMO 是H.264 的一大特色,可以是一幀中的宏塊順序分割,使分割后的片的尺寸小于無(wú)線網(wǎng)絡(luò)的MTU 尺寸,避免在網(wǎng)絡(luò)層再進(jìn)行一次數(shù)據(jù)分割,降低了數(shù)據(jù)傳輸?shù)念~外開銷。
3.4 嵌入式Web 服務(wù)器設(shè)計(jì)
本系統(tǒng)選用適合嵌入式系統(tǒng)的Boa 服務(wù)器, 它是單任務(wù)HTTP 服務(wù)器, 占用空間小, 另外支持動(dòng)態(tài)Web 技術(shù)的CGI 技術(shù), 源代碼開放, 性能高。嵌入式Boa 服務(wù)器移植到Linux 系統(tǒng)中的網(wǎng)上相關(guān)資料很多, 不再贅述。
下面重點(diǎn)介紹應(yīng)用程序接口CGI 程序設(shè)計(jì)。
公共網(wǎng)關(guān)接口CGI 是HTTP 服務(wù)器與其他機(jī)器上的程序進(jìn)行“ 交談” 的一種工具, 其程序須運(yùn)行在網(wǎng)絡(luò)服務(wù)器上。CGI 是一個(gè)用于Web 服務(wù)器與外部程序之間通信方式的標(biāo)準(zhǔn), 使得外部程序能生成HTML、圖像或其他內(nèi)容,而服務(wù)器處理的方式與那些非外部程序生成的HTML、圖像或其他內(nèi)容的處理方式是相同的。使用CGI的原因在于它是一個(gè)定義良好并被廣泛支持的標(biāo)準(zhǔn), 沒有CGI 就不可能實(shí)現(xiàn)動(dòng)態(tài)的Web 頁(yè)面, 除非使用一些服務(wù)器中提供的特殊方法。
CGI 程序入口為main () 函數(shù), 函數(shù)首先執(zhí)行初始化用到的變量, 然后根據(jù)提供的環(huán)境變量Environmentv 獲取當(dāng)前訪問用戶的用戶名, 判斷用戶的訪問權(quán)限, 然后根據(jù)REQUESM 得到用戶的請(qǐng)求方法。如果是POST, 則根據(jù)Contentl 獲取用戶請(qǐng)求內(nèi)容并分析;如果是GET, 則根據(jù)Querys 獲取信息并分析請(qǐng)求內(nèi)容, 最后根據(jù)用戶權(quán)限做出相應(yīng)的處理;如果是其他的請(qǐng)求方法, 則返回錯(cuò)誤, 不支持該請(qǐng)求方法。流程圖如圖5 所示。
圖5 CGI 程序處理流程
S3C2410 憑借其高性價(jià)比、豐富的接口以及對(duì)網(wǎng)絡(luò)的強(qiáng)大支持, 使其非常適合做網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)的Web視頻服務(wù)器的處理器。H.264 算法具有很高的編碼效率, 在相同的重建圖像質(zhì)量下, 能夠比H.263 降低50%左右的碼率。H.264 的碼流結(jié)構(gòu)網(wǎng)絡(luò)適應(yīng)性強(qiáng), 增加了差錯(cuò)恢復(fù)能力,能夠很好地適應(yīng)IP 和無(wú)線網(wǎng)絡(luò)。本系統(tǒng)支持動(dòng)態(tài)IP, 可以直接連入以太網(wǎng), 能夠即插即看。通過(guò)局域網(wǎng)(100 Mb/s 以太網(wǎng)) 內(nèi)部測(cè)試, 可以達(dá)到25 幀/秒CIF 圖像(320×240) 要求, 傳輸延遲0.6 s 以內(nèi), 編碼后的碼率150 Kbit/s , 由客戶端軟件解碼恢復(fù)后的視頻圖像清晰、流暢、沒有抖動(dòng)現(xiàn)象, 能獲得較好的視頻質(zhì)量。
評(píng)論