概要
このチュートリアルでは、APIレベルでライブストリーミングジョブを作成する方法について説明します。 Brightcove Live次に作成しますRTMP出力し、YouTubeLiveとFacebookLiveに再ストリーミングします。
このチュートリアルでは curlを使用して API リクエストを作成しますが、代わりに Insomnia、 Postman、またはその他のRESTクライアントで簡単に作成できます。
ライブジョブを作成する
まず、ライブジョブを作成します。ライブ API API-KEY
にはが必要です。アクセスできない場合は、アカウントマネージャーにお問い合わせください。
-
次の curlコマンドをコピーしてテキストエディタに貼り付けます。
curl -X POST \ https://api.bcovlive.io/v1/jobs \ -H 'Content-Type: application/json' \ -H 'x-api-key: ' \ -d '{ "live_stream": true, "region": "", "outputs": [{ "label": "hls360p", "live_stream": true, "height": 360, "video_bitrate": 365, "segment_seconds": 6, "keyframe_interval": 60 }, { "label": "hls432p", "live_stream": true, "height": 432, "video_bitrate": 730, "segment_seconds": 6, "keyframe_interval": 60 }, { "label": "hls540p", "live_stream": true, "height": 540, "video_bitrate": 2000, "segment_seconds": 6, "keyframe_interval": 60 }, { "label": "hls720p3M", "live_stream": true, "height": 540, "video_bitrate": 2000, "segment_seconds": 6, "keyframe_interval": 60 }, { "label": "hls720p4.5M", "live_stream": true, "height": 540, "video_bitrate": 4500, "segment_seconds": 6, "keyframe_interval": 60 }] }'
-
置換:
- これらの変更を行ったら、ターミナルまたは使用するコマンドラインアプリにコードをコピーして貼り付けて実行します。
-
応答は次のようなものでなければなりません:
{ "id": "3b6871bf2f344acaa6b397d09b476018", "outputs": [... removed for simplicity ...], "stream_url": "rtmp://ep1-usw2.bcovlive.io:1935/3b6871bf2f344acaa6b397d09b476018", "stream_name": "alive", "static": false, "encryption": {}, "playback_url": "https://bcovlive-a.akamaihd.net/3b6871bf2f344acaa6b397d09b476018/us-west-2/NA/playlist.m3u8", "playback_url_dvr": "https://bcovlive-a.akamaihd.net/3b6871bf2f344acaa6b397d09b476018/us-west-2/NA/playlist_dvr.m3u8" }
このジョブは5つのレンディションを作成しますベースオンAppleの推奨事項。
エンコーダを設定する
ここに示す手順では、このチュートリアルの手順のテストで使用された Elementalライブボックスエンコーダを想定しています。別のエンコーダを使用している場合は、設定が似ているはずです。
この場合の最も重要な設定は次のとおりです。
- タイムコードソースを「システムクロック」として設定
- 「OnFi タイムコード周波数」を 1 に設定します
- ビデオ内の「タイムコード挿入」を確認する
- 強く推奨:フレームレート = ソースに従う
これは、この実験で使用した設定です:
テスト再生
この VideoJS HLSデモページを使用して、再生をテストできます。playback_url
作成ジョブの応答で返された値を貼り付けるだけです。
ライブストリームを YouTube ライブに追加する
ここでは、ライブストリーミングを有効にした YouTube アカウントを持っていることを前提としています。
-
[ライブ開始] をクリックすると、次の項目が表示されます。
-
「エンコーダライブストリーミング」をクリックします:
-
ライブイベントの YouTube メタデータを設定し、「エンコーダー設定」データを使用して、Brightcoveのライブストリームを YouTube に接続します。
-
YouTube ライブをセットアップしたので、ライブジョブから RTMP 出力を作成します。
-
以下の curlコマンドをテキストエディタにコピーします。
curl -X POST \ https://api.bcovlive.io/v1/jobs//rtmpouts \ -H 'Content-Type: application/json' \ -H 'x-api-key: ' \ -d '{ "url": "rtmp://a.rtmp.youtube.com/live2/" }'
-
置換:
ブライトコーブのライブジョブIDを使って。この例では、この値は次のようになります
3b6871bf2f344acaa6b397d09b476018
。ライブジョブを作成するリクエストに対する応答から、あなたの値は異なります。ブライトコーブのライブ API キー用。例えば:
abcdfeg-this-is-a-fake-api-key-FgJajjasd12hJHsZ
YouTube が提供するストリーム名/キー
- 編集したコードをコマンドラインアプリに貼り付けて実行します。
-
応答は次のようなものでなければなりません:
{ "connection_info": { "host": "a.rtmp.youtube.com", "port": 1935, "application": "live2", "streamName": "" }, "duration_history": [], "rtmp_out_id": "27aacdfa5bcf4436ade0519e6a748aba", "stream_start": 1542902218238 }
-
YouTube の再生をテストするには、YouTube マイチャンネルにアクセスしてください。
ライブストリームを Facebook ライブに追加する
ここでは、ライブストリーミングが有効になっているFacebookアカウントを持っていると仮定しています。
-
[ ライブビデオ] をクリックします。
-
[ 接続してストリームキー] をクリックして、ブライトコーブのライブジョブを接続するために必要なデータを取得します。
-
次に、Facebook の「サーバー URL」と「ストリームキー」を使用して、Brightcoveのライブジョブのライブ出力を作成します。以下の curlコマンドをコピーして、テキストエディタに貼り付けます。
curl -X POST \ https://api.bcovlive.io/v1/jobs//rtmpouts \ -H 'Content-Type: application/json' \ -H 'x-api-key: ' \ -d '{ "url": "rtmp://live-api-s.facebook.com:80/rtmp/" }'
-
置換:
ブライトコーブのライブジョブIDを使って。この例では、この値は次のようになります
3b6871bf2f344acaa6b397d09b476018
。ライブジョブを作成するリクエストに対する応答から、あなたの値は異なります。ブライトコーブのライブ API キーを使ってください。例えば:
abcdfeg-this-is-a-fake-api-key-FgJajjasd12hJHsZ
Facebookがあなたに与えてくれるストリーム名と
-
応答は次のようなものでなければなりません:
{ "connection_info": { "host": "live-api-s.facebook.com", "port": 80, "application": "rtmp", "streamName": "" }, "duration_history": [], "rtmp_out_id": "59323c3d1e2b44748755853193fb126c", "stream_start": 1542904101097 }
-
Facebook ライブストリームをテストするには、Facebook ウェブページの [ライブ開始] をクリックします。