《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計應(yīng)用 > 可分層視頻編碼技術(shù)解析
可分層視頻編碼技術(shù)解析
來源:全球IP通信聯(lián)盟
摘要: 可分層視頻編碼是專為解決當前視頻會議的廣泛部署所面臨的三大問題設(shè)計的……
Abstract:
Key words :

      可分層視頻編碼SVC)是一種獨特的視頻壓縮技術(shù),,在實際操作中帶來了許多重要的優(yōu)勢,。目前已經(jīng)有兩大視頻廠商——Vidyo和Radvision開始提供這項技術(shù),,另外,,還有幾家廠商獲得了這項技術(shù)的許可。希望在未來幾年間能看到更多廠商使用這項技術(shù),。
      可分層視頻編碼技術(shù)到底有什么獨特之處呢,?可分層視頻編碼是專為解決當前視頻會議的廣泛部署所面臨的三大問題設(shè)計的:
      1. 網(wǎng)絡(luò)并不總能提供高質(zhì)視頻所需的低丟包和抖動。
      2. 網(wǎng)絡(luò)并不能為所有用戶提供持續(xù)的可用帶寬,。
      3. 由于MCU對連接帶寬和CPU資源的需求比較高,,因此,對當前所用的多點會議單元(MCU和橋)分層較為困難,,而且成本相當高,。
     
  這里有一個比較大的爭議。首先我們來看一下可分層視頻編碼技術(shù)的原理,,作為一名工程師,,我通常都會想先了解一些這個技術(shù)的原理,然后才會去體悟它的優(yōu)勢,。而如果你剛好是做市場推廣的,,那么這里你可能不得不遷就我一下了,關(guān)于分層視頻編碼技術(shù)的優(yōu)勢我們會在日后再進行討論,。
      何為可分層視頻編碼,?
     
  SVC對傳輸在IP網(wǎng)絡(luò)上的一系列視頻幀采取了一種特有的打包方式。現(xiàn)在的編碼器(非分層的)通常以連接建立的帶寬大小為基準,,在給出的可用帶寬下自動分配分辨率和幀頻,,以獲得最佳的編碼效果。帶寬越高,,編碼器所交付的高清晰移動圖像的質(zhì)量也就越高,。
     
  如果帶寬非常高,并且足以提供每秒30,、乃至60幀的全高清視頻,,那么這時就不會有任何的取舍問題。不過在現(xiàn)實的帶寬還不能達到那么高的情況下,,編碼器就要在分辨率的優(yōu)化和幀頻的優(yōu)化間有所偏重,,而這個結(jié)果主要取決于視頻中移動圖像的數(shù)量和編碼器的設(shè)置,。

                               圖1 傳統(tǒng)編碼器使用同一數(shù)據(jù)包流對整個視頻編碼
     
  現(xiàn)在的大部分編碼器還包含動態(tài)帶寬算法,這種算法的目的在于在網(wǎng)絡(luò)發(fā)生數(shù)據(jù)包丟失時減少帶寬的使用量,。動態(tài)帶寬算法的原理是,,先假定發(fā)生了數(shù)據(jù)包的丟失,這就代表網(wǎng)絡(luò)已經(jīng)出現(xiàn)了擁堵,,而降低帶寬就能緩解擁堵,,這樣就能獲得一個更好的連接。
     
  SVC的工作原理就不同于傳統(tǒng)的編碼器,,它利用多個不同的流對視頻圖像進行壓縮,,每個流處理高質(zhì)視頻圖像的不同組成部分,。第一個視頻流用最低的帶寬來處理清晰度低的圖像,,附加流則對包含更高分辨率、幀頻和質(zhì)量水平的信息進行編碼,,以獲得更高清晰度和更優(yōu)質(zhì)的移動圖像,。不過這些附加流并不是對第一個流中包含信息的重復(fù),而是對它的補充,。
                                   圖2 SVC編碼器利用基層和多層編碼來加強基礎(chǔ)信息
     
  試想一個接收編碼器能獲取這個視頻會議系統(tǒng)全部的數(shù)據(jù)流,,這個解碼器就能把這些數(shù)據(jù)流全部整合,還原成出具備原清晰度的全動態(tài)圖像,。而如果第二個編碼器的連接速度很慢,,帶寬只夠接收低分辨率的圖像,那原本的編碼器還是能查看到同一個終端獲得的相同視頻源,,不過卻只能接收到基層的流,。解碼器的解碼性能可能會受到帶寬、可用CPU資源的影響,,也可能獲得的圖像只要在筆記本這么大的窗口中就能顯示出來了,,而不需要更高分辨率的顯示屏。
     
  有些人認為,,“我們現(xiàn)在的多點橋(MCU)就是在做這些”,。這一點毋庸置疑,MCU確實能把一個端點的高清圖像的代碼轉(zhuǎn)換成可用于另一個端點的標清圖像,。不過要具備這個能力,,MCU需要具備大量的CPU周期,或是專業(yè)的信號處理器,。而在SVC環(huán)境中的CPU僅需確定SVC流的哪些部分需要發(fā)送,,哪些不需要就可以了。如果一個端點只要基層信息,,那么也就只要把基層的流發(fā)送出去,;而如果端點要求原清晰度的圖像,,那么就要把所有的流都發(fā)送出去;而如果端點對清晰度的要求居中,,則需要發(fā)送這些SVC流的部分組合,。由于這種操作比用一個計算點的方式更方便,所以我們相信SVC橋會便宜得多,,并且能夠處理更多同步的端點,。不過這些將涉及到分層視頻的部署——這將在我們之后的文章中討論。
此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。