黃金幀編解碼器實現(xiàn)高質(zhì)量實時網(wǎng)絡(luò)視頻
黃金幀 (Golden Frame)
對 On2 TrueMotion 編解碼器的新用戶而言,最令人驚喜的功能之一是黃金幀。就象其它壓縮器一樣,TrueMotion 也保留一個最新解壓的幀作為當(dāng)前幀的預(yù)測器。目前的各種編解碼器中,有些保留最后幾個幀;有些則采用一個無序解壓的未來幀,然后用作預(yù)測器 (如在 B 幀之前傳輸 P 幀)。TrueMotion 編解碼器和 VP7 則特別改為保留過去任意一個解壓數(shù)據(jù)的幀。這種編解碼器能夠更新某個幀在未來任一點的任何部分。我們稱這種二級參考幀為黃金幀,并已發(fā)掘出它的眾多用途。
圖1:On2 VP7的幀類型
注:這些幀類型僅供參考。利用VP7 入門開發(fā)工具包,,用戶可以準(zhǔn)確控制幀何時使用或更新黃金幀或最后的幀參考緩沖器。
前景影響大
我們發(fā)現(xiàn)黃金幀的第一個用途是前景和背景視頻的分割。例如,大多數(shù)視頻會議應(yīng)用中,總是有一個人在靜態(tài)的背景前面講話。這個發(fā)言人遮蔽了背景,但隨著他在座位上的移動,會顯露出局部背景。TrueMotion編解碼器利用非移動的高質(zhì)模塊來更新黃金幀,即使前景快速移動,也可以保持高質(zhì)量的背景圖像。
丟包恢復(fù)
我們還可以在丟包情況下采用黃金幀。在一般的視頻會議系統(tǒng)中,接收器在發(fā)現(xiàn)丟包時,會用信號通知發(fā)送者。發(fā)送者一接收到這個信號,就會對一個獨立于前面各幀的幀 (即‘關(guān)鍵幀’) 進行編碼來恢復(fù)。該幀由于必須從頭開始編碼,故往往非常大,這會導(dǎo)致視頻的播放斷斷續(xù)續(xù)。另一種情況是,這是一個低質(zhì)量的幀,看起來比周邊的幀要模糊,而且產(chǎn)生視覺干擾脈沖。
On2 的VP7視頻會議系統(tǒng)提供一個更好的選擇方案:發(fā)送者可以發(fā)送一個只涉及黃金幀的幀。我們稱之為恢復(fù)幀。由于我們不必對幀從頭開始編碼,因此可以獲得一個質(zhì)量更好而且更小的幀。
VP7恢復(fù)幀
幀0是關(guān)鍵幀
幀1到6都只根據(jù)前一個幀來構(gòu)建預(yù)測器
幀7只以幀0為參考
即使幀1到6中的任一個丟失了,VP7仍然能夠?qū)?進行解碼,因為它只以幀0為參考
圖2:利用恢復(fù)幀來處理丟包問題
視頻會議
多方視頻會議也可以采用黃金幀。在多方會議系統(tǒng)中,各個用戶的連接帶寬都不同。一般的解決方案是把帶寬減小到一個假定的最小公分母:所有用戶都以最慢的連接都能接收的速度來收取數(shù)據(jù)。
基于On2 VP7技術(shù)的系統(tǒng)則采用了一種新穎的替代方案。通過使用黃金幀、普通幀和可拋棄幀,VP7 可獲得四個級別的有限時間可調(diào)性。這意味著我們可以根據(jù)每一方的需要生成不同的比特流 (參見圖3)。這樣,會議中的高清方就不會受到較低速連接的影響。最重要的是,這種方案無需額外的CPU成本。
圖3:采樣時間可調(diào)性模式和On2 VP7
每一個比特流都需要較低的幀速率來解碼。因此,帶寬最低的用戶可以接收 5 fps 的比特流;而帶寬最大的用戶可接收全 30fps。
黃金質(zhì)量
On2 VP7技術(shù)還利用黃金幀來提高質(zhì)量。在極緩慢地移動的鏡頭或變焦中,一個周期性的高質(zhì)量黃金幀會恢復(fù)在重復(fù)應(yīng)用環(huán)路濾波器或亞像素運動 (sub-pixel motion) 時所丟失的細節(jié),從而保持圖像的質(zhì)量,而結(jié)果可以相當(dāng)明顯 (見圖4)。在另一些情況下,黃金幀還可作為一個良好的預(yù)測器,預(yù)測屏幕上的某些圖像何時返回到先前的位置。
評論