縦型動画の解像度でファイルサイズはどれだけ変わるか 1080×1920から360×640まで実測しました

IT・仕事術

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

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

縦型動画の解像度を1080×1920から720×1280・540×960・360×640へ下げて保存し直すと、ファイルサイズと変換時間がどれだけ変わるのかを、私が実測しました。

結論です。今回の縦型動画10秒を、H.264のCRF 23で変換した範囲では、1080×1920の出力を100とした割合は、720×1280で59.2、540×960で41.2、360×640で23.4になりました。360×640の画素数は1080×1920を100として11.1まで下がりましたが、ファイルサイズは1080×1920の出力の約4分の1にとどまりました。

この環境で計測した変換時間の中央値は、1080×1920の6.51秒から360×640の2.22秒まで、解像度を下げるほど短くなりました。

図1:360×640にしても、ファイルサイズは1080×1920の出力の約4分の1までしか下がりませんでした

1080x1920の出力を100としたときのファイルサイズの割合を比べた棒グラフで、720x1280は59.2、540x960は41.2、360x640は23.4になっていることを示しています
図1:1080×1920の出力を100とした割合を、解像度ごとに比べました。

図1は、1080×1920で変換したファイル(392,953バイト)を100として、720×1280・540×960・360×640の割合を棒グラフにしたものです。

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

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

私はこの動画を、ffmpegで解像度4段階(1080×1920・720×1280・540×960・360×640)に変換しました。コーデックは全てH.264(libx264、CRF 23、preset medium、yuv420p、30fps、音声なし)にそろえています。解像度の変更には、ffmpegのscaleフィルタを使いました。

1080×1920の条件は、解像度を変えずに同じ設定で変換し直したものです。

変換は各条件で3回ずつ行いました。変換時間は3回の中央値です。ファイルサイズは3回とも同じバイト数だったので、表のバイト数はその共通の値です。

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

割合は、元の動画(937,490バイト)を100とした値と、1080×1920で変換したファイル(392,953バイト)を100とした値の2種類を、バイト数から直接計算し、小数第1位に丸めました。画素数の割合は、幅と高さの積から計算し、1080×1920の2,073,600画素を100としています。

4条件のファイルサイズと画素数を表にまとめました

条件バイト元の動画を100とした割合1080×1920の出力を100とした割合画素数の割合(1080×1920を100)フレーム数
元の動画(1080×1920)937,490100.0–100.0300
1080×1920392,95341.9100.0100.0300
720×1280232,49424.859.244.4300
540×960161,83017.341.225.0300
360×64092,1159.823.411.1300

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

図2:変換時間は、解像度を下げるほど短くなりました

変換時間の中央値を比べた棒グラフで、1080x1920は6.51秒、720x1280は4.22秒、540x960は2.98秒、360x640は2.22秒になっていることを示しています
図2:変換時間の中央値(3回)を、解像度ごとに比べました。

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

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

条件変換時間の中央値(秒)3回の変換時間(秒)3秒フレームのSSIM(1080×1920へ拡大して比較)
1080×19206.516.04/8.20/6.510.996919
720×12804.224.04/4.22/4.380.987078
540×9602.982.98/3.03/2.870.978935
360×6402.222.13/2.22/2.590.960429

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

解像度を下げたフレームは、比べるために1080×1920へ拡大してからSSIMを計算しています。静止画1枚の比較です。

解像度ごとに分かったことをまとめました

  • フレーム数は、4条件とも300フレームで変わりませんでした。条件として変えたのは、解像度(1フレームの画素数)だけです。
  • ファイルサイズは、1080×1920の出力を100とした割合で、720×1280が59.2、540×960が41.2、360×640が23.4でした。
  • 360×640の画素数は、1080×1920を100として11.1で、約9分の1です。一方でファイルサイズは、1080×1920の出力を100として23.4で、約4分の1でした。画素数の割合よりも、ファイルサイズの割合の方が大きい値になりました。
  • 変換時間の中央値は、1080×1920で6.51秒、720×1280で4.22秒、540×960で2.98秒、360×640で2.22秒でした。
  • 3秒時点の静止画のSSIMは、1080×1920で0.996919、720×1280で0.987078、540×960で0.978935、360×640で0.960429となり、解像度を下げるほど小さい値になりました。この数値は、解像度を下げたフレームを1080×1920へ拡大して比べた静止画1枚の比較です。

図3:静止画で並べた範囲では、私の目視では違いははっきりとは分かりませんでした

元の動画と、720x1280・540x960・360x640の出力から、開始3秒のフレームを取り出して横に並べた比較画像です
図3:元の動画と720×1280・540×960・360×640の出力から、開始3秒のフレームを取り出して並べました。

図3は、元の動画と720×1280・540×960・360×640の出力から、開始3秒のフレームを取り出して並べたものです。表示のために、高さ480pxへそろえて拡大・縮小しています。

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

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

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

  • 素材は、スライドのような画面が中心の、動きの少ない縦型動画10秒です。動きの多い実写の動画では、割合の出方が変わる場合があります。
  • 設定はH.264のCRF 23に固定した比較です。ほかのコーデックやCRFでは、割合が変わる場合があります。
  • 変換時間はこの環境での計測です。使う機械が変われば、時間は変わります。
  • SSIMは、解像度を下げたフレームを元の大きさへ拡大して比べた値です。実際の再生画面の大きさでの見え方とは別に読んでください。

今回の範囲では、360×640にしてもファイルサイズは1080×1920の出力の約4分の1までしか下がりませんでした

今回の縦型動画10秒を、H.264のCRF 23で変換した範囲では、解像度を1080×1920から360×640へ下げると、画素数は1080×1920を100として11.1になり、ファイルサイズは1080×1920の出力を100として23.4になりました。変換時間の中央値は6.51秒から2.22秒に短くなりました。

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

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

コメント

タイトルとURLをコピーしました