あかはば

ドローンやMacなどなど

Raspberry Pi 動画配信

YoutubeとFacebookに同時ライブ配信③

投稿日:

記事の投稿の順番が前後してしまっています。遅ればせながらアップします。

前回に続き今回はFacebook Liveに配信してみます。Facebookでライブ配信を行うにはFacebookページよりライブ動画を選択します。スタートの項目から、ストリームキーを使用えを選びます。ライブストリーミング設定の項目にサーバーURLとストリームキーが表示されます。OBSやATEM mini proからFacebook Liveに直接配信する場合には、サーバーとしてFacebookを選び、ストリームキーをコピペすれば配信ができますが、今回はNginX-rtmpを中継させます。さてサーバーURLを見ると、RTMPではなくRTMPSになっています。これはHTTPSを介してTCPの443番ポートで通信するRTMP over SSL/TLSです。

Nginxのrtmpモジュール版だけではRTMPSが利用できないため、NginXから発行されるストリームをFacebookに送る経路にSSL/TLSを利用するアプリを介在させます。この機能を担うのがstunnelというアプリです。

stunnel

Downloadsのページより自分の環境にあったバージョンをダウンロードします。今回はWindowsを使うので、stunnel-5.56-win64-installer.exeをダウンロードします(2019/11/22最新版)。

インストーラーを利用してインストールするとデフォルトではC:Program Files配下にインストールされます。configフォルダに設定ファイルstunnel.confがあり、ここにFacebook Live向けの通信を暗号化するための設定を追加します。

[fb-live]
client = yes
accept = 127.0.0.1:1935
connect = live-api-s.facebook.com:443
verifyChain = no

client=yesはクライアントモードで利用する

acceptは記載したアドレス:ポートからの接続を許可する

connectは接続先のアドレス・ポート。live-api-s.facebook.com:443はFacebook Liveのrtmpsアドレスです。

verifyChainはクライアント証明を求めるかどうか

ローカルホストのNginx-rtmpからローカルホスト向けに発行されたストリームはstunnelを介してFacebookのRTMPSアドレスに送られます。

Nginx-rtmpの設定ファイルnginx.confにはpushの項目として以下を記述します。

これでOBSやATEM mini proからの配信がFacebook Liveに届くようになります。

さて、pushの指示は複数列記できるようで、前回設定したYoutube Live向けのpushとともにFacebook Live向けのpushと2つ合わせて記述することで、両方に配信されるようになります。

いくつまで同時配信が可能かはわかりませんが、Youtube LiveとFacebook Liveの同時配信はできました。

-Raspberry Pi, 動画配信
-,

Copyright© あかはば , 2020 All Rights Reserved Powered by STINGER.