トップ > ライブ配信カテゴリ概要 > ライブ配信全般のハウツー > ライブ配信のラグ(遅延)を減らす方法 / 2020年11月14日 (土) 11時50分59秒



配信中、ラグがひどいと感じたときに確認すべきこと

  • ライブ配信における遅延(タイムラグ)とは、視聴者が再生している映像・音声が実際の映像・音声よりも遅れている状態をいいます。たとえば、配信者がWebカメラの映像を流したとしましょう。この映像を視聴者が見るのは、何秒も経過したあとになります。とくに遅延を感じるのは、配信者が視聴者に対して質問をしたときかもしれません。視聴者から答えが返ってくるまで、かなりの「間」があります。


  • 遅延が大きいと、視聴者のコメントを見ても配信者は自分のどの発言・状況に対する反応なのか、わからないことがあるでしょう。かりに1分の遅延がある場合、もはや話が噛み合わなくなります。視聴者が見ている映像は、配信者からすれば過去の映像であり、配信者が現在見ているものとは異なるからです。遅延が大きいほど、視聴者とのあいだで円滑なコミュニケーションが取りづらくなります


  • ライブ配信で「リアルタイムに映像・音声を配信できる」というのは、あくまでも形式的な建前と考えてください。遅延はライブ配信の宿命であり、解消することはできません。すべての配信者は、遅延があるなかで配信しているのです。ただし、遅延を軽減する方法なら存在します。その方法について、具体的に見ていきましょう。

















  • YouTubeで配信する人に向けて、記事を新しく書き直しました。2020.11.14

        【YouTube Live】ライブ配信の遅延を2~3秒に減らすための、シンプルな方法



















  • 以下の情報は、現在古くなっています。2021.6.24


















目次


配信サイトごとの遅延時間を覚えておく


  • まず前提として、遅延時間は配信サイトによって異なります。想定どおりの遅延時間であれば、あれこれ悩む必要はありません。逆に、想定以上に遅延時間が大きい場合は、対処法を考える必要があります。そこで、自分が配信するサイトでは何秒の遅延が標準なのか、把握しておきましょう。下表をご覧ください。

遅延時間 参考サイト 備考
ツイキャス 最大2~3秒前後(公称値) こちら
ニコニコ生放送 約2~3秒(公称値) こちら
ふわっち 約7~15秒
ミラティブ 約3秒
Facebook Live 筆者未検証
FC2ライブ 約3秒
LINE LIVE 約12~16秒
OPENREC 約0.8秒(公称値) こちら 超低遅延モード時(プレミアム限定)
Periscope 約9~13秒
SHOWROOM 約4秒
Stickam 約2秒
Twitch 約2~5秒 低遅延モード時
YouTube Live・YouTube Gaming 約3~5秒 こちら 超低遅延モード時

  • 環境によっては、表に掲載した時間とは異なる場合があります。たとえば、視聴者の回線状態が悪かったり、視聴者が配信をスマホで視聴している場合は、遅延時間が違ってきます。また、後述するとおり配信者側の環境・設定も影響します遅延時間にはバラツキがあるという点に留意してください*1

  • OPENRECも遅延の小ささを売りにしています。ただ、プレミアム会員限定の機能となっており、筆者はまだ試していません。

  • 低遅延モードを搭載するサイトに共通することですが、環境によっては再生画面が途中で止まるなど、不安定な状態になる場合があります。その点は念のため覚えておいてください。

▲画面の上へ

遅延を計測する方法


一般的なやり方


  • では、どのようにしてライブ配信の遅延を計測すればよいのでしょうか。お薦めは、「ストップウォッチ 30分 低負荷版」というカウントアップ動画を使った方法です。簡単にいうと、配信ソフトでこの動画を読み込んで配信し、配信画面に映っている時間との差を測る方法です。配信ソフトは、OBS StudioXSplitなどを使えばよいでしょう。

  • 以下のようにして遅延を計測します。より詳しい説明については、ニコラボチャンネルを参照してください。

  1. 動画をダウンロードしておく。
  2. 配信ソフトを起動し、ダウンロードしておいた動画を読み込む*2
  3. 配信を開始する。
  4. 配信中、「配信ソフトの」画面に映っている経過時間から、「配信サイトの」画面に映っている経過時間を引く


▲この場合、10.28 - 3.53 = 6.75(秒)の遅延ということがわかります。

Twitchでは歯車アイコンから確認できる


  • 配信サイトによっては、配信画面上の操作で遅延を確認できる場合があります。Twitchの場合は、以下のとおりです。

  1. 配信画面にカーソルを重ね、表示された歯車アイコンをクリックする。
  2. 「詳細設定」をクリックする。
  3. 「ビデオデータ」をクリックする。
  4. 「配信遅延時間」を確認する。

YouTubeでは画面右クリックから確認できる


  • YouTubeの場合は、以下のような方法もあります。

  1. 配信画面上で右クリックする。
  2. 「詳細統計情報」をクリックする。
  3. 「Live Latency」の数字を確認する。

▲画面の上へ

配信ソフトの設定を変更する


  • 配信ソフトの設定を変更することで、遅延を減らすことができます。ただ、設定によっては画質が落ちるかもしれません。画質と遅延のバランスを取りたい場合は、テストを繰り返して落とし所を見つける必要があります。

  • なお、難しい用語が登場するかもしれませんが、ここでは説明を省きます。意味がわからなくても、あまり気にする必要はありません。

ビットレート


  • ビットレートを下げて適切な設定にします。そのためには、(1)配信サイトの仕様、(2)配信者の回線速度(上り)、および(3)出力解像度を考慮するようにしましょう。

説明
OBS Studio 1.「設定」をクリックする。
2.「出力」タブを開く。
3.「ビットレート」を変更する。
4.「OK」をクリックする。
XSplit 1.「出力」をクリックする。
2.配信サイト名の歯車アイコンをクリックする。
3.「Bitrate」を変更する。
4.「OK」をクリックする。

  • たとえば、ツイキャスの通常の高画質配信では、ビットレートの合計は800kbpsまでです(参考)。高画質にしたいからといって、3,000kbpsに設定してはいけません。

  • また、かりにYouTubeで配信する場合であっても、上りの回線速度が2,000kbpsしか出ていないなら、3,000kbpsに設定してはいけません。

  • ビットレートの設定方法については、以下の記事をご覧ください。

        画質・音質の設定を参照

バッファサイズ


  • バッファサイズを下げます。これを大きくすると画質が向上しますが、最大でも映像ビットレートの2倍までにしておきましょう。バッファサイズを映像ビットレートで割ったぶんだけ遅延します*3

説明
OBS Studio 1.「設定」をクリックする。
2.「出力」タブを開く。
3.「出力モード」を「詳細」にする。
4.「特定バッファサイズを使用」のチェックを外す。
5.「OK」をクリックする。
XSplit 1.「出力」をクリックする。
2.配信サイト名の歯車アイコンをクリックする。
3.「Extra Param」の歯車アイコンをクリックする。
4.「VBV Buffer」を「Bitrate」と同じ値にする*4
5.「OK」をクリックする。

キーフレーム間隔


  • キーフレーム間隔を短くします。どのような配信であっても、2秒に設定しておけばまず問題ありません。多くの配信サイトでは、キーフレーム間隔を2秒に設定することで遅延を抑えることができると説明されています(参考1参考2)。4秒を超える数字にしたり、0秒(自動)にするのは避けてください。

説明
OBS Studio 1.「設定」をクリックする。
2.「出力」タブを開く。
3.「出力モード」を「詳細」にする。
4.「キーフレーム間隔」を2秒にする。
5.「OK」をクリックする。
XSplit 1.「出力」をクリックする。
2.配信サイト名の歯車アイコンをクリックする。
3.「Extra Param」の歯車アイコンをクリックする。
4.「Max Keyframe Interval」を2秒にする*5
5.「OK」をクリックする。

プリセット


  • x264のプリセットを変更します。可能なかぎり遅延を少なくしたいなら、「veryfast」にしましょう。また、チューンを「zerolatency」にします。ただし、これらの設定は、画質を犠牲にしてでも遅延を減らしたい人向けです。画質を重視するなら(かつPCスペックに余裕があるなら)、プリセットを「medium」にします。チューンについては、設定しないでもかまいません。

説明
OBS Studio 1.「設定」をクリックする。
2.「出力」タブを開く。
3.「出力モード」を「詳細」にする。
4.「エンコーダ」で「x264」が選択されていることを確認する。
5.「CPU使用のプリセット」で「veryfast」を選択する。
6.「チューン」で「zerolatency」を選択する。
7.「OK」をクリックする。
XSplit 1.「出力」をクリックする。
2.配信サイト名の歯車アイコンをクリックする。
3.「Codec」で「x264」が選択されていることを確認する。
4.「Extra Param」の歯車アイコンをクリックする。
5.「Encoder Preset」で「veryfast」を選択する。
6.「Extra Encorder Parameters」に「&ex:tune:zerolatency」と入力する
7.「OK」をクリックする。

  • もしx264のプリセットを自分で書き換えている場合は、とくに「rc-lookahead」や「bframes」の設定が重要です*6。設定をまちがえると遅延が大きくなります。前者は、最大でも60までにしておきましょう(30~40が基本)。後者は3がお薦めです。

遅延設定


  • OBS Stduio、およびXSplitには、配信をあえて遅延させる設定があります(遅延設定)。この設定は、FPSやTPSなどのゲーム配信で、配信者のマップ上での位置を対戦相手(視聴者)に悟られないようにしたい場合に使います*7。通常は、遅延設定を無効にしておきましょう。初期設定で無効になっています。

説明
OBS Studio 1.「設定」をクリックする。
2.「詳細設定」タブを開く。
3.「遅延配信」の「有効にする」のチェックが外れていることを確認する。
4.「OK」をクリックする。
XSplit 1.「出力」をクリックする。
2.配信サイト名の歯車アイコンをクリックする。
3.「放送の遅延を有効にする」のチェックが外れていることを確認する。
4.「OK」をクリックする。

▲画面の上へ

適切なサーバーを選択する


  • 配信サイトによっては、サーバーを選ぶことができます。日本国内にサーバーがあるなら、配信ソフトの設定を変更してそれを選択しましょう。たとえば、Twitchの場合は以下のように設定します。

説明
OBS Studio 1.「設定」をクリックする。
2.「配信」タブを開く。
3.「サービス」が「Twitch」になっていることを確認する。
4.「サーバー」で「Asia: Tokyo, Japan」または「自動」を選択する。
5.「OK」をクリックする。
XSplit 1.「出力」をクリックする。
2.「Twitch」の歯車アイコンをクリックする。
3.「サーバー」で「Asia: Tokyo, Japan」を選択する。
4.「OK」をクリックする。

▲画面の上へ

配信サイトの遅延軽減設定を有効にする


  • 配信サイトによっては、遅延を軽減するための設定があります。ただ、視聴者側の回線環境が悪い場合は、映像が一時的に途切れることがあるかもしれません。

Twitch


  1. 画面右上のアカウント名をクリックし、「クリエイターダッシュボード」を選択する。
  2. 左側のメニューから「チャンネル」を選択する。
  3. 「低遅延:視聴者との交流をリアルタイムに近い状態で行う場合に最適です」を選択する。


YouTube Live


  1. ダッシュボードを開く。
  2. 低遅延」または「超低遅延」を選択する。


ニコニコ生放送


  1. 配信画面の歯車アイコンをクリックする。
  2. 「低遅延」を「ON」にする。

その他のサイト


  • OPENRECなど、ほかのサイトにも似たような設定があるので、変更してください。

▲画面の上へ

使っている製品・サービスを変更する


キャプチャーボード


  • ライブ配信の遅延は、キャプチャーボードを使っていなくても発生します。しかし、ゲーム配信で遅延を減らしたいなら、キャプチャーボードの遅延は小さいほうがよいのです。たとえば、パススルー出力しているとして、キャプチャーボードの遅延が0.06秒のものと、1.12秒のものを比較した場合、ライブ配信では前者のほうが遅延を1.06秒縮めることができます。

Game Capture HD60 S GV-USB3/HD GC550 PLUS
価格
商品画像のリンク先
PCとの接続 USB 3.0 USB 3.0 USB 3.0
対応ゲーム機
(接続できるゲーム機)
・PS4
・Switch、Wii U
・Xbox One、Xbox 360
・PS4
・Switch、Wii U
・Xbox One、Xbox 360
・PS4
・Switch、Wii U
・Xbox One、Xbox 360
こちら こちら こちら
備考 配信機能搭載 配信機能搭載

  • ゲーム配信で問題なく使えるのが上の3製品です。ゲームジャンルにもよりますが、PCに映っているゲーム画面を見ながらプレイできる程度の遅延です。この程度の遅延であれば、ライブ配信でも違和感はないでしょう。

PC


  • PCスペックが低い場合は、CPU使用率を可能なかぎり下げましょう。たとえば、配信ソフトの各種設定を変更します。PCゲームの場合は、ゲームのグラフィックスの設定を下げるのも重要です。もし効果がないのであれば、PCを買い替えます。

        OBS Studioで、PCの動作が重くてカクカクするときの対処法

        ゲーム実況で必要なPCスペックと、おすすめPCの選び方

回線・プロバイダ


  • 回線・プロバイダを変更します。上りの速度が速く、かつ安定している状態がベストです。

▲画面の上へ

その他


  • 時間が経過するにつれて遅延が増えているときは、ページを更新しましょう。視聴者にもページを更新してもらいます。

  • 配信の終了などは、遅延を考慮して余裕を持たせるようにします。話し終わってすぐに配信を切ると、こちらの発言がぶつ切りになる可能性があります。そこで、話し終えたあと時間をおいてから、配信を終了します。

▲画面の上へ

関連ページ








▲画面の上へ


名前:
コメント:

  • 余計遅延がひどくなりました。
    -- 名無しさん (2020-08-20 21:22:38)

  • デュアルディスプレイを利用すると、CPUの圧迫で遅延の原因になりますか?
    -- nanashi (2020-03-05 11:08:40)

  • ↓低遅延モードだとそんなもんです。 -- 名無しさん (2020-01-27 13:23:33)

  • YouTube LiveのLive Latencyが8.5秒前後なのですが、もっと早くなりますか?
    超低遅延は視聴側が安定しないので低遅延のみで考えてます。 -- 名無しさん (2020-01-26 22:29:59)

  • 名無しさん、ありがとうございます。
    私のほうでも検証したところ、12~16秒程度の遅延が
    あることを確認しました。 -- 管理人 (2017-08-15)

  • LINE LIVEでゲーム配信をしていますが、
    遅延は12~15秒はあります。


    5秒か6秒というのはまずあり得ません。 -- 名無しさん (2017-08-15 14:58:47)

  • 名無しさん
    ありがとうございます。加筆しました。 -- 管理人 (2017-06-24)

  • LINE LIVEの遅延ですが、体感5か6秒程度の可能性が高いです。 -- 名無し (2017-06-23 19:53:46)


最終更新:2020年11月14日 11:50

*1 ブログによっては、TwitchやYouTube Liveでは「30~50秒も遅延して話にならない」と書いている人もいます。両サイトの遅延は少しずつ改善されているので、配信時期の問題もあるかもしれません。YouTube Liveは2017年9月に「超低遅延モード」が、Twitchは2018年5月に「低遅延モード」が実装されました。

*2 OBS Studioであれば、「+」アイコン→「メディアソース」で動画を読み込んで再生できます。また、XSplitであれば「追加」→「メディアファイル(動画、画像)...」です。

*3 たとえば、映像ビットレートを2,500kbps、バッファサイズを5,000kbpsに設定した場合、2秒の遅延になります。

*4 「YouTube Live」の横にある歯車アイコンをクリックした場合は、「VBV Buffer」は設定変更できないようになっています。

*5 「YouTube Live」の横にある歯車アイコンをクリックした場合は、「Max Keyframe Interval」は設定変更できないようになっています。

*6 なお、「zerolatency」は、この両方の設定を0にするオプションです。

*7 ほかには、突発的かつ不適切なトラブルに備える意味もあります。たとえば、なにか映ってはいけないものが画面に映った場合や、話してはいけないようなことを話してしまった場合、すぐに配信を切ります。そうすれば、視聴者がその不適切な映像・音声を視聴するまえに配信が終わるので、トラブルを回避できるわけです。