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とストリームキーを確認できます。
この用語を扱ったコラム
SRT・RTMP・WebRTC・HLSの違い|配信プロトコルを遅延で選ぶライブ配信のプロトコルは、受け持つ区間が違うため単純な優劣で比べられません。SRT・RTMP・WebRTC・HLSを遅延・区間・視聴側の要件・多人数配信の軸で比較し、伝送区間と視聴者配信を組み合わせて設計する考え方を整理します。放送技術解説
SRTプロトコルとは?字幕ファイルのSRTとの違いと低遅延ライブ伝送の仕組みSRT(Secure Reliable Transport)は、公衆インターネット経由でライブ映像を低遅延・高信頼に運ぶオープンソースの伝送プロトコルです。字幕ファイルのSRTとの違いから、ARQによる損失回復の仕組み、RTMPとの比較までを解説します。放送技術解説
似ている形式との違い
関連する用語
最終更新