このガイドでは、MediaMTXを使ってSLAM XCAMのRTMP配信をローカルネットワークでテストする方法と、実際のRTMP配信サービスで使用する際の基本手順を説明します。映像、音声、ビットレートの安定性、弱いネットワークからの復帰を確認するための手順です。
1. 推奨テスト構成
トラブルシューティングでは、まずローカル環境で確認し、その後に実際の配信サービスで確認する流れを推奨します。
| 段階 | 目的 | 推奨ツール |
|---|---|---|
| ローカルRTMPテスト | カメラ出力、音声/映像トラック、ビットレート、復帰動作を、配信プラットフォームの影響なしで確認します。 | PC上のMediaMTX |
| 実運用RTMPテスト | 実際の配信先、CDN、トランスコード、視聴環境との互換性を確認します。 | YouTube Live、専用RTMPサーバー、クラウド/VPS上のMediaMTX、その他RTMP対応サービス |
2. MediaMTXを使ったローカルRTMPテスト
必要なもの
- Windows PCとSLAM XCAMが同じWi-Fiネットワークに接続されていること。
- PC上でMediaMTXが起動していること。
- ブラウザ、VLC、またはストリーム再生用プレーヤー。
- カメラをライブ配信モードにし、RTMPを選択していること。
手順1:PCのIPアドレスを確認する
WindowsのコマンドプロンプトまたはPowerShellで、次のコマンドを実行します。
ipconfig
使用中のWi-FiアダプターのIPv4アドレスを確認します。例:
192.168.2.241
カメラとPCは同じサブネットにある必要があります。たとえば、PCが192.168.2.241、カメラが192.168.2.236であれば、同じ192.168.2.xネットワーク上にあります。
手順2:MediaMTXを起動する
PC上でMediaMTXを起動します。ローカルRTMPテストで重要なポートは次の通りです。
RTMP: 1935
ブラウザで安定して視聴するために、HLSを配信開始時から自動生成する設定を推奨します。
hlsAlwaysRemux: true
WindowsのローカルテストでMediaMTXがMoQ用TLS証明書の生成に失敗して起動できない場合は、ローカルテスト用にMoQを無効にします。
moq: false
手順3:SLAM XCAMにRTMP URLを入力する
PCのIPアドレスを使って、カメラ側に次のようなRTMP URLを入力します。
rtmp://192.168.2.241:1935/live/stream
192.168.2.241は実際のPCのIPアドレスに置き換えてください。
重要:URLの最後に余分なスペースや改行が入らないようにしてください。コピー時に見えない改行が入ると、RTMPサーバーが接続を拒否することがあります。
手順4:MediaMTXで受信を確認する
カメラから正常に配信できている場合、MediaMTXに次のようなログが表示されます。
stream is available and online, 2 tracks (H265, MPEG-4 Audio)
is publishing to path 'live/stream'
これは映像と音声の両方が受信できていることを意味します。
3. ローカルテスト配信の視聴方法
H.265のRTMP入力では、RTMPを直接再生する方法を主な確認方法にしないでください。RTMP/FLVの再生側がH.265映像を正しく扱えない場合があります。MediaMTXのHLSまたはWebRTC出力を使用することを推奨します。
| 視聴方法 | URL例 | 注意点 |
|---|---|---|
| HLS | http://192.168.2.241:8888/live/stream/index.m3u8 |
映像と音声の両方を確認する場合に推奨します。安定性確認に適しています。 |
| WebRTC | http://192.168.2.241:8889/live/stream |
低遅延です。ブラウザによってはH.265映像は表示されてもAAC音声が聞こえない場合があります。 |
| RTMP直接再生 | rtmp://192.168.2.241:1935/live/stream |
H.265では推奨しません。プレーヤーによっては音声のみ、または映像なしになることがあります。 |
4. RTMP直接再生で映像が出ない理由
SLAM XCAMはH.265映像とAAC音声で配信する場合があります。MediaMTXはこのストリームを正常に受信できますが、RTMP/FLV再生側のH.265互換性には制限があります。一部のプレーヤーではAAC音声のみを受信し、映像が表示されないことがあります。
MediaMTX上で2トラックが確認できているにもかかわらず、VLCのRTMP直接再生で映像が出ない場合は、HLSで再生してください。
http://192.168.2.241:8888/live/stream/index.m3u8
5. 弱いネットワークからの復帰テスト
ローカル再生が正常に動作したら、復帰動作を確認します。
- SLAM XCAMからRTMP配信を開始します。
- HLS視聴URLを開き、映像と音声が正常であることを確認します。
- カメラをWi-Fiが弱い場所へ1から2分ほど移動します。
- 再びWi-Fiが強い場所へ戻します。
- 配信を停止/再開しなくても、映像が自動的に復帰するか確認します。
映像が停止し、音声だけが低いビットレートで送信され続ける場合は、音声のみの送信状態になっている可能性があります。最新のアプリでは、この状態を検出して配信pusherを自動的に再起動する復帰処理が入っています。
6. 実際のRTMP配信での使い方
ローカルテストが安定した後、実際の配信サービスまたはサーバーが提供するRTMP送信先を使用します。多くのRTMPサービスでは、次の2つの情報が提供されます。
| サービス側の項目 | 例 |
|---|---|
| サーバーURL | rtmp://live.example.com/app |
| ストリームキー | abcd-1234-efgh-5678 |
SLAM XCAM側で1つの入力欄にまとめて入力する場合は、次のように結合します。
rtmp://live.example.com/app/abcd-1234-efgh-5678
サービスによってパス形式が異なる場合があります。必ず配信サービスが表示する正確なRTMP URL形式に従ってください。
7. 推奨ビットレートの目安
実運用のライブ配信では、まず控えめなビットレートから開始し、ネットワークが安定していることを確認してから上げることを推奨します。
| モード | コーデック | 推奨開始ビットレート |
|---|---|---|
| 4K30 | H.265 | 14から24 Mbps |
| 4K50 | H.265 | 24 Mbps |
| 6K30 | H.265 | 30から36 Mbps |
ネットワークが不安定な場合は、他の設定を変更する前にビットレートを下げてください。高ビットレートで黒画面やバッファリングが頻発するよりも、少し低い安定したビットレートの方が視聴体験は良くなります。
8. トラブルシューティング
カメラがローカルRTMPサーバーに接続できない
- PCとカメラが同じWi-Fiサブネットにあるか確認します。
- MediaMTXが
1935ポートで待ち受けているか確認します。 - WindowsファイアウォールでMediaMTXをプライベートネットワークに許可します。
- RTMP URLの末尾に見えない改行やスペースがないか確認します。
HLSがブラウザ更新後にしか再生できない
次の設定を有効にしてください。
hlsAlwaysRemux: true
これにより、RTMP配信が開始された時点でMediaMTXがHLSを生成します。
VLCでRTMPを開いても映像が表示されない
H.265 over RTMP/FLVの互換性が原因である可能性があります。HLSで再生してください。
WebRTCで映像は出るが音声が出ない
ブラウザ/WebRTC側の音声互換性によって発生する場合があります。HLSで映像と音声の両方が出ていれば、カメラの音声トラックは正常に送信されています。
弱いネットワーク後に映像が復帰しない
ライブ配信復帰処理が入った最新アプリに更新してください。その後、弱ネットワークテストを再実施し、ネットワーク回復後に映像が自動復帰するか確認します。
9. 推奨テスト基準
カメラ側RTMP送信URL:
rtmp://192.168.2.241:1935/live/stream
ブラウザ/VLC用HLS視聴URL:
http://192.168.2.241:8888/live/stream/index.m3u8
低遅延ブラウザ視聴:
http://192.168.2.241:8889/live/stream
安定性テストでは、映像と音声の両方を確認できるHLS URLを主な基準として使用してください。