動画は何GBになる?|解像度・bpp・fpsとCPU・GPUの計算のサムネイル
ガイドAP

動画は何GBになる?|解像度・bpp・fpsとCPU・GPUの計算

公開: 2026-10-03
非圧縮画像の容量、動画の帯域、保存量を単位付きで計算。GPUの計算時間だけでなく、転送や起動を含む処理時間からCPUとの使い分けを判断します。

動画ファイルは小さいのに、処理中のメモリが大きくなるのはなぜでしょうか。保存時の圧縮量と、処理する画像の大きさは別です。画素数から非圧縮の量を計算し、転送と計算のどこに時間がかかるかを見ていきます。

事例:1280×720の画像を毎秒30枚処理する

カメラ1台が1280×720画素、RGB合計24bpp、30fpsの画像を出力します。画素の間や行末の追加領域がない非圧縮の配置とします。1MB=10⁶B、1GB=10⁹B、1B=8bitです。

CPUの処理は1枚8ms。GPUの計算は1枚2msですが、入力と結果の転送、処理の起動も必要です。GPUを使う方が速いか、必要な時間をすべて足して確かめます。

画像の量は、段階ごとに違う圧縮ファイルのサイズと、展開後の画素データを区別します。入力・保存展開後処理123圧縮された動画非圧縮の画素データCPU処理転送してGPU処理
画像の量は、段階ごとに違う
  1. 1. 復号・展開
  2. 2. メモリ上で処理
  3. 3. GPUへ転送

圧縮ファイルのサイズと、展開後の画素データを区別します。

1枚は何Byte? bppの読み方から確認する

画素数×1画素当たりのbit数÷8で、非圧縮のByte数を求めます。1280×720×24÷8=2,764,800B、つまり2.7648MBです。24bppはRGB各成分の合計であり、さらに3倍する必要はありません。

  1. 解像度

    横と縦の画素数です。両方を2倍にすると、画素数と同じ形式での容量は4倍になります。

  2. bpp

    bits per pixel。1画素を表すbit数です。色成分ごとのbit数が示されている場合は、合計を確認します。

  3. fps

    frames per second。毎秒の画像枚数です。1枚の量に掛けると毎秒のデータ量になります。

RGBのほかにアルファ値を持つ32bppなら、1枚は1280×720×32÷8=3,686,400Bです。色の深さ、色差の間引き、配置の余白など、実際の形式が異なれば式の前提も変わります。

対象

式

結果

1枚・24bpp

1280×720×24÷8

2.7648MB

毎秒30枚

2.7648×30

82.944MB/s

必要帯域

82.944×8

663.552Mbps

60秒の量

82.944×60÷1000

4.97664GB

保存の容量と、回線の速さを混ぜていない?

60秒で約4.98GBという値は量です。毎秒663.552Mbpsという値は速さです。GBとGbps、MB/sとMbpsを区別してから比較します。MiB・GiBの指定なら1024を基準に換算し、10進の単位と混ぜません。

4台なら非圧縮の帯域は663.552×4=2,654.208Mbps=2.654208Gbpsです。1Gbps回線には入りません。プロトコルのヘッダ、再送、同時に使う他の通信を加えると必要量は増えます。

圧縮動画のビットレートが示されていれば、保存・通信はその値で計算します。一方、復号後の画像バッファは非圧縮の形式で見積もります。圧縮率は内容や方式で変わるため、常に一定とは置けません。

GPUの2msだけを比べると、何を見落とす?

入力転送の実効速度を400MB/sとします。入力は2.7648MBなので、転送は2.7648÷400×1000=6.912msです。出力0.1MBの転送は0.25ms、起動などの追加時間は0.8msとします。

処理を直列に行うなら、GPU側の合計は6.912+2+0.25+0.8=9.962msです。CPUの8msより遅くなります。GPU内のメモリ速度と、CPUからGPUへの転送速度を混同しないことが大切です。

1枚の処理を、開始から完了まで比べるこの事例は直列処理です。重ね合わせる構成では別の測定が必要です。CPUGPU入力転送追加転送なし6.912ms計算8ms2ms出力転送・起動8msに含む0.25+0.8ms合計8ms9.962ms
1枚の処理を、開始から完了まで比べる

この事例は直列処理です。重ね合わせる構成では別の測定が必要です。

転送が4000MB/sなら、0.6912+2+0.025+0.8=3.5162msとなり、同じ前提ではGPUが速くなります。転送量、データの置き場所、処理のまとめ方によって結果が変わるため、名前だけで選びません。

30fpsなら、毎回33.3ms以内で済めばよい?

30fpsの画像は約33.3msごとに到着します。同じ処理を1枚ずつ直列で続けるなら、平均の処理がこれを超えると滞留します。ただし、1枚の許容遅延が10msなら、33.3ms以内でも要求を満たしません。

処理量と、1枚が完了するまでの時間は別です。複数枚をまとめると転送・起動の負担は減らせますが、まとまるまでの待ちが増えます。転送と計算を重ねるには、対応する機器と処理の独立性が必要です。

メモリには入力だけでなく出力、一時領域、処理中の複数枚も置きます。容量、転送、演算を別々に確認し、画質、応答時間、同時カメラ数の要求を満たす構成を選びます。

小さな関数で、単位の変換を固定する

python
def raw_frame_bytes(width, height, bpp):
    values = (width, height, bpp)
    if any(type(v) is not int or v <= 0 for v in values):
        raise ValueError("positive integers required")
    if bpp % 8 != 0:
        raise ValueError("byte-aligned pixels required")
    return width * height * (bpp // 8)

frame = raw_frame_bytes(1280, 720, 24)
print(frame)  # 2764800

この関数は画素単位でByte境界にそろう形式に限定します。1bit画像や行末の余白を持つ画像には、その配置に合う別の計算が必要です。入力の形式を明示すると、式を使える範囲が分かります。

演習1:1枚の容量

条件:1280×720画素、RGB合計24bpp、余白なしです。

問い:1枚のByte数を答えてください。

解答例:2,764,800Bです。

根拠:1280×720×24÷8です。

誤答の理由:24をByte数として掛けると8倍になり、RGBをさらに3倍すると色成分を二重に数えます。

演習2:4台分の帯域

条件:上の画像を各カメラが30fpsで出し、カメラは4台です。

問い:非圧縮の必要帯域をGbpsで答えてください。

解答例:2.654208Gbpsです。

根拠:2.7648×30×8×4÷1000です。

誤答の理由:台数を掛け忘れると、回線の見積りが1台分になります。

演習3:60秒を保存する

条件:1台の非圧縮画像が毎秒82.944MBです。

問い:60秒分の容量をGBで答えてください。

解答例:4.97664GBです。

根拠:82.944×60=4,976.64MBを1000で割ります。

誤答の理由:1024で割ってGBと書くと、単位の定義が式と一致しません。

演習4:32bppへ変える

条件:解像度とfpsは同じで、24bppから32bppへ変えます。

問い:1枚の容量と毎秒の量を答えてください。

解答例:3.6864MB、110.592MB/sです。

根拠:1枚の量は24bppのときの32/24倍で、毎秒30枚です。

誤答の理由:画素数が変わらないから容量も同じという判断は、画素の表現量を見落とします。

演習5:GPUの実時間

条件:入力6.912ms、計算2ms、出力0.25ms、起動0.8msを直列に行います。CPUは8msです。

問い:どちらが速いですか。

解答例:GPUは9.962msで、CPUの方が1.962ms速いです。

根拠:直列の時間をすべて足して比較します。

誤答の理由:計算時間だけを比べると、転送にかかる時間が抜けます。

演習6:解像度と圧縮

条件:縦横をそれぞれ2倍にし、bppとfpsは同じです。

問い:非圧縮量と、圧縮後の量の変化を説明してください。

解答例:非圧縮量は4倍。圧縮後の量は同じ比率とは限らず、方式や画像内容の条件が必要です。

根拠:画素数は2×2倍ですが、圧縮率は別の条件です。

誤答の理由:解像度の一方しか掛けないと2倍になり、圧縮率を固定すると根拠のない推定になります。

出典と仕様を確認する

IPA:APシラバス Ver.7.2

MDN:動画の形式・データ量

NVIDIA:CUDA Best Practices Guide

関連テーマを続けて学ぶ

処理を置く場所の判断

次におすすめの学習

この記事を共有する

編集・検証について

編集・検証:IT資格ラボ編集部

IPAが公開する試験要綱・シラバス・過去問題と、各技術の公式資料を優先して内容を確認しています。制度変更や誤りを確認した場合は、記事を見直して更新します。

編集方針・情報源・訂正方針を見る