🔙

エンコードで遊んだ

スプred♪シート

Encoding2 - Google スプレッドシート

以下、これを隣に開いた状態で見ることを推奨(読みづらくてすんません)

目的

H.264/AVCとH.265/HEVCの比較と適切な設定を探す。

手法

ffmpeg version n4.4-79libx265libx264コマンドを用いてエンコード。設定はcrf=0~51で行いそれ以外はデフォルト。
ソースファイルは小林さんちのメイドラゴン(一期)のOP(NC,ノンクレジット)を使用。
H.264/AVCの35Mbpsでエンコードされている。

結果と考察(H.265/HEVC)

基本的にPSNRは40 [dB]、SSIMは0.98あれば劣化がわからないとされる。VMAFについてはよくわからなかったが、80が配信における指標であるとされる。

視覚的無劣化(PSNR>40 [dB],SSIM>0.98)を達成しているのはcrf≒17であるから、できるだけ劣化させたくないのであればその程度の値が適当であると考えられる。

経験的に知られているcrf=21~24(デフォルトの値でもある)はビットレートと各種指標のバランスが良い(グラフ参照)の4Mbps~6Mbpsあたりの値であるから、一般的な使用で最も費用対効果がよいのはこのあたりであると考えられる。

crfが10を下回ったり、30を超えるとそれぞれサイズ、画質の面で非現実的ではないので利用すべきではないと考えられる。

参考:libaom-av1(aomenc)によるエンコードでは4000kb/s程度でHEVCにおけるcrf=20、つまり7400kb/s相当の画質が得られることがわかった。本当にビットレートがほぼ半分になっていて驚きましたねぇ~❓なお6時間くらいかかった模様

結果と考察(H.264/AVC)

やだ

H.264/AVCとH.265/HEVCの比較

やだ

まとめ

あとで書く