NextGen Live における RTMP
概要
RTMP(または RTMPS)出力を利用すると、Brightcove Live チャンネルをソーシャルプラットフォームに同時配信できます。 本ガイドでは、プログラムによる API アプローチと、Live モジュールでのポイント&クリックによるアプローチの両方を説明します。 注意事項:
新しいチャンネルへの RTMP 出力の追加
- 新しいチャンネルを作成する際に、作成後 Channel Settings > Advanced Settings > RTMP Output を開きます。
- Output URL を追加し、レンディションを選択します。
- Add RTMP をクリックします。
既存のチャンネルへの RTMP 出力の追加
NextGen Live では、既に作成されたチャンネルに RTMP 出力を追加できます。これを行うには、チャンネルの Control Room を開き、Channel Settings をクリックして Advanced Settings に移動し、RTMP Output セクションを展開します。Facebook Live への配信
Facebook Live を使用すると、ページやプロフィールを通じてフォロワーに配信できます。 以下の手順は、Facebook アカウントがすでにライブ配信に対応していることを前提としています (詳細は Facebook のドキュメント をご覧ください)。
- Facebook にログイン → 新しい投稿を作成 → Live Video をクリック。

- Go Live で Create Live Video をクリック。「Video Producer」ダイアログが表示された場合は閉じます。
- Select a video source で Streaming Software を選択。

- Facebook が Stream Key を表示します。Advanced Settings を展開すると Server URL が表示されます。

- Server URL をコピーします。
- 新しいチャンネルへの RTMP 出力の追加 または 既存のチャンネルへの RTMP 出力の追加 の手順に従います。
- Facebook に戻るとプレビューが表示されます ― 投稿内容を入力し、Go Live をクリック。

- 終了したら、Facebook で投稿を見つけ → Edit Live Video → End Live Video。 エンコーダーも停止してください。
YouTube Live への配信
初めてライブ配信を行う前に、YouTube チャンネルでライブ配信を有効にしてください (最大で 24 時間かかる場合があります)。 詳細は YouTube のドキュメント をご覧ください。
- YouTube にログイン → YouTube Studio を開きます。
- CREATE > Go Live をクリック。
- 左側のメニューで Stream を選択。
- YouTube が Stream Key と Stream URL を表示します。

- Stream URL をクリップボードにコピーします。
- 新しいチャンネルへの RTMP 出力の追加 または 既存のチャンネルへの RTMP 出力の追加 の手順に従います。
- YouTube にプレビューが表示されます → Go Live をクリック。

- 終了したら、YouTube Studio で END STREAM をクリック。 VOD コピーが自動で公開されます。エンコーダーを停止してください。
Live API での RTMP 出力の設定
Brightcove Live チャンネルに RTMP(または RTMPS)出力を追加するには、 Live API に送信するジョブ定義にそれらを含めます。
-
RTMP 出力付きのライブジョブを作成するには、次のエンドポイントに
POSTリクエストを送信します:https://api.live.brightcove.com/v2/accounts/{account_id}/jobsリクエスト ボディの例(必要に応じて調整してください):
{ "type": "channel", "name": "Live RTMP Output", "region": "us-east-1", "input": { "protocol": "srt", "fixed_ingest_ip": false }, "outputs": { "video": [ { "label": "hls270p", "height": 270, "width": 480, "bitrate": 450000, "codec": "h264", "codec_options": { "level": "3", "profile": "main" }, "framerate": "30/1", "num_b_frames": 3, "num_reference_frames": 4, "keyframe_rate": 0.5, "sample_aspect_ratio": "1:1", "decoder_buffer_size": 675000, "max_bitrate": 540000 }, { "label": "hls360p", "height": 360, "width": 640, "bitrate": 780000, "codec": "h264", "codec_options": { "level": "3", "profile": "main" }, "framerate": "30/1", "num_b_frames": 3, "num_reference_frames": 4, "keyframe_rate": 0.5, "sample_aspect_ratio": "1:1", "decoder_buffer_size": 1170000, "max_bitrate": 936000 }, { "label": "hls540p", "height": 540, "width": 960, "bitrate": 1500000, "codec": "h264", "codec_options": { "level": "3.2", "profile": "main" }, "framerate": "30/1", "num_b_frames": 3, "num_reference_frames": 4, "keyframe_rate": 0.5, "sample_aspect_ratio": "1:1", "decoder_buffer_size": 2250000, "max_bitrate": 1800000 }, { "label": "hls720p", "height": 720, "width": 1280, "bitrate": 2400000, "codec": "h264", "codec_options": { "level": "4", "profile": "high" }, "framerate": "30/1", "num_b_frames": 3, "num_reference_frames": 4, "keyframe_rate": 0.5, "sample_aspect_ratio": "1:1", "decoder_buffer_size": 3600000, "max_bitrate": 2880000 }, { "label": "hls1080p", "height": 1080, "width": 1920, "bitrate": 4500000, "codec": "h264", "codec_options": { "level": "4.2", "profile": "high" }, "framerate": "30/1", "num_b_frames": 3, "num_reference_frames": 4, "keyframe_rate": 0.5, "sample_aspect_ratio": "1:1", "decoder_buffer_size": 6750000, "max_bitrate": 5400000 } ], "audio": [ { "label": "aac1", "input_selector_name": "default", "language_code": "eng", "codec": "aac", "bitrate": 128000, "sample_rate": 48000 } ], "rtmp": [ { "label": "primary_rtmp", "url": "rtmp://primary.example.com/live/stream_key_1", "video_label": "hls1080p", "audio_label": "aac1" }, { "label": "backup_rtmp", "url": "rtmps://backup.example.com/live/stream_key_2", "video_label": "hls720p", "audio_label": "aac1" } ] }, "manifest": { "name": "playlist", "segment_duration_seconds": 6, "playlist_window_seconds": 30, "hls": {} }, "maintenance_preferences": { "day": "WEDNESDAY", "start_time": "02:00" }, "playback_rights_id": "primary" }
Live API を使用した既存チャンネルへの RTMP 出力の追加
Live API を使用して、既存の Brightcove Live チャンネルに RTMP(または RTMPS)出力を追加することもできます。 これはチャンネルが OFF 状態のときのみ実行できます。
-
既存のチャンネルに RTMP 出力を追加するには、
outputsオブジェクトにrtmp配列を追加し、次のエンドポイントにPUTリクエストを送信します:https://api.live.brightcove.com/v2/accounts/{account_id}/jobs/{job_id}rtmp配列の例:"rtmp": [ { "label": "primary_rtmp", "url": "rtmp://primary.example.com/live/stream_key_1", "video_label": "hls1080p", "audio_label": "aac1" }, { "label": "backup_rtmp", "url": "rtmps://backup.example.com/live/stream_key_2", "video_label": "hls1080p", "audio_label": "aac1" } ]チャンネル作成時に使用した元のジョブ定義を取得するには、次のエンドポイントに
GETリクエストを送信します:https://api.live.brightcove.com/v2/accounts/{account_id}/jobs/{job_id}これにより、既存の
outputsオブジェクトを含む完全なジョブ設定が返されます。 ここにRTMP出力を追加してPUTで再送信できます。