基于IPV6的嵌入式視頻監(jiān)控系統(tǒng)
3. 軟件總體結(jié)構(gòu)與設(shè)計
系統(tǒng)軟件設(shè)計包括服務(wù)器端和客戶端軟件設(shè)計。服務(wù)器端軟件主要實現(xiàn)采集音視頻、壓縮編碼、打包發(fā)送到網(wǎng)絡(luò)??蛻舳塑浖饕獙崿F(xiàn)接受服務(wù)器發(fā)送過來的音視頻壓縮包,然后對數(shù)據(jù)拼接解碼、播放,如圖 4所示。
3.1MPEG-4視頻流的 RTP組包處理
要通過 RTP傳輸 MPEG-4視頻流,需要對其進行打包 (Packetization)處理。加上時間、同步等信息。MPEG-4對每個 voP (voP是 VO在某一時刻的對象,即某一幀 vo)獨立進行編 / 解碼。因此以 VOP為單位進行打包,既提高了效率又充分利用了 MPEG-4的編碼特性。為了不造成 IP碎片,包長還須有一個限制,就是不能超過該網(wǎng)絡(luò)路徑的 MTU(Maxium Transit Unit)??紤]到傳輸?shù)母咝院蛠G包的魯棒性,我們?nèi)“L為當前 VOP大小與路徑 MTU值的較小值,采用如下組包機制:
1 VOP能放入單個 RTP包,就把此 VOP單獨放入一個 RTP包中;
2 VOP分段,放入多個 RTP包,此時須把 VOP頭部信息復制到每個 RTP包,以去除包間的相關(guān)性,達到丟包的魯棒性 :為減小包數(shù),降低開銷,一包中能放入多少宏塊就盡可能多地放入多少宏塊,但即使最后一個包中仍有剩余空間,也小能把另一 VOP中的宏塊放入此包中,算法流程如圖 5所示。
評論