動画データの仕組みとは?フレーム・fps・圧縮の違い

30秒でわかる答え

動画データは、一枚ずつのフレームを時間に沿って再生するための情報です。音声付きなら音も同期します。fpsは一秒当たりのフレーム数、解像度は一枚の画素数、ビットレートは一秒当たりのデータ量です。

動画データは、一枚ずつの画像に当たるフレームを、時間に沿って再生するための情報です。音声付きの動画では、音も同じ時間に合わせて再生します。音声のない動画もあり、保存や配信では容量を抑えるために圧縮するのが一般的です。

動画データは何でできている?長さ・fps・容量を見てみよう

自分で撮った短い動画を一つ選び、情報画面にある長さ・解像度・fps・容量を見てみましょう。アプリによっては、すべての項目が表示されるとは限りません。

たとえば「10秒」「1920×1080」「30fps」とあったら、長さ、一枚の画像の画素数、一秒当たりのフレーム数を表しています。同じ動画を説明する数字でも、見ているものは別です。

一時停止すると、動いていた場面が一枚の画像になります。再生すると、その画像が次々と切り替わる。まず、この「一枚」と「切り替える時間」を分けると、動画の中身が見えてきます。

第77話「動画データは何を重ねる?」では、画像の点と音の波が同じ時間の線に並びます。イトたちは、フレーム、fps、圧縮、ビットレートを、ラボの映写台で順番に見ていきます。

TERM PRIMER

先に知っておく言葉

動画データ
映像と音声を、決めた形式の数値として表したデータです。
フレーム
動画を作る、一枚一枚の静止画です。
fps
1秒間に表示するフレームの枚数です。
ビットレート
1秒あたりに使うデータの量です。動画や音声では、画質・音質と容量の両方に関わります。
圧縮
データの表し方を工夫して、容量を小さくすることです。

パラパラ漫画に音と時間を重ねる

絵の部分は画像データの仕組み、音の部分は音声データの仕組みで扱ったデータです。動画では、そこに「いつ表示するか」「いつ鳴らすか」が加わります。

パラパラ漫画で、ボールの位置を少しずつ変えた絵をめくると、ボールが動いて見えます。動画も、フレームを時間に沿って表示することで動きを表します。音声付きなら、その動きに声や効果音を合わせます。

ただし、パラパラ漫画の紙と違い、動画ファイルの中に独立した画像ファイルが一枚ずつ入っているとは限りません。共通部分や変化を利用して圧縮し、再生時にフレームを組み立てる方法もあります。まずは、表示するフレームの数から見ていきます。

マコト

一枚の絵を細かくすることと、絵をたくさん用意することは別なんだね

イト

30fpsと60fpsって、絵の数が違うってこと?

ピコ

そう。一秒の動きを、何枚のフレームで表すかを比べてみよう

フレームとfpsとは?30fpsの10秒は300フレーム

フレームは、動画を作る一枚一枚の画像です。

fpsは「frames per second」の略で、一秒当たりのフレーム数を表します。30fpsが一定なら、一秒の間に30枚のフレームを表示する予定になっています。実際の再生では、端末の処理などが追いつかず、表示できないフレームが出ることもあります。

一秒当たり30フレームの状態が10秒続くなら、30 × 10 = 300フレームです。これは映像のコマ数で、送るパケットが300個、画像ファイルが300個という意味ではありません。場面ごとにfpsが変わる動画では、全体を一定のfpsとして数えることはできません。

同じ10秒を表す場合フレーム数
30fpsが一定30 × 10 = 300枚
60fpsが一定60 × 10 = 600枚

同じ動きを多くの時点で記録すれば、ボールの途中の位置も細かく表せます。これは、同じ絵を短時間で見せる早送りとは別です。また、同じ絵を繰り返して60fpsにしても、元にない途中の動きまで記録されるわけではありません。

イトとマコトとピコが、連続する動画フレームと時間の流れを見ている
ボールの位置が違うフレームを、時間に沿って表示します。図は連続するコマの一部を表した模型で、並んだ枚数が30fpsや60fpsを示すものではありません。

ユイ

フレームが二倍なら、ファイルの容量も二倍になるんでしょうか

ピコ

圧縮後の容量は、枚数だけでは決まらないんだ。一枚の細かさと、保存に使うデータ量も分けて見よう

解像度とビットレート

動画でいう解像度は、1920×1080のようなフレームの横と縦の画素数を指します。一枚に並ぶ点の数です。fpsは一秒当たりのフレーム数、画面のHzは画面を更新する頻度なので、それぞれ見る対象が違います。画面のHzが高くても、元の動画に記録されたフレームが増えるわけではありません。

HD、フルHD、4Kといった表記も、この画素数に関係します。画素数が多ければ細部を表す余地は増えますが、数字だけで見た目の品質は決まりません。撮影した映像や圧縮設定、表示する画面の大きさも関係します。

ビットレートは、一秒当たりに使うデータ量で、bpsやMbpsで表します。同じMbpsでも、動画のビットレートは「再生するためのデータ量」、回線速度は「運べるデータ量」を見ています。

圧縮後の映像データ量は、平均ビットレートと動画の長さで決まります。同じ長さで平均ビットレートも同じなら、fpsを二倍にしても映像データ量は二倍にはなりません。その分、多くのフレームを同じデータ量で表す必要があります。ファイル全体には音声や管理用の情報なども加わります。

ビットレートは、ほぼ一定に保つ設定も、場面に応じて変える設定もあります。動きの多い場面で細部を保ちたいときには、より多くのデータを割り当てることがあります。

見る項目関係すること
解像度一枚を何個の画素で表すか。細部の表現に関係する
fps一秒を何枚のフレームで表すか。動きの表現に関係する
ビットレート一秒当たりにどれだけデータを使うか。長さと合わせてデータ量を見る
圧縮方式・設定情報をどう小さく表すか。細部の残り方や再生できる環境に関係する

解像度、fps、ビットレートを一つずつ変えたとき、細かさ・動き・容量のどこへ効くかを考えると、画質を一つの数字だけで見なくなります。

イトとユイとピコが、同じ大きさの二つのパネルに並ぶ粗い画素と細かい画素を比べている
図は一枚の画像を表す画素の細かさの比較です。圧縮後の容量は、画素数だけでなくビットレートや動画の長さでも変わります。

たくさんの画素とフレームを使うのに、どうやって保存できる量まで小さくするのでしょうか。次は、画像同士の似ている部分に注目します。

動画の圧縮とコーデック|すべての画像を丸ごと保存するの?

動画はデータ量が大きくなりやすいため、普段の保存や配信では圧縮するのが一般的です。圧縮しない動画データもあります。

たとえば、カメラを固定し、ボールだけが動く場面を考えます。隣り合うフレームでは背景の多くが共通しています。毎回その全部を別々に保存する代わりに、ほかのフレームから予測できる部分と、予測からの違いを使って表せます。これがフレーム間の似たところを利用する圧縮です。

一枚の中でも似た色や模様を利用できます。さらに、目立ちにくい細部を省く非可逆圧縮も広く使われます。この場合、再生できる画像には戻せても、省いた情報まで完全に復元することはできません。すべての動画が同じ圧縮方法を使うわけではなく、各フレームを独立して圧縮する方法もあります。

コーデックは、映像や音声を圧縮・復元する仕組みです。映像ではH.264、H.265、AV1などの名前を見かけます。保存側と再生側が対応する読み書きの決まりを使うことで、小さくしたデータから表示用のフレームを作れます。

MP4などのコンテナ形式は、映像や音声、時間情報などを収める決まりです。入れ物とコーデックの違いはファイル形式とはで確認できます。入っているデータを読み解いた後にも、再生にはもう一つ仕事が残ります。映像と音を同じ時刻に合わせる仕事です。

映像と音を合わせる流れ

音声付きの動画では、映像と音がずれるとすぐ気になります。

拍手を撮った動画を思い浮かべてください。手が合わさった瞬間に音が聞こえると自然ですが、手が離れてから音がすると、ずれに気づきます。口の動きと声、映像と字幕でも同じです。

動画には、どの時刻に画像を表示し、どの時刻に音を鳴らすかを示す情報があります。再生する時刻を表す印がタイムスタンプです。端末やアプリはそれを手がかりに、映像と音声を共通の時間に合わせます。データを読み取った順に、その場ですぐ出すだけではありません。

通信や端末の処理が追いつかないと、再生が止まったり、音や映像が乱れたりすることがあります。ただし、音ずれだけで通信が原因と決めることはできません。ここでは、映像と音が別のデータであり、時間を合わせている点を押さえましょう。

イトとマコトとピコが、映像フレームと音声の波を同じ時間ラインに合わせている
映像と音は、同じ時間の線にそろえて再生されることで自然に見聞きできます。

動画データを画面で確認する場所

冒頭で見た動画の情報画面へ戻ると、数字を別々の役割として読めます。

  • 保存済みの動画:情報画面で長さ、画素数、fps、容量、形式を見る。表示項目はアプリによって異なる。
  • これから撮る動画:カメラアプリで解像度とfpsを別々に確認する。
  • 書き出す動画:編集アプリで解像度、fps、コーデック、ビットレートや品質設定を見る。

比較するなら、元動画を残し、同じ短い区間を別名で二つ書き出してみましょう。たとえば解像度とfpsは同じにして、品質設定を変えます。容量だけでなく、動く物の輪郭や細かな模様がどう見えるかも比べると、「小さくするために何が変わったか」を確かめられます。

動画データの確認クイズ

Q1. 動画データは何を組み合わせたデータですか?

フレームを時間に沿って再生するための情報です。音声付きなら音声も同期します。音声のない動画や、圧縮していない動画もあります。

Q2. fpsは何を表しますか?

一秒当たりのフレーム数です。30fpsが一定の10秒なら300フレームで、解像度やファイル容量そのものを表す数字ではありません。

Q3. 動画の容量に関係するものは何ですか?

長さ、平均ビットレート、音声や管理用の情報などです。解像度、fps、動きの多さ、圧縮方式・設定は、必要なデータ量や見た目の品質に関係します。

動画の中身と、時間に合わせて再生する仕組みがつながりました。では、まだ最後まで受け取っていない動画を、途中で止まらずに見るにはどうするのでしょうか。次は動画配信の仕組みで、少し先のデータを受け取りながら再生する流れをたどってみましょう。

この記事について

LAB WHITEBOARD

自分の言葉で説明してみよう

「動画のフレームと時間情報、音声付き動画の同期を理解し、fps・解像度・ビットレート・圧縮を分けて説明できるようになる。」を、いまの自分の言葉で一文にしてみてください。途中の説明でも大丈夫です。