Überblick
In diesem Tutorial wird auf API-Ebene erklärt, wie Sie einen Live-Streaming-Job in Brightcove Live erstellen und anschließend RTMP-Ausgaben erstellen und diese erneut auf YouTube Live und Facebook Live streamen.
Dieses Tutorial wird verwendet, curl um die API-Anforderungen zu stellen, aber Sie können sie einfach in Insomnia Postman oder stattdessen in anderen REST-Clients stellen.
Erstellen Sie einen Live-Job
Zuerst erstellen wir einen Live-Job. Sie benötigen eine API-KEY
für die Live-API. Wenn Sie dies nicht tun und an einem Zugang interessiert sind, wenden Sie sich bitte an Ihren Customer Success Manager.
-
Kopieren Sie Folgendes und fügen Sie es ein curl Befehl in einen Texteditor:
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 }] }'
-
Ersetzen:
mit der Ihrem Encoder am nächsten gelegenen verfügbaren Region, sehen Sie sich die nächstgelegenen verfügbaren Regionen zu Ihrem Encoder an. Zum Beispiel:
us-west-2
mit Ihrem Brightcove Live-API-Schlüssel. Zum Beispiel:
abcdfeg-this-is-a-fake-api-key-FgJajjasd12hJHsZ
- Nachdem Sie diese Änderungen vorgenommen haben, kopieren Sie den Code und fügen Sie ihn in das Terminal oder eine beliebige Befehlszeilen-App ein, die Sie verwenden, und führen Sie ihn aus.
-
Die Antwort sollte ungefähr so lauten:
{ "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" }
Mit diesen Jobs werden 5 Wiedergabeversionen erstellt basierend An Apple-Empfehlungen.
Konfigurieren Sie Ihren Encoder
Die hier gezeigten Schritte gehen davon aus, dass ein Elementare Live-Box Encoder, der beim Testen der Schritte für dieses Tutorial verwendet wurde. Wenn Sie einen anderen Encoder haben, sollten die Einstellungen ähnlich sein.
Die wichtigsten Einstellungen für diesen Fall sind:
- Konfigurieren Sie die Timecode-Quelle als "Systemuhr"
- Setzen Sie "OnFi-Timecode-Frequenz" auf 1
- Überprüfen Sie "Timecode-Einfügung" im Video
- Wärmstens empfohlen: Bildrate = Quelle folgen
Dies ist die Konfiguration, die wir für dieses Experiment verwendet haben:
Wiedergabe testen
Das kannst du benutzen VideoJS HLS-Demoseite Um die Wiedergabe zu testen, fügen Sie einfach den Wert ein playback_url
in der Antwort des Erstellungsjobs zurückgegeben:
Fügen Sie den Livestream zu YouTube live hinzu
Wir gehen hier davon aus, dass Sie ein YouTube-Konto für Live-Streaming aktiviert haben.
-
Klicken Sie auf Go Live und Sie sollten sehen:
-
Klicken Sie auf "Encoder-Livestreaming":
-
Konfigurieren Sie die YouTube-Metadaten Ihres Live-Ereignisses und verwenden Sie die Daten zum Einrichten des Encoders, um den Brightcove-Livestream mit YouTube zu verbinden:
-
Nachdem wir YouTube Live eingerichtet haben, erstellen wir die RTMP-Ausgabe dafür aus unserem Live-Job.
-
Kopiere das curl Befehl unten in einen Texteditor:
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/" }'
-
Ersetzen:
mit Ihrer Brightcove-Live-Job-ID. In unserem Beispiel wäre dieser Wert
3b6871bf2f344acaa6b397d09b476018
- Ihr Wert, von der Antwort auf Ihre Anfrage, den Live-Job zu erstellen, wird anders sein.für Ihren Brightcove-Live-API-Schlüssel. Zum Beispiel:
abcdfeg-this-is-a-fake-api-key-FgJajjasd12hJHsZ
für den Streamnamen / Schlüssel, den YouTube zur Verfügung stellt
- Fügen Sie den bearbeiteten Code in Ihre Befehlszeilen-App ein und führen Sie ihn aus.
-
Die Antwort sollte ungefähr so lauten:
{ "connection_info": { "host": "a.rtmp.youtube.com", "port": 1935, "application": "live2", "streamName": "" }, "duration_history": [], "rtmp_out_id": "27aacdfa5bcf4436ade0519e6a748aba", "stream_start": 1542902218238 }
-
Um die YouTube-Wiedergabe zu testen, können Sie zu YouTube gehen mein Kanal:
Füge den Livestream zu Facebook live hinzu
Wir gehen hier davon aus, dass Sie ein für Livestreaming aktiviertes Facebook-Konto haben.
-
Klicken Live-Video
-
Klicken verbinden und Stream-Schlüssel, um die Daten abzurufen, die zum Verbinden Ihres Brightcove-Live-Jobs erforderlich sind:
-
Erstellen Sie als Nächstes eine Live-Ausgabe für den Brightcove-Live-Job mit "Server-URL" und "Stream-Schlüssel" von Facebook. Kopiere das curl Befehl unten und fügen Sie es in einen Texteditor ein:
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/" }'
-
Ersetzen:
mit Ihrer Brightcove-Live-Job-ID. In unserem Beispiel wäre dieser Wert
3b6871bf2f344acaa6b397d09b476018
- Ihr Wert, von der Antwort auf Ihre Anfrage, den Live-Job zu erstellen, wird anders sein.mit Ihrem Brightcove Live-API-Schlüssel. Zum Beispiel:
abcdfeg-this-is-a-fake-api-key-FgJajjasd12hJHsZ
mit deinem Streamnamen, den Facebook dir gibt
-
Die Antwort sollte ungefähr so lauten:
{ "connection_info": { "host": "live-api-s.facebook.com", "port": 80, "application": "rtmp", "streamName": "" }, "duration_history": [], "rtmp_out_id": "59323c3d1e2b44748755853193fb126c", "stream_start": 1542904101097 }
-
Um Ihren Facebook Live-Stream zu testen, klicken Sie auf Ihrer Facebook-Webseite auf "Go Live".