というわけで、11/30に1.4が出てから、12/12にすぐ修正が入りました
 
Fix CRF with maxrate bug causing bitrate to be significantly limited for CRF encodingsFix command line parsing forcing 1-pass in a 2-pass encoding mode when the --keyint=xs format is used
Fix decoder segfault due to assuming aligned buffers in the inverse transform assembly 
特に一つ目がひどいのですが、これって1.4のエンバグなのか、それ以前からなのか・・・
なんか1.1以降同じCRF/profileに対してVMAF値が下がってるのでその時のか?
まぁ、確認してみればわかりますか。 
 
→VMAFのスコアの変化は測定の変化(VMAF2.3.0→2.3.1)の影響だったので気のせいということで。
 
それよりも、従来のHierarchical levels=5を指定した時に比べてサイズが縮まなくなってて1.40からの「Adopted the 6L / 32-picture mini-GOP configuration」ってのが気になっています(ここの修正が入ると思ってた)。 
と眺めていたらe46bec15でDynamicGopが追加されてた(EnableDgはデフォルト1)。どうなることやら
 SVT-AV1 v1.30/1.41で--crf 22 --preset 5 --hierarchical-levels 5でエンコードした時、
gop size / mini-gop size / key-frame type             : 161 / 32 / key frame
って出てくるので同じL6になっているはずなのに、 
V1.30:
VMAF(mean)= 97.15、Bitrate= 2328.38 kbps、14.47fps
V1.41:
VMAF(mean)= 97.31、Bitrate= 2609.42 kbps、17.73fps
 
ってなってv1.41では明らかにファイルサイズが大きいんです。
VMAF(品質)や速度もちょっと違いますが、そこは誤差(というか向上)の範囲かと。
 
ちなみに、1.41+のDynamicGopのコミットでもやってみたけど変わらなかった。残念・・・
 
 
その後、#2034でも同じようになんかおかしいよ、という報告が入ってます。
みんな同じことを疑問に思うようなので、きっとそのうち改善されるでしょう
https://gitlab.com/AOMediaCodec/SVT-AV1/-/issues/2034 
 
→どうにもおかしいな、と思っていたら、上記のビットレートが変わった理由は
Adopted the 6L mini gopではなく、Re-tune presetsが影響しているみたい。
何かというと、crf24でほぼ同じ品質・ビットレートになったので。
無駄にソースとか眺めてしまった・・・
 
0 件のコメント:
コメントを投稿