縦型動画のプリセットでファイルサイズはどれだけ変わるか ultrafastからveryslowまで実測しました

IT・仕事術

記事内に広告が含まれています。

この記事でわかることをまとめました

結論です。今回の縦型動画10秒をH.264(CRF 23固定)で変換した範囲では、mediumの出力を100とした割合は、veryfastが85.5で5条件の中で一番小さくなり、プリセットが遅いほど小さいという並びにはなりませんでした。ultrafastはmediumの出力を100として337.4で、元の動画を100として141.4と、元の動画より大きくなりました。veryslowの変換時間の中央値15.98秒は、mediumの中央値6.53秒の2.45倍でした。なお、veryfastの3秒フレームのSSIMは0.994501で、5条件の中で一番小さい値でした。

縦型動画をH.264で保存し直すときに、プリセットをultrafastからveryslowまで変えると、ファイルサイズと変換時間がどれだけ変わるのかを、私が実測しました。

図1:mediumの出力を100とすると、veryfastが85.5で一番小さくなりました

図1:mediumの出力を100とした割合を、プリセットごとに比べました。

図1は、mediumで変換したファイル(392,953バイト)を100として、各プリセットのファイルサイズの割合を棒グラフにしたものです。

使った動画と変換の方法をまとめました

素材は、1080x1920pxの縦型動画です。30fps、10.0秒、300フレーム、H.264、音声なしで、ファイルサイズは937,490バイトです。画面はスライドのような内容で、動きの少ない動画です。

私はこの動画を、2026-11-14にffmpegでプリセット5段階(ultrafast・veryfast・medium・slow・veryslow)に変換しました。

  • コーデックは全てH.264(libx264、CRF 23、yuv420p)です。
  • 解像度は1080×1920、フレームレートは30fps、音声なしで、全条件そろえました。
  • 変えたのはプリセットだけです。
  • 変換は各条件で3回行い、変換時間は3回の中央値です。
  • ファイルサイズは3回とも同じバイト数でした。表のバイト数はその共通の値です。

フレーム数はffprobeの実カウントです。出力の幅と高さもffprobeで確認し、1080×1920になっていました。

割合は、元の動画(937,490バイト)を100とした値と、mediumで変換したファイル(392,953バイト)を100とした値の2種類を、バイト数から直接計算し、小数第1位に丸めました。

5条件のファイルサイズを表にまとめました

条件バイト元の動画を100とした割合mediumの出力を100とした割合
元の動画937,490100.0–
ultrafast1,325,779141.4337.4
veryfast336,11035.985.5
medium392,95341.9100.0
slow395,43042.2100.6
veryslow350,98237.489.3

表の「-」は、該当する値がないことを表しています。「mediumの出力を100とした割合」の列は、変換した条件どうしの比較のため、元の動画の値は載せていません。

図2:変換時間の中央値は、プリセットが遅いほど長くなりました

図2:変換時間の中央値(3回)を、プリセットごとに比べました。

図2は、各条件で3回変換した時間の中央値を棒グラフにしたものです。変換時間は、この環境での計測です。使う機械が変われば、時間は変わります。

変換時間と静止画のSSIMも表にまとめました

条件変換時間の中央値(秒)3回の変換時間(秒)3秒フレームのSSIM
ultrafast2.712.71/2.48/2.810.998626
veryfast4.524.71/4.44/4.520.994501
medium6.536.53/6.30/6.660.996919
slow7.437.43/7.01/7.510.996749
veryslow15.9816.51/15.93/15.980.997159

SSIMは、1に近いほど比べる相手に近いことを表す指標です。今回は、開始3秒のフレーム画像を取り出して、元の動画の3秒のフレームとffmpegのSSIMで比べました。静止画1枚の比較です。

図3:SSIMを縦軸0.990から1.000の範囲の棒グラフにしました

図3:3秒フレームのSSIMを、プリセットごとに比べました。縦軸は0.990から1.000の範囲です。

図3の縦軸は0.990から1.000の範囲です。5条件のSSIMは、この範囲の中に収まりました。

プリセットごとに分かったことをまとめました

  • フレーム数は、5条件とも300フレームで変わりませんでした。解像度とフレームレートも全条件で同じで、変わったのはプリセットだけです。
  • ファイルサイズは、mediumの出力を100とした割合で、ultrafastが337.4、veryfastが85.5、mediumが100.0、slowが100.6、veryslowが89.3でした。
  • プリセットが遅いほどファイルサイズが小さいという並びにはなりませんでした。5条件で一番小さかったのは、veryfast(336,110バイト)でした。
  • ultrafastの出力(1,325,779バイト)は、元の動画(937,490バイト)を100として141.4と、元の動画より大きくなりました。
  • slowの出力(395,430バイト)は、mediumの出力(392,953バイト)より2,477バイト大きく、mediumの出力を100として100.6でした。
  • veryslowの出力(350,982バイト)は、veryfastの出力(336,110バイト)を100として104.4でした。
  • 変換時間の中央値は、ultrafastが2.71秒、veryfastが4.52秒、mediumが6.53秒、slowが7.43秒、veryslowが15.98秒と、プリセットが遅いほど長くなりました。
  • veryslowの変換時間の中央値(15.98秒)は、mediumの中央値(6.53秒)の2.45倍で、veryfastの中央値(4.52秒)の3.54倍でした。
  • ultrafastの変換時間の中央値(2.71秒)は、mediumの中央値(6.53秒)を100として41.5でした。
  • 3秒時点の静止画のSSIMは、ultrafastで0.998626、veryfastで0.994501、mediumで0.996919、slowで0.996749、veryslowで0.997159でした。プリセットの速さの順とは並びが一致しませんでした。静止画1枚の比較です。

図4:私の目視では、4枚の違いははっきりとは分かりませんでした

図4:元の動画とultrafast・medium・veryslowの出力から、開始3秒のフレームを取り出して並べました。

図4は、元の動画とultrafast・medium・veryslowの出力から、開始3秒のフレームを取り出して並べたものです。表示のために、高さ480pxへそろえています。

図4に写っているのは、英語入試・併願カレンダーを紹介するスライドの場面です。

この表示の大きさで並べた範囲では、私の目視では4枚の違いははっきりとは分かりませんでした。違いは、SSIMの数値で比べました。

この実測を読むときの範囲をまとめました

  • 素材は、スライドのような画面が中心の、動きの少ない縦型動画10秒です。動きの多い実写の動画では、割合の出方が変わる場合があります。
  • 設定はH.264(libx264)とCRF 23に固定した比較です。ほかのコーデックやほかのCRFでは、割合が変わる場合があります。
  • 変換時間はこの環境での計測です。使う機械が変われば、時間は変わります。
  • SSIMは静止画1枚の比較です。動画全体の見え方とは別に読んでください。

今回の範囲では、veryfastのファイルが5条件で一番小さくなりました

今回の縦型動画10秒、H.264、CRF 23固定の範囲では、mediumの出力を100とした割合は、veryfastが85.5で5条件の中で一番小さく、プリセットが遅いほど小さいという並びにはなりませんでした。veryslowの変換時間の中央値15.98秒は、mediumの中央値6.53秒の2.45倍でした。

関連する実測記事もあわせて読んでみてください

このブログで実測した記事として、CRFを比べた記事と、動画コーデックを比べた記事もあります。あわせて読んでみてください。

コメント