瀏覽單個文章
LIBIDO
Major Member
 

加入日期: May 2001
文章: 122
引用:
Originally posted by LIBIDO

所不同的只是 MPEG-2 比 MPEG-4 在 MC 的部分,還多了 Adaptive frame/field prediction(field 使用 16x8 的 MC 而不是 16x16)。但是不知道為什麼,XviD 好像也可以用 frame/field prediction 的 MC(因為 XviD 可以選用 MPEG 的 Quantization Type 的關係嗎?關於這點我不是很清楚,請前輩們再幫忙補充)

呃,我的理解有誤 ^^;
MPEG4 也是可以用 16x8 的 MC,MPEG2 多的是一些處理 interlacing 的 option。MPEG4 提供了許多 Interlaced coding 的 tools,比較起來,MPEG4 的 interlacing mode 大概會比 MPEG2 多 10% 的效率。
至於量化的方法是用 MPEG2 還是 H.263 當然和這個沒有關係 ^^;;


MPEG 作 DCT 轉換時是以 8x8 的 "block" 為單位,將 pixel 轉換至 frequency domain。
MC(Motion Compensation)則是以 16x16 的 "macroblock" 為單位,一個 macroblock 包含 4 個 8x8 的 luminance "block"。
frame-based DCT,DCT 轉換時循序以 1, 2, 3, 4, 5, 6, 7, 8 條掃瞄線為一組,9, 10, 11, 12, 13, 14, 15, 16 條掃瞄線為一組,去作 DCT 轉換。
field-based DCT,DCT 轉換時交錯以 1, 3, 5, 7, 9, 11, 13, 15 條掃瞄線為一組,2, 4, 6, 8, 10, 12, 14, 16 條掃瞄線為一組,去作 DCT 轉換。也就是拆成奇偶兩組,分別去作 DCT 轉換。
frame-based prediction(16x16 MC),每個 macroblock 一個 MV(Motion Vector)。
field-based prediction(16x8 MC),分成奇偶兩組,各一個 MV。如果是 B-frame 則可能會有四個 MV([forward + backward] * [odd + even])。

zig-zag scan,MPEG1 用來掃瞄 DCT Coefficients,轉成一維數列的順序,MPEG2/4 多了 alternate scan,其中 vertical scan 的掃瞄順序對交錯的畫面比較有效率。
舊 2002-07-02, 01:41 AM #17
回應時引用此文章
LIBIDO離線中