Aliran Cadangan

Anda dapat secara bersamaan menyalurkan cadangan data siaran langsung ke siaran langsung. Jika aliran utama Anda gagal, kami akan secara otomatis mengalihkan ke aliran cadangan Anda sehingga siaran langsung Anda dapat terus berlanjut tanpa gangguan. Siaran Anda akan lanjut menggunakan aliran cadangan kecuali Anda secara manual mengalihkan kembali ke aliran utama, atau aliran utama Anda telah dilanjutkan dan aliran cadangan Anda gagal.

Untuk menggunakan aliran cadangan dengan siaran langsung, Anda harus mengaktifkan aliran cadangan saat Anda membuat objek Siaran Langsung, atau mengaktifkannya di objek Siaran Langsung sebelum menerima data aliran.

Aktifkan Aliran Cadangan Setelah Pembuatan Siaran Langsung

Untuk mengaktifkan aliran cadangan saat Anda membuat objek Siaran Langsung Anda, sertakan parameter string kueri enable_backup_ingest=true di kueri Anda.

Misalnya, untuk membuat Siaran Langsung dengan aliran cadangan diaktifkan pada seorang Pengguna:

POST /{user-id}/live_videos ?status=LIVE_NOW &enable_backup_ingest=true &access_token={access-token}

Ini akan mengembalikan dua URL, satu untuk aliran utama Anda, dan satu lagi untuk Anda cadangan (sekunder):

{ "id": "{live-video-id}", "stream_url": "{stream-url}", "secure_stream_url": "{secure-stream-url}", "stream_secondary_urls": [ "{stream-secondary-urls}" ], "secure_stream_secondary_urls": [ "{secure-stream-secondary-urls}" ] }

Gunakan secure_stream_url untuk aliran penyerapan utama Anda dan secure_stream_secondary_urls untuk aliran penyerapan cadangan Anda. Anda dapat menyalurkan data cadangan ke objek Siaran Langsung Anda kapan saja selama siaran.

Contoh Permintaan cURL

curl -i -X POST \ "https://graph.facebook.com/362629830945302/live_videos ?enable_backup_ingest=true &access_token=EAAI4b..."

Contoh Tanggapan

{ "id": "10215840463339953", "stream_url": "rtmps://rtmp.facebook.com/rtmp/10215840463339953?s_bl=1&s_l=1&s_sml=3&s_sw=0&s_vt=api&a=AbxMhT-cq73GTdpuPLo", "secure_stream_url": "rtmps://rtmp.facebook.com/rtmp/10215840463339953?s_bl=1&s_l=1&s_sml=3&s_sw=0&s_vt=api&a=AbxMhT-cq73GTdpuPLo", "stream_secondary_urls": [ "rtmp://rtmps.facebook.com/rtmp/10215840463339953?s_bl=1&s_l=1&s_sml=3&s_sw=1&s_vt=api&a=AbzhD2fKJw1Uw7JQjFc" ], "secure_stream_secondary_urls": [ "rtmps://rtmps.facebook.com/rtmp/10215840463339953?s_bl=1&s_l=1&s_sml=3&s_sw=1&s_vt=api&a=AbzhD2fKJw1Uw7JQF80" ] }

Aktifkan Aliran Cadangan di Siaran Langsung yang Sudah Ada

Anda dapat mengaktifkan aliran cadangan di objek Siaran Langsung yang sudah ada selama belum menerima data aliran siaran langsung dengan mengirimkan permintaan POST ke edge /input_streams Siaran Langsung. Sebagai contoh:

POST /{live-video-id}/input_streams &access_token={access-token}

Ini akan mengembalikan ID Siaran Langsung:

{ "id": "{live-video-id}" }

Setelah diaktifkan, Anda bisa [mendapatkan URL aliran utama dan cadangan] dari objek Siaran Langsung.

Contoh Permintaan cURL

curl -i -X POST \ "https://graph.facebook.com/10215840463339953/input_streams &access_token=EAAI4b..."

Contoh Tanggapan

{ "id": "10215840463339953" }

Secara Manual Beralih Aliran

Anda dapat secara manual beralih antara aliran utama dan aliran cadangan Siaran Langsung dengan mengirimkan permintaan ke:

POST /{live-video-id} ?master_ingest_stream_id={master-ingest-stream-id} &access_token={access-token}

Nilai {master-ingest-stream-id} adalah boolean; 0 mewakili aliran penyerapan utama, dan 1 mewakili aliran penyerapan cadangan.

Contoh Permintaan cURL

curl -i -X POST \ "https://graph.facebook.com/10215840463339953 ?master_ingest_stream_id=1 &access_token=EAAI4b..."

Dapatkan URL Aliran Utama dan Cadangan

Anda dapat membaca kolom Siaran Langsungingest_streams untuk mendapatkan URL aliran utama dan cadangan:

GET /{live-video-id} ?fields=ingest_streams &acess_token={access-token}

Ini akan mengembalikan kelancaran aliran penyerapan dan URL aliran untuk aliran utama dan cadangan (jika ada) di Siaran Langsung:

{ "ingest_streams": [ { "stream_id": "{stream-id}", "stream_url": "{stream-url}", "secure_stream_url": "{secure-stream-url}", "is_master": {is-master}, "stream_health": {stream-health}, "id": "{id}" }, { "stream_id": "{stream-id}", "stream_url": "{stream-url}", "secure_stream_url": "{secure-stream-url}", "is_master": {is-master}, "stream_health": {stream-health}, "id": "{id}" } ], "id": "10215840874550233" }

Contoh Permintaan cURL

curl -i -X GET \ "https://graph.facebook.com/10215840463339953 ?fields=ingest_streams &access_token=EAAI4b..."

Contoh Tanggapan

{ "ingest_streams": [ { "stream_id": "0", "stream_url": "rtmps://live-api.facebook.com/rtmp/10215840874550233?s_bl=1&s_l=1&s_sml=3&s_sw=0&s_vt=api&a=AbyvsHKGRrur_sZOeuo", "secure_stream_url": "rtmps://live-api.facebook.com/rtmp/10215840874550233?s_bl=1&s_l=1&s_sml=3&s_sw=0&s_vt=api&a=AbyvsHKGRrur_sZOF08", "is_master": true, "stream_health": { "video_bitrate": 2304481.75, "video_framerate": 27.586206436157, "video_gop_size": 2000, "video_height": 700, "video_width": 1120, "audio_bitrate": 118149.8828125 }, "id": "10215840874630235" }, { "stream_id": "1", "stream_url": "rtmps://live-api.facebook.com/rtmp/10215840874550233?s_bl=1&s_l=1&s_sml=3&s_sw=1&s_vt=api_dev&a=AbySai39Wr08FKpUYw0", "secure_stream_url": "rtmps://live-api.facebook.com/rtmp/10215840874550233?s_bl=1&s_l=1&s_sml=3&s_sw=1&s_vt=api_dev&a=AbySai39Wr08FKpUv3M", "is_master": false, "stream_health": { "video_bitrate": 1866942.625, "video_framerate": 22.338048934937, "video_gop_size": 2000, "video_height": 700, "video_width": 1120, "audio_bitrate": 95675.3515625 }, "id": "10215840874670236" } ], "id": "10215840874550233" }