本文へスキップ
ガイド · RTMPプロトコル

RTMP配信の仕組みから 同時配信のやり方まで

RTMPは、多くのエンコーダがライブ配信をプラットフォームに渡すときの方式です。必要なのは、サーバーのアドレスとストリームキーです。このガイドでは、RTMPとRTMPSをやさしく解説します。主要なプラットフォームすべてで使える設定と、1本のRTMP配信をYouTube、Twitch、Kick、Facebook、自分のサーバーへ一度に送る同時配信(マルチ配信)の方法も紹介します。

配信ソフトに「サーバー」と「ストリームキー」の入力欄があれば、そのソフトはRTMPで配信します。

1935
RTMPのポート
443
RTMPSのポート
2秒
キーフレーム間隔
H.264 + AAC
送る映像と音声

RTMPがいまも配信の主流である理由

どの配信ソフトも対応

OBS、vMix、Streamlabs、ハードウェアエンコーダ、多くのカメラがRTMPで送信でき、YouTube、Twitch、Kick、Facebookもすべて受け付けています。どの配信ソフトを使っていても、サーバーとキーの2つの欄を埋めれば配信を始められます。

ログインの代わりになるキー

ストリームキーは、ひとつのチャンネル専用のパスワードのようなものです。各プラットフォームの管理画面に表示され、キーを知っている人は誰でもそのチャンネルで配信できてしまいます。スクリーンショットや画面共有には映さないでください。

自分で管理できない回線ならRTMPS

RTMPSは、httpsにも使われる暗号化方式TLSでRTMPを包んだものです。途中で誰かにキーや映像を読み取られることはありません。YouTubeが推奨しており、Kickのサーバーアドレスもrtmps://で始まります。

1本の配信で、すべての配信先へ

プラットフォームごとに別のRTMP配信を送ると、必要なアップロード速度もその分だけ増えます。StreamRoveに1本だけ送れば、コピーはStreamRove側で作られます。6,000 kbpsで3つのプラットフォームに送る場合、必要なアップロード速度は約26 Mbpsではなく約9 Mbpsです。

StreamRoveでのRTMP配信

配信ごとにRTMPSとRTMPのアドレス

配信ごとに、RTMPSのアドレス(rtmps://ingest.streamrove.com:443/live/)、RTMPのアドレス(rtmp://ingest.streamrove.com:1935/live/)、専用のストリームキーが用意されます。配信ページでは「RTMPS」タブがデフォルトです。

RTMPに対応していれば、どこでも配信先に

ワンクリックで連携できるプラットフォーム以外でも、RTMPまたはRTMPSのアドレスがあるサービスなら「カスタムRTMP」として追加できます。表示名、RTMP URL、ストリームキーを入力し、サーバーが求める場合はユーザー名とパスワードも入力します。

連携できるプラットフォームはワンクリックで

YouTube、Twitch、Kickはワンクリックで連携でき、キーはStreamRoveが自動で読み取ります。Facebook、LinkedIn、X、Instagramは、サーバーとキーを貼り付けて追加します。LinkedInはイベントごと、Instagramは配信ごとに新しいキーが発行されます。

配信先の組み合わせに合うエンコーダ設定

「出力プロファイル」カードが、追加した配信先すべてに合うビットレート、フレームレート、キーフレーム間隔、音声ビットレートを算出し、それぞれの上限を決めているプラットフォームも表示します。

配信先ごとに独立して動作

配信先はそれぞれ別の接続で、専用のスイッチとステータスを持ちます。ステータスは「届いています」「接続中…」「届いていません」のどれかです。1つのプラットフォームが受け付けなくても、ほかの配信先は止まりません。

キーは見えない場所に保管

配信先のキーは暗号化して保存されます。StreamRoveのストリームキーも、表示またはコピーするまで、配信ページでは隠れたままです。

各プラットフォームへ直接送る?それともStreamRove経由で1回だけ送る?

どちらもプロトコルは同じです。違いは、自宅や会場から送り出す配信の本数です。

StreamRove各プラットフォームへ直接
3つのプラットフォーム向けにパソコンから送る配信の本数✓ 1本3本
6,000 kbpsで3つのプラットフォームに送る場合のアップロード速度✓ 約9 Mbps約26 Mbps
プラットフォームごとに設定を変える— いいえ:1本の配信がすべての配信先へ✓ はい:エンコーダの出力ごとに設定
配信中にプラットフォームを追加✓ 配信ページのスイッチエンコーダで出力をもう1つ設定
ストリームキー✓ 暗号化して1回だけ保存、YouTube・Twitch・Kickは自動で読み取り出力ごとにエンコーダへ貼り付け
送信時の暗号化✓ StreamRoveへはRTMPS各プラットフォームのアドレスしだい
エンコーダからの映像が途切れたときControlプラン以上は待機画面、配信切れ通知はすべてのプランですべてのプラットフォームがオフラインに

1本のRTMP配信をすべてのプラットフォームへ同時に送る方法

手順はOBS、vMix、Streamlabs、ハードウェアエンコーダのどれでも同じで、変わるのはメニューの名前だけです。

  1. 1

    配信を作成する

    StreamRoveで「新しい配信」を押し、「エンコーダ | RTMP」を選びます。配信ページは「RTMPS」タブを選んだ状態で開き、隣に「RTMP」タブがあります。どちらのタブにもURLとストリームキーが表示されます。

  2. 2

    配信先を追加する

    「連携済みのチャンネル」で、YouTube、Twitch、Kickはワンクリックで連携し、それ以外は「カスタムRTMP」で追加します。ストリームキー確認ガイドでは、12のプラットフォームでサーバーとキーを確認できる場所がわかります。

  3. 3

    特別な事情がなければRTMPSを選ぶ

    RTMPSは暗号化されていて、安全なWebサイトが使うポート443で通信します。「RTMP」タブを選ぶのは、RTMPSに対応していないエンコーダか、RTMPSで映像がカクつくエンコーダだけです。

  4. 4

    URLとキーを貼り付ける

    OBSでは「設定」→「配信」を開き、「サービス」を「カスタム...」にして、「サーバー」にURL、「ストリームキー」にキーを貼り付けます。vMixでは、「Stream」(配信)の横にある歯車アイコンを押し、「Custom RTMP Server」(カスタムRTMPサーバー)を選んで、「URL」と「Stream Key」に貼り付けます。ハードウェアエンコーダでも入力する値は同じ2つです。キーをアドレスの末尾につなげて、1つの欄に入力する機種もあります。

  5. 5

    全配信先に合わせて、エンコーダを1回だけ設定する

    映像はH.264、レート制御はCBR(固定ビットレート)、キーフレーム間隔は2秒、音声はAACにします。ビットレートは「出力プロファイル」カードの値を使ってください。追加した配信先のうち、もっとも条件の厳しいものに合わせた値になっています。

  6. 6

    配信を開始してプレビューを確認する

    配信先をすべてオフにしたまま、エンコーダで配信を始めます。プレビューは、エンコーダが接続してから約10秒後、最初のキーフレームが届いた時点で配信ページに表示されます。確認できたら、配信先をオンにします。

  7. 7

    配信先ごとの状態を確認する

    どの配信先も「届いています」に変わるはずです。「届いていません」のままの配信先があれば、まずプラットフォーム側でキーを確認してください。キーのリセットや期限切れがよくある原因です。直している間も、ほかの配信先は配信を続けます。

StreamRoveのストリームキー確認ガイド(YouTube用)の画面。RTMPサーバーのアドレス(rtmp://a.rtmp.youtube.com/live2)、代わりに使えるRTMPSのアドレス、YouTubeが受け付ける設定が表示されています。
エンコーダに必要なのは、RTMPのアドレスとストリームキーだけです。これはYouTubeの例で、暗号化が必要なネットワーク向けにRTMPSのアドレスも載っています。

主要なプラットフォームすべてで使えるRTMP設定

StreamRoveがプラットフォームごとに適用している上限をもとにした値です。配信先が複数ある場合は、もっとも厳しい条件に合わせます。

サーバー(RTMPS)rtmps://ingest.streamrove.com:443/live/暗号化されます。配信ページではデフォルトのタブです。
サーバー(RTMP)rtmp://ingest.streamrove.com:1935/live/RTMPSに対応していないエンコーダや、RTMPSで映像がカクつくエンコーダ向けです。
ストリームキー配信ページからコピーOBSとvMixにはキー専用の欄があるため、URLの末尾には付けません。
映像コーデックH.264すべての配信先が受け付けるコーデックです。
レート制御CBRTwitchとYouTubeは固定ビットレートを求めており、Kickは可変ビットレートに対応していません。
キーフレーム間隔2秒主要なプラットフォームがすべて求める値です。OBSで「0」(自動)にすると8秒になり、StreamRoveは4秒を超えると警告します。
映像ビットレートTwitchかFacebookに送るなら6,000 kbps、Kickだけなら8,000 kbps、YouTubeだけなら9,000 kbpsStreamRoveの出力プロファイルが各プラットフォームに設定している値です。組み合わせの中でもっとも低い値に合わせます。
解像度とフレームレート1920 × 1080(30または60 fps)LinkedInが受け付けるのは最大30 fpsです。
音声AAC、ステレオ、48 kHz、128 kbpsすべての配信先が受け付けます。TwitchとKickだけに送る場合は、160 kbpsでも問題ありません。
アップロード速度6,000 kbpsの配信で約9 MbpsStreamRoveの計算ツールは、配信がアップロード速度の70%未満に収まるように計算します。

ビットレート計算ツールで自分の回線を調べられます。アップロード速度を測定して、コピーして使えるOBSの設定を表示します。

配信トラブルを防ぐRTMPのコツ

キーフレーム間隔を2秒にする

プラットフォームは、キーフレームの位置で配信を細かく区切ります。キーフレームとは、エンコーダが数秒おきに送る、それ自体で完結した1枚の映像です。OBSの「0」(自動)は、カスタムサーバーでは8秒になります。これでは、視聴者は全員、配信が映るまで長く待つことになります。「設定」→「出力」で「キーフレーム間隔」を「2」にすれば、配信ページのプレビューは約10〜12秒で表示されます。

ストリームキーはパスワードと同じように扱う

キーを知っている人は誰でも、お使いのチャンネルで配信できてしまいます。スクリーンショット、画面共有、チャットには載せないでください。プラットフォームのキーが漏れたら、そのプラットフォームで「リセット」を押します。StreamRoveに貼り付けて追加した配信先は、編集して新しいキーを入力します。ワンクリックで連携したプラットフォームは、その配信先を外してもう一度追加すると、StreamRoveが新しいキーを読み取ります。

RTMPSで映像がカクつくときは、暗号化なしのRTMPを試す

RTMPSは暗号化の処理が加わるため、うまく扱えないエンコーダもあります。StreamRoveで行ったテストの1つでは、vMix内蔵のエンコーダがRTMPSでドロップフレームを出しましたが、同じパソコンから暗号化なしのRTMPで送ると94分間きれいに動きました。映像がカクつくのにビットレートがアップロード速度に収まっているなら、ほかの設定を変える前に「RTMP」タブを試してください。

回線に問題があるときはSRTを使う

RTMPはTCPで動くため、失われたデータが再び届くまで、後続のデータもすべて待たされます。データが失われやすい回線では、これが映像の停止につながります。SRTは、失われた部分だけを、設定した遅延の範囲内で再送します。StreamRoveでは、同じ配信でSRTも受け付けています(「SRT」タブ、遅延の初期値は500 ms)。各プラットフォームへの配信は、そのままRTMPで届けます。

よくある質問

RTMPとは?

RTMP(Real-Time Messaging Protocol)は、多くのエンコーダがライブ配信をサーバーに送るときの方式です。エンコーダはrtmp://で始まるアドレスに接続し、ストリームキーで身元を伝えたうえで、映像と音声を途切れなく送り続けます。通常はH.264の映像とAACの音声です。TCP(Webページと同じ種類の接続)の上で動きます。

RTMPとRTMPSの違いは何ですか?

RTMPSは、httpsにも使われる暗号化方式TLSでRTMPを包んだものです。途中でキーや映像を読み取られることはありません。StreamRoveのRTMPSアドレスはポート443、RTMPアドレスはポート1935を使います。YouTubeはRTMPSを推奨しており、Kickのサーバーアドレスもrtmps://で始まります。

StreamRoveはプラットフォームにもRTMPSで送りますか?

StreamRoveは、各プラットフォームが示すアドレスに送ります。KickやFacebookのようにRTMPSを使うプラットフォームにはRTMPSで、Twitchのように標準のアドレスがRTMPのプラットフォームには暗号化なしのRTMPで送ります。エンコーダからStreamRoveまでの区間は、「RTMPS」タブを使えば常に暗号化されます。

RTMP配信のおすすめエンコーダ設定は?

映像はH.264の固定ビットレート、キーフレームは2秒ごと、音声はAACのステレオ128 kbps、解像度は1920 × 1080で30または60 fpsです。ビットレートは配信先によって変わり、TwitchかFacebookに送るなら6,000 kbps、Kickだけなら最大8,000 kbpsです。ビットレート計算ツールを使うと、配信先の組み合わせとアップロード速度に合った値がわかります。

自分のRTMPサーバーやクライアントのCDNにも配信できますか?

はい。「カスタムRTMP」として、表示名、RTMP URL、ストリームキーを入力して追加します。サーバーが必要とする場合は、ユーザー名とパスワードも入力します。そのサーバーにも、プラットフォームと同じ配信が届きます。ブロードキャスト方式(ベータ版、Relayプラン以上)なら、Callerモードで接続するSRTの配信先にも送れます。

RTMPでH.265(HEVC)やAV1は送れますか?

一部のプラットフォームはすでに対応しており、YouTubeもその1つです。StreamRoveへは、代わりにH.264の映像とAACの音声で送ってください。この組み合わせはどの配信先も受け付けます。StreamRoveのSRT・RTMP中継サーバーはこの2つ以外に対応しておらず、KickもH.264のみです。H.264なら、すべての配信先が同じ配信を再生できます。

RTMP配信が何度も切れるのはなぜですか?

原因はたいてい回線です。RTMPはTCPで動くため、データが失われる回線では止まりがちになり、やがて切断されます。ビットレートを下げる、Wi-Fiをやめて有線で接続する、SRTに切り替える、のいずれかを試してください。プラットフォームがすぐに配信を拒否する場合は、キーと設定を確認します。たとえばKickは、可変ビットレートとH.265を受け付けません。

RTMPはSRTに置き換えられつつありますか?

いいえ。プラットフォームへ届ける最後の区間では、置き換わっていません。YouTube、Twitch、Kickは、ほとんどのエンコーダからRTMPまたはRTMPSで受け付けています。回線が不安定な会場から配信を送り出すなら、SRTのほうが向いていることが多いです。StreamRoveなら両方を使えます。入口はSRT、各プラットフォームへの出口はRTMPです。

配信先の「届いていません」とはどういう意味ですか?

StreamRoveが送っている配信を、そのプラットフォームが受け付けていない状態です。よくある原因は、キーのリセットや期限切れ、先に配信を作成しておく必要があるプラットフォーム(LinkedInはイベントごと、Instagramは配信ごとに新しいキーを発行します)、プラットフォームの制限に合っていない設定です。直している間も、ほかの配信先は配信を続けます。

ネットワークに配信がブロックされているようです。どうすればいいですか?

まずRTMPSのアドレスを試してください。安全なWebサイトと同じポート443を使います。暗号化なしのRTMPが使うポート1935は、オフィスや学校のネットワークでブロックされていることがあります。どちらにも接続できない場合は、そのネットワークが配信を遮断しています。スマホのテザリングなど、別の回線を用意してください。

あわせて読みたい

ひとつのRTMP配信を、すべてのプラットフォームへ

RTMPSのアドレスとキーを受け取り、配信先を追加すれば、あとは1回配信するだけです。

無料で登録