1988 - H.261 視訊壓縮#
案件摘要#
1988 年,CCITT(之後的 ITU-T)制定 H.261——第一個國際視訊壓縮標準,用於 ISDN 視訊會議。現代影片壓縮的「幀間預測 + 運動補償 + DCT」架構就此定型。
前因#
- 靜態影像壓縮(JPEG 之前身)已成熟,但影片每秒 30 幀,若每幀獨立壓縮,位元率是 JPEG 的 30 倍——遠超 ISDN(2×64 kbps)。
- 影片與靜態影像的關鍵差異:相鄰幀之間幾乎一樣。問題是:怎麼描述「一樣」?
線索與推理#
線索一:運動補償預測#
把每幀切成 16×16 巨集區塊(macroblock)。對每個區塊,在前一幀中搜尋最相似的位置,記錄「位移向量」而不是區塊本身:
\[ \hat B(x,y) = B_{ref}(x + d_x,\ y + d_y) \]
殘差(預測與實際的差)才做 DCT 編碼。影片壓縮的架構就此定型:
\[ \text{I 幀(獨立)} \to \text{P 幀(前向預測)} \to \text{B 幀(雙向預測,H.261 之後)} \]
線索二:搜尋的代價#
運動估計是全系統最耗算的步驟。全搜尋(在 ±16 範圍逐一比對)需 \((33)^2\) 次 SAD 計算:
\[ SAD = \sum_{x,y} |B(x,y) - B_{ref}(x+d_x, y+d_y)| \]
工程上發展出三步搜尋、菱形搜尋等快速演算法——「精度 vs 計算量」的取捨至今仍是視訊編碼的核心課題。
線索三:碼率控制#
視訊會議要求固定位元率(CBR)。編碼器需動態調整量化參數(QP):
\[ \text{位元率超標} \Rightarrow QP \uparrow \Rightarrow \text{畫質下降、碼率下降} \]
這是「在有限通道上維持品質」的即時控制問題,之後所有串流系統都繼承。
後果#
- H.261 → H.263(1995,低碼率)→ H.264/AVC(2003)→ H.265/HEVC(2013)→ H.266/VVC(2020)。
- 運動補償 + DCT 的架構三十年不變,每代只是把區塊切得更細、預測方向更多、熵編碼更強。
- 視訊會議(之後的 WebEx、Zoom、視訊通話)的技術基礎就此打下。