第二章 文獻探討
2.2 多媒體串流資訊壓縮技術簡介
在本論文所使用的多媒體資訊中可區分為語音以及影像兩個壓縮技術,而多 媒體壓縮技術中主要目的是龐大的原始資料訊號依據不同的網路頻寬將其壓縮 至適合此網路頻寬傳輸的大小,當接收端收到多媒體封包之後,透過相同的壓縮 技術對其封包進行解碼,即可在透過多媒體設備進行播放。而目前這些壓縮技術 無論是語音或是影像都隨著網路的蓬勃發展,各種針對語音以及影像壓縮技術也 隨之孕育而生出更多種類[6][7][8]。
語音壓縮技術可分類成波形編碼、參數編碼、混合編碼[9],波形編碼主要是 希望可以呈獻最原始的訊號波形為目的,因此它具有良好的語音質量與抗噪能力,
但編碼所需的速率較高且需較多的運算。參數編碼基本上是對語音取得特徵參數 並進行編碼,使重建語音具有盡可能恢復的功能,即是保持原始語音的目的。而 參數編碼的最大優點是編碼速率低但語音品質較差。混合編碼則是綜合了上述兩 種優點,其加入了線性預測編碼(LPC, linear predictive coding)模型,因此具備較高 的語音品質與抗噪能力。
影像壓縮技術主要是將資訊中多餘的部分去除達到資料壓縮之目的,而資料 中多餘的資訊可分為四類:時間上的、空間上的、統計上的、感知上的多餘資訊,
如圖 3 所示,為一個典型的影像編碼器,在編碼時,編碼器會對當前信號進行預 測,稱作預測信號(predicted signal),預測的方式可以是時間或是空間上的預測
(inter/ intra prediction)。得到預測信號後,編碼器會將原始信號減去預測信號後得 到殘餘信號(residual signal),編碼器並不會直接對殘餘信號進行編碼,而是將殘餘 信號經過離散餘弦變換後進行量化,進一步的去除空間上和感知上的多餘資訊。
量化後得到的量化係數會再透過 Entropy Coding[10],去除統計上的多餘資訊。
圖 3、標準影像編碼器[11]
2.2.1Speex 語音壓縮技術簡介
在語音壓縮器的選擇上考量:Sampling、Bit-rate、Variable Bit Rate(VBR)、
Packet Loss Concealment(PLC)與是否為 Open-Source。如表 1 中所示,在各種不同 的語音壓縮技術中進行觀察後可發現 Speex[12]可依據不同的網路環境進行多種
在 2002 年由 Jean-Marc Valin 所提出 Speex[13]語音編解碼技術,主要是基於 編碼簿激發線性預測編碼(Code Excited Linear Prediction,CELP)演算法不斷改良
(Wideband)、超寬頻(Ultra-wideband)。在 Speex 窄頻模式中,主要使用 8kHz 的取 樣率進行編碼,編碼工作分別是 Line Spectral Pairs(LSP) Quantization 線性的量化、
Adaptive codebook search 可調變的編碼簿搜尋、Sub-vector Fixed codebook search 固定式的編碼搜尋,以 128kbps 的原始語音品質來說,進行 8k Bitrate 進行壓縮,
即為 16:1 的壓縮率。
Speex 在封包遺失的情況下也能妥善處理對語音品質所造成的影響,有效的 將語音品質損失降低。Speex 為了能有廣泛的相容性,可調整編解碼運算複雜度
(Complexity),其參數控從 1 至 10,能夠有效的減少記憶體的使用量。另外 Speex 也提供了可變位元率(Variable Bit Rate,VBR)功能,因此綜合以上特點 Speex 非 常適用於嵌入式平台。
2.2.2 H.264 和 x264 影像壓縮技術簡介
H.264[14]由兩個視訊影像主要的組織共同制定而成,國際電信組織(ITU-T) 和國際標準組織(ISO)於 1990 年開始分別制定了一系列的影像壓縮標準,ISO 制 定 MPEG-1/2/4 標準[6][7][8],ITU 制定了 H.261-264[14][15]標準。直到 2001 年
12 月 ISO MPEG 與 ITU-T VCEG 組成聯合視訊小組(Joint Voice Term ,JVT)[16],
共同制訂新的視訊壓縮格式,此新格式分別在 ITU-T 中稱為 H.264,而 ISO 則把 其 納 入 MPEG-4 Part10(ISO/IEC 14496-10) 將 其 格 式 命 名 為 進 階 視 訊 編 碼 (Advanced Video Coding,AVC),一般合稱為 H.264/AVC,此國際標準的首個版本
推出於 2003 年,而修訂的第二版也於 2005 年 3 月定案。H.264/AVC 影像編碼標 準 首 次 將 影 像 編 碼 層 (Video Coding Layer , VCL) 與 網 路 提 取 層 (Network
Abstraction Layer,NAL)的概念納入其中,相較於過去影像壓縮技術(如 MPEG-1/2 和 H.263)對於編碼效能更加提升,且 H.264/AVC 使用 NAL 來提供網路狀態使得
VCL 能夠具備更好的編碼和除錯能力,因此 H.264/AVC 對於多媒體串流及行動 電視的相關應用可說是非常合適。H.264 中在壓縮率上能夠利用三種方式進行影 像品質選擇,qp 模式為以恆定量化值(Constant Quantizer)方式編碼為基礎,依 照設定量化品質為目標來進行壓縮;Bitrate 模式是以目標位元率為目標的壓縮方 式,能夠進行壓縮後檔案大小的計算但是品質是未知的;Crf 模式以固定位元率 係數(Constant Ratefactor)為基礎,如果說 Bitrate 是以目標檔案大小為目標,那 麼 Crf 就是以目標品質為目標,相對的檔案大小是未知的。
x264[17] 是 一 套 經 由 GPL(General Public Library)[18] 授 權 自 由 軟 體 (free
software library)用於進行影像串流壓縮格式 H.264/AVC 的編碼,而非解碼。x264 現已被許多應用程式甚至許多網站(如,YouTube 和 Facebook)都普及使用,且在 最近的研究中[19],x264 品質表現甚至比某些商業 H.264 編碼器還要好。綜合而 論,H.264 是一套影像壓縮標準而 x264 則是實現 H.264 的產物。