基本上你的測試有很多東西都沒有控制好,
所以很難說AviUtl是不是比較"好".
舉個例來說,
第一個M4C和DivX 5.02 AviUtl的PSNR差約0.3 ~ 0.4 dB
但是bits相差了有4MB.
這4MB分到2182個frame裡,每個frame大概可以多出1900 Bytes,
換成bits大概是14~15 Kbits
如果給M4C的target bitrate高一點,我想M4C應該可以把PSNR追到差0.1 dB左右.
這樣的差距並不算太大.
</FONT><!-- BBCode Quote End -->
檔案大小之所以不同,是因為除了 M4C 之外,每個 Codec 都是用固定 Quantizer 2x 壓縮,不同 Codec 壓縮能力不同,自然檔案大小會不同。
我是要測 Codec 的最高品質,當然用 Quantizer 2x 下去壓縮,壓出來檔案比較小就比較小,那也認了,該 Codec 的最高品質就只能這樣。看數據的人要自行根據檔案大小和 PSNR 來做判斷。像 FFVFW 這個 Codec 壓出來的 PSNR 和 XviD 差不多,檔案大小卻小很多,同樣 Quantizer 2x 的品質底下,我們可以說 FFVFW 比 XviD 優秀(FFVFW 能找到更匹配的參考方塊,讓誤差較小,需要編碼的資料較少;或是 FFVFW 內定的 H.263 量化矩陣,在這部動畫,剛好可以刪除掉一些 DCT 係數,而又不會影響 PSNR 太多..等等)。低流量的時候,其實就是 Quantizer 提高,其他 Codec 的能力(量化矩陣,ME,3D VLC...)都是一樣的,看數據的人可以自行類推。如果不用固定品質壓縮,而改在那邊調整什麼流量曲線壓縮參數等等,變成是在測壓縮的人的功力,而不是 Codec 的特性和實力了。
都設成固定 Quantizer 2x,才有辦法一個 frame 一個 frame 比較。否則拿 Quantizer 4x 的 frame 和 Quantizer 2x 的 frame 比較,不是更沒有意義?

而 M4C 則是例外,M4C 會比較小,是因為它的 keyframe 只能用 Quantizer 4x,壓縮得比較厲害,所以最後檔案大小就會比較小。不過這是無可奈何的事情,不是我故意要將它壓小,而是 M4C 的天限,用 M4C 壓出來就是會比較小,這已經是 M4C 的極限了,就跟其他 Codec 也用極限 Quantizer 2x 壓縮一樣,我覺得這樣比其實很公平,沒道理要降低其他 Codec 的能力,配合 M4C 的檔案大小

你說把 M4C 的 target bitrate 提高一點,不過已經沒有辦法提高了,您沒注意到我流量已經設成不可能的 32767 了嗎?

這個已經是 M4C 的極限了。(當然我沒有特意最佳化,認真搞是可以再高一點)
<!-- BBCode Quote Start --><FONT COLOR=GREEN>
另一方面,
讓AviUtl用較慢的Motion Estimation並不完全公平.
基本上只要用較快的ME都會有一小部份的quality loss,
這是因為並沒有辦法找到最好(使PSNR高)的Motion Vectors.
從這兩點看起來就很難說AviUtl是不是比較好.
</FONT><!-- BBCode Quote End -->
你誤會了,我沒有設定 AviUtl 使用比較慢的 ME。
AviUtl 和 VD 各壓一個做比較的是「DivX 5.02 不使用 B-Frame」的版本。在這個測試中,雙方壓縮的訊源都一樣,Codec 的設定也都一樣,唯一不一樣的只有壓縮的軟體,一個是 AviUtl,一個是 VD。AviUtl 並沒有特別使用比較慢的 ME。
如果設定不一樣,那麼壓出來 PSNR 會不一樣,是很自然的事情。就是因為設定都一樣,壓出來卻不一樣,我才會那麼驚訝

<!-- BBCode Quote Start --><FONT COLOR=GREEN>
如果你想做這一類的測試,
例如想找PSNR最好的codec.
那麼最好的codec應該是在target bitrate與quantizer都一樣的情形下,
用最慢(complexity最高)的motion estimation algorithm.
</FONT><!-- BBCode Quote End -->
這個是做不到的,相同的 Quantizer,壓出來的 bitrate 不會都一樣。
不同的 Codec 用的 ME 也不一樣,有些根本不讓你調,我是用各個 Codec 最好的 ME,跟最好的品質下去壓縮。大家都拿最好的武器出來比試,這樣很公平吧?

[quote]
或者是在同樣target bitrate, 同樣的ME,而用其他的quantizer(非H.263的uniform quantizer)
[quote]
H.263 用的是 uniform 的 Quantization Matrix,不是均勻的 Quantizer,我也不懂均勻的 Quantizer 是什麼意思。
至於為何不使用相同的檔案大小來比較,而用 CQ(Constant Quality)固定品質模式來比較,上面已經有說明。
<!-- BBCode Quote Start --><FONT COLOR=GREEN>
無論如何,要達到較佳的PSNR(或quality),較大的檔案大小與較為複雜的演算法都是必需的.
(如果又小又快的話,那真的是很高明的方法喔!
![[b11]](./images/smilies/b11.gif)
</FONT><!-- BBCode Quote End -->
經過我的重新說明,不知道您對 AviUtl 壓出來比較好的原因有何看法
