RTMP

Real-Time Messaging Protocol / アールティーエムピー

配信ソフトやエンコーダーから、YouTube LiveやTwitchなどの配信サービスへ映像を送り込むときに使われるプロトコルです。Flash向けに作られましたが、Flashの終了後も「配信サービスへの入口」として使われ続けています。

正式名称
Real-Time Messaging Protocol
開発元
Macromedia(のちにAdobe)。Adobeが2012年に仕様書を公開
下位の通信
TCP
既定のポート
1935
接続先の形
rtmp://サーバー/アプリ名 とストリームキーの組み合わせ
暗号化版
RTMPS(TLSで保護したもの)
従来の映像・音声
H.264とAAC(FLVと同じ形式のタグで運ぶ)
拡張仕様
Enhanced RTMP(HEVC、AV1、VP9などを追加)

OBSの設定画面で「サーバー」と「ストリームキー」を入力したことがあれば、それがRTMPです。Flash Playerは2020年末に提供を終えましたが、RTMPは配信サービスが映像を受け取る入口として今も現役で、視聴者側ではなく送り手側のプロトコルとして生き残っています。

RTMPが使われる場面

いちばん多いのは、ライブ配信の打ち上げ(インジェスト)です。OBS Studio、vMix、Wirecastなどの配信ソフトや、ATEM Mini Proのようにエンコーダーを内蔵したスイッチャーから、YouTube Live、Twitch、Facebookライブなどへ映像を送ります。サービス側はRTMPで受けた映像を複数の画質に変換し、HLSなどで視聴者に配ります。視聴者のブラウザがRTMPを直接受け取ることは、いまではほとんどありません。

企業のウェビナーや株主総会の配信でも、配信プラットフォームから「RTMPのURLとストリームキー」が発行され、それをハードウェアエンコーダーに入れて送る運用が一般的です。1つの映像を複数のサービスへ同時に送るマルチ配信も、RTMPの送り先を複数並べる形で行われます。

RTMPの仕組み

RTMPはTCPの上で動き、既定ではポート1935を使います。接続先は rtmp://サーバー名/アプリ名 の形のURLで、そこにストリームキーを付けて、どのチャンネルへの配信なのかを識別します。ストリームキーはパスワードと同じ扱いで、漏れると第三者が同じチャンネルに配信できてしまいます。

映像と音声はFLVと同じ形式のタグに分けて送られます。長く使われてきた組み合わせはH.264とAACで、元の仕様ではHEVCやAV1を扱えませんでした。この制約を外すためにVeovera Software Organizationが中心となってEnhanced RTMPという拡張仕様をまとめ、HEVC、AV1、VP9などを送れるようにしています。YouTube LiveはこのHEVCでの入力を受け付けています。

TCPなので、失われたパケットは必ず再送されます。映像が壊れにくい代わりに、回線が詰まると未送信のデータが溜まり、遅延が伸びたりエンコーダー側でフレームを落としたりします。

RTMPの設定で間違えやすい点

配信が止まる、画質が荒れるといった相談の多くは、次のどれかに当てはまります。

  • キーフレーム間隔を配信サービスの推奨に合わせていない。YouTube Liveは2秒を推奨している
  • 上り回線の実測値ぎりぎりまでビットレートを上げ、再送のたびに遅延が膨らんでいる
  • RTMPSしか受け付けないサービスに rtmp:// で接続しようとしている。RTMPSでは rtmps:// で始まるURLを使い、ポートは443を指定する例が多い

RTMPとSRT・WebRTCの違い

RTMPで打ち上げてHLSで配る構成では、視聴者に届くまで数秒〜数十秒の遅延が出ます。中継現場から局へ素材を送るような用途ではSRTが、視聴者とのやり取りに1秒未満の遅延が要る用途ではWebRTCが選ばれます。遅延と使いどころの比較はSRT・RTMP・WebRTC・HLSの違いにまとめています。

よくある質問

RTMPはもう使われていないのですか

視聴側では使われなくなりましたが、配信サービスへ映像を送る側では今も標準的な方式です。OBS StudioやハードウェアエンコーダーでYouTube Liveへ配信する場合、特に指定しなければRTMPかRTMPSで送っています。

RTMPとRTMPSの違いは何ですか

RTMPSはRTMPの通信をTLSで暗号化したものです。映像の中身や使い方は同じで、途中の経路でストリームキーや映像を盗み見られにくくなります。RTMPSでの接続だけを受け付けるサービスもあります。

RTMPのURLとストリームキーはどこで確認できますか

配信サービスの管理画面に表示されます。YouTubeならYouTube Studioのライブ配信の画面にある「ストリームの設定」で、ストリームURLとストリームキーを確認できます。

この用語を扱ったコラム

似ている形式との違い

名前主に使う場面RTMPとの違い
SRT中継・局間の素材伝送UDPの上で再送を行い、遅延量を先に決めて送る。回線が揺れてもRTMPほど遅延が積み上がらない
WHIPWebRTCでの配信の打ち上げWebRTCで送り込むための接続手順。視聴者まで1秒未満の遅延で届ける構成に使う
HLS視聴者への配信視聴側で使う方式。RTMPで受けた映像をサーバーで変換し、HLSで配るのが一般的な構成

関連する用語

最終更新