そのため、ゲームやWebカメラをストリーミングしたいが、YouTubeやTwitchなどのサービスは好きではありません。または、プライバシーの懸念がある場合や、コンテンツをさらに制御したい場合もあります。この記事では、RTMPプロトコルを使用して、Nginxを使用してFreeBSDでストリーミングサーバーを作成する方法を紹介します。
ステップ1:Nginxをインストールする
幸い、Nginxポートには、インターネット経由でオーディオとビデオをストリーミングするためのRTMPプロトコルを実装するモジュールが含まれています。 Nginxサーバーをインストールするには、次のコマンドを実行します:
[gonz@gonz ~]$ su -
Password:
[root@gonz ~]# cd /usr/ports/www/nginx
[root@gonz /usr/ports/www/nginx]# make config install clean
ポート設定画面で、下にスクロールしてオプションRTMPを選択します:
数分後、コンパイルとインストールが完了します:
ステップ2:Nginxを構成する
2.a:Webrootディレクトリ
NginxがコンテンツをストリーミングするWebルートディレクトリが必要です。私はあまりクリエイティブに感じていないので、私は単に「ライブ」と呼んでいます:
[root@gonz ~]# mkdir /usr/local/www/live
[root@gonz ~]# chown www:www /usr/local/www/live/
2.b:構成ファイル
/usr/local/etc/nginx/nginx.confファイルを編集し、上部に次の行を追加します。
load_module /usr/local/libexec/nginx/ngx_stream_module.so; load_module /usr/local/libexec/nginx/ngx_rtmp_module.so;
これらの行を使用して、nginxはストリーミングに必要なモジュールをロードします。
eeエディターを使用している場合は、ctrl-yを押して「location /」を見つけ、webrootパスを以前に作成したパスに変更します。
location / {
root /usr/local/www/live;
}
ファイルの下部にRTMP設定を追加します:
rtmp {
server {
listen 1935;
chunk_size 4096;
application live {
live on;
record off;
}
}
}
2.c:nginxを有効にして開始します
変更をnginx.confファイルに保存し、以下を実行します:
[root@gonz ~]# /usr/local/etc/rc.d/nginx enable
nginx enabled in /etc/rc.conf
[root@gonz ~]# /usr/local/etc/rc.d/nginx start
Performing sanity check on nginx configuration:
nginx: the configuration file /usr/local/etc/nginx/nginx.conf syntax is ok
nginx: configuration file /usr/local/etc/nginx/nginx.conf test is successful
Starting nginx.
ステップ3:ストリーミングソフトウェアの設定
Nginxがビデオストリームを受け入れる準備ができたら、ブロードキャストソフトウェアをセットアップする必要があります。ストリーミングサーバーの作成方法を学んでいたとき、私は多くのチュートリアル(Linux、特にUbuntuに重点を置いています)を読みました。このステップでは、すべてOBS(Open Broadcaster Software)Studioをお勧めします。
Webサイトにアクセスして、デスクトップOSに適した手順をダウンロードして見つけてください。このラップトップにはGentooLinuxが搭載されており、非公式にインストールする手順は次のように簡単です。
# emerge media-video/obs-studio
OBSを起動すると、初めてのウィザードが表示されます:
ウィザードは、コンピューターに基づいて最適な設定を決定するのに役立ちます。次の画面は解像度に関するもので、次の画面は重要です:
カスタムサービスを選択し、サーバーに RTMP://IP.or.FQDN of your nginx/live
を入力します 。ストリームキーはオプションです。
ストリームをテストする
OBSウィンドウの左下に移動し、+記号をクリックしてソースを追加します:
xtermウィンドウをキャプチャすることを選択しました。これですべてが構成されたので、サーバーへのストリームの送信を開始できます。右下のコントロールで、[ストリーミングの開始]をクリックします。すべてが正しければ、ステータスバーに緑色のブロックが表示されます。
最後のステップ:ストリームを表示する
このチュートリアルの目的は、どこかにブロードキャストできるようにすることでした。この例のどこかに、ストリーミングしているのと同じPCがあります。私の場合、VLCでアクセスしています。開く必要のあるURLはRTMP://IP.or.FQDN.of.your nginx/live
/ SuperSecretKey
これで終わりです:
このPCはちょっと遅いので、私のxtermでは、アスキーアートゲームのalienwaveを実行して何かを見せています。
そして、これが私がFreeBSDで何か新しいことを学ぶ楽しみのためにストリーミングサーバーを作成した方法です。