Skip to the content.

最終更新日:2026年8月31日

まず結論

ストリーミングのバッファリングとは、再生に必要な速度より通信速度が遅いときに、再生前に一定量のデータを先にためておく処理です。

FE試験では、次の順で考えると解きやすくなります。

1. 再生に必要な速度を確認する
2. 通信速度と単位をそろえる
3. 再生時間を求める
4. ダウンロード時間を求める
5. その差をバッファで補う

特に大事なのは、ビットとバイトの単位をそろえることです。

8ビット = 1バイト

この変換を忘れると、計算結果が大きくずれます。

直感的な説明

ストリーミング再生は、水槽に水をためながら、同時に水を使うイメージです。

ネットワークから届くデータ
        ↓
     バッファ
        ↓
      再生

再生側がデータを使う速さより、ネットワークから届く速さが遅いと、そのまま再生を始めると途中でデータが足りなくなります。

そこで、最初に少しだけデータをためてから再生を始めます。

通信速度 < 再生速度
→ そのままでは途中で不足
→ 事前にバッファをためる

反対に、通信速度が再生速度以上なら、理論上は再生中にデータ不足が起こりにくくなります。

通信速度 >= 再生速度
→ 再生しながら必要量以上が届く

定義・仕組み

再生速度とは

音声や動画は、1秒間に一定量のデータを消費しながら再生します。

たとえば、音声データの符号化速度が64kビット/秒なら、1秒再生するごとに64kビットのデータが必要です。

これをバイトに直すと、

64kビット/秒 ÷ 8
= 8kバイト/秒

となります。

通信速度とは

通信速度は、ネットワークから1秒間に受け取れるデータ量です。

たとえば48kビット/秒なら、

48kビット/秒 ÷ 8
= 6kバイト/秒

です。

再生速度と通信速度を比べる

この例では、

再生に必要な速度 : 8kバイト/秒
通信速度         : 6kバイト/秒

なので、1秒再生するごとに、

8 - 6 = 2kバイト

ずつ不足します。

つまり、最初に不足分をためておかないと、途中で再生が止まります。

科目Aでどう出る?

ストリーミングの計算問題では、次の3つを順に求めます。

1. 再生時間を求める

データ量を、再生時に消費する速度で割ります。

たとえば、1.2Mバイトの音声データを64kビット/秒で再生する場合、まず符号化速度をバイト単位にそろえます。

64kビット/秒 ÷ 8
= 8kバイト/秒

次に、1.2Mバイト = 1,200kバイトとして、

1,200kバイト ÷ 8kバイト/秒
= 150秒

再生時間は150秒です。

2. ダウンロード時間を求める

通信速度が48kビット/秒なら、

48kビット/秒 ÷ 8
= 6kバイト/秒

なので、

1,200kバイト ÷ 6kバイト/秒
= 200秒

ダウンロードには200秒かかります。

3. 差をバッファで補う

ダウンロード時間 200秒
再生時間          150秒
差                 50秒

したがって、50秒分のデータを再生前にためておけば、最後まで途切れずに再生できます

FE試験では、次の形が判断の基本です。

必要なバッファ時間
= ダウンロード時間 - 再生時間

ただし、これは通信速度が再生速度より遅い場合です。

通信速度が再生速度以上なら、この差は0以下になり、理論上は長い事前バッファは不要です。

どんな場面で使う?

音声ストリーミング

音声をダウンロードしながら再生するときに使います。

ネットワークが遅い場合、最初に一定量をためてから再生を開始することで、途中停止を防ぎます。

動画ストリーミング

動画は音声よりデータ量が大きいため、通信状況によってバッファリングが発生しやすくなります。

実際の動画配信では、通信速度に応じて画質を下げる適応型ストリーミングなども使われますが、FE試験ではまず、

再生速度と通信速度の大小関係

を理解することを優先します。

一時的な通信速度低下への備え

平均通信速度が十分でも、一時的に通信速度が低下することがあります。

そのため実際のシステムでは、多少の余裕を持ってデータをためます。

ただし試験問題では、問題文で与えられた速度が一定であるとして計算することが多いです。

よくある誤解・混同

ビットとバイトをそのまま計算する

これは最も多いミスです。

データ量        : Mバイト
通信・符号化速度: kビット/秒

のように単位が異なる場合は、どちらかにそろえます。

8ビット = 1バイト

なので、ビット/秒を8で割ればバイト/秒になります。

再生時間とダウンロード時間を混同する

再生時間
→ データ量 ÷ 再生速度

ダウンロード時間
→ データ量 ÷ 通信速度

です。

割る相手が違います。

データ量そのものを差し引く

必要なのは、単純なデータ量の差ではなく、時間の差です。

なぜなら、再生開始前に何秒分ためるかを問われているからです。

通信速度が速くても必ずバッファが必要と思う

理論上、

通信速度 >= 再生速度

なら、再生しながら必要量以上のデータが届きます。

この場合、問題文の条件だけで考えれば、長い事前バッファは必要ありません。

Mとkの扱いを難しく考えすぎる

FE試験では、今回のように

1.2Mバイト = 1,200kバイト

として比率をそろえて計算できる問題がよくあります。

厳密な2進接頭辞の違いを考えるより、問題文で使われている単位の関係に合わせることを優先します。

まとめ(試験直前用)

  • 8ビット = 1バイト。まず単位をそろえる
  • 再生時間 = データ量 ÷ 再生速度
  • ダウンロード時間 = データ量 ÷ 通信速度
  • 通信速度 < 再生速度なら、事前バッファが必要
  • 必要なバッファ時間は、基本的にダウンロード時間と再生時間の差で考える

迷ったら、

再生に使う速さ
と
ネットワークから届く速さ
を比べる

ところから始めます。

© 2024-2026 stemtazoo. All rights reserved.