ubuntuでNginx-RTMPライブサーバーを構築する

序文##

最近Androidのライブ放送を学んでいるので、ffmpegとWebRTCがオーディオとビデオ業界の2大プレーヤーであることは間違いありません。

ffmpegの基本的な使用法:[https://blog.csdn.net/huangliniqng/article/details/81842273](https://blog.csdn.net/huangliniqng/article/details/81842273)

ライブブロードキャスト環境を構築する方法を説明するチュートリアルをたくさん見てきましたが、そのほとんどはMac環境で構築されています。Windowsユーザーにとっては面倒です。昨日のこの時点で、WindowsでローカルにNginx-rtmpライブブロードキャストサーバーを構築しようとしましたが、ようやく正常に機能しました。 。効果図を以下に示します。

ただし、今日はWindowsでライブサーバーを構築する方法については説明しません。質問がある場合は、一緒に話し合うことができます。今日は、ubuntuサーバー上にライブサーバーを構築する方法を説明します。 (ここではホイールを作成しません。後で簡単に作成できるようにするためです)

1. RTMPの概要##

RTMPはRealTime Messaging Protocol(Real Time Messaging Protocol)の略で、rmtpは通信プロトコルです。このプロトコルはTCPに基づいており、RTMP基本プロトコルとRTMPT / RTMPS / RTMPEおよびその他のバリアントを含むプロトコルファミリです。 RTMPは、リアルタイムデータ通信用に設計されたネットワークプロトコルです。主に、Flash / AIRプラットフォームと、RTMPプロトコルをサポートするストリーミングメディア/インタラクティブサーバーとの間のオーディオ、ビデオ、およびデータ通信に使用されます。

2. 環境構築##

linux操作コマンドに慣れていない場合は、私のlinuxシリーズの記事に移動できます。

https://mp.csdn.net/postedit/82469566

** まず、ソースコードをコンパイルするためのディレクトリを作成して入力します。 ****

**   $ mkdir nginx-src****    $ cd nginx-src**

ソースコードをダウンロードします** $ git clone https://github.com/nginx/nginx.git **** $ git clone https://github.com/arut/nginx-rtmp-module.git **** $ wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.39.tar.gz **** $ tar -xzvf pcre-8.39.tar.gz **** $ cd nginx $ gitチェックアウトリリース-1.9.9 **

コンパイルしてインストール

# configureコマンドをスクリプトにカプセル化します** $ vim cfg.sh **

cfg.shファイルの内容

auto/configure --prefix=/usr/local/nginx
      --with-pcre=../pcre-8.39
              --with-http_ssl_module
              --with-http_v2_module
              --with-http_flv_module
              --with-http_mp4_module
              --add-module=../nginx-rtmp-module/

$ chmod a+x cfg.sh
$ ./cfg.sh
$ make 
$ make install

3. サービス環境を構成する###

インストールが完了したら、構成ファイルを変更して次の操作を実行します。

cd / usr / local / nginx / confと入力します

nginx.confを編集します。権限がないことを確認するメッセージが表示されたら、sudo chmod 777nginx.confを実行してすべての権限を取得します。

主にrtmpサービスを追加するために、nginx.confファイルを編集します

構成が完了したら、ファイルを保存します。

次のコマンドを実行して、nginxを再起動します。
sudo /usr/local/nginx/sbin/nginx -s stop

sudo /usr/local/nginx/sbin/nginx

エラーがない場合、この時点でrtmpストリーミングメディアは正常に構築されています。

次に、ツールを使用してテストします。webrtc-androidを使用してテストすることもできます。ここでは、ツール[SmarterStreaming](https://github.com/daniulive/SmarterStreaming)を使用し、リンクをダウンロードします:[https://github.com/daniulive/SmarterStreaming](https://github.com/daniulive/SmarterStreaming)

テストする前に、まずビデオストリームをプッシュする必要があります

コマンドffmpeg-re -i soft / 2.mp4 -c copy -f flv rtmp:// localhost:1935 / live / filmを使用します

soft / 2.mp4はサーバー上のビデオアドレスです。実行中に次の図が表示された場合は、上記の環境に問題がないことを意味します。

テストツールを使用してテストし、アドレスrtmp://123.207.55.74:1935 / live / filmを入力します

以下に示す結果:

プッシュが終了すると、再生が終了します(テレビ局のようにプッシュしてから終了してから広告をプッシュするなど)。

より多くの人々が共有から利益を得ることができるように、技術記事の共有、提出と共有、無制限の技術タイプ、無制限の技術的深さ。

Recommended Posts

ubuntuでNginx-RTMPライブサーバーを構築する
ubuntuでファイルサーバーを構築する
[Linux] Sambaサーバーのビルド(ubuntu16.04)
Ubuntu Server14.04にOpenSSL1.0.2をインストールします
ubuntu16.04ビルドpptpdV **サーバー
ubuntuサーバーでtomcatを構成する
Ubuntu12.04クロスコンパイルサーバーを構築する
Ubuntu16.04ビルドGitLabサーバーチュートリアル
ChefサーバーワークステーションをUbuntu18.04にインストールします
Ubuntu16.04ビルドphp5.6Webサーバー環境
UbuntuでGitサーバーを構築する方法を教えてください
Ubuntu16.04でNFSファイル共有サーバーを構築する方法
ubuntuに基づいてDiscuzフォーラムを構築する
Ubuntu Server12.4.0にOracle11gR2をインストールします
UbuntuサーバーにGnomeとVNCをインストールする
Ubuntu16.04ビルドLAMP開発環境
ubuntu16.04でnfsサービスを構築する方法
Ubuntu14.04にBaculaServerをインストールする方法
ubuntu20.04でLNMP環境を構築する手順
Ubuntuでアーム仮想オペレーティング環境を構築する
Ubuntu16.04でSambaサーバーを使用する方法
UbuntuシステムでNginxGitサーバーを構成する
Minecraft Bedrock Editionサーバーを構築する(Ubuntu)
Ubuntu16.04サーバーにZabbixをインストールする方法
ubuntuのランプ
Ubuntuビルドetcd
UbuntuビルドSeafile
Ubuntu18.04にSquidプロキシサーバーをインストールする方法
Ubuntu14.04でShinyServerをセットアップする方法
Ubuntu18.04サーバーで静的IPを設定する方法
Ubuntu18.04サーバーで静的IPを設定する方法
ドッカーをubuntuサーバーにすばやくデプロイする方法
Tencent CloudubuntuサーバーでWolframエンジンを構成する
Jenkinsを使用してUbuntuで自動的にビルドする方法
Azure上のUbuntuサーバーの自動更新を構成する
Ubuntu14.04で解析サーバーを実行する方法
クラウドノートを作成するには、Ubuntu18にLeanoteをインストールします
ubuntu18にvscodeをインストールします
UbuntuにRedisをインストールする
centos7でk8s1.9.9をビルドする
ubuntu20にR4をインストールします
Ubuntu18.04にnvtopをインストールします
Ubuntu18.04にpostgresql-10をインストールします
Centosサーバーでgiteaをセットアップする方法を教える3分
Ubuntuにdockerをインストールする
Ubuntu18.04でDNSサーバーを設定する方法
ubuntu18.04にDockerをインストールします
Ubuntu16にnodejs10をインストールします
Ubuntu 18.04 LTSLAMPビルド
Ubuntu14.04にmysqlをインストールします
UbuntuにDjangoをインストールします
Ubuntu16.04にPytorch + CUDAをインストールします
Ubuntu14.04にPython3をインストールします
ジェンキンスはセントスに基づいて構築されています
Ubuntu18にrJavaをインストールします
UbuntuにJDK10 +をインストールする
Ubuntu16.04にPython3をインストールします
ROS学習--- UbuntuにROSをインストールする
Ubuntu16.04.2にKDEをインストールします
ubuntuインストールnginxサーバー
Ubuntu18にDockerをインストールする