使用FreeBSD和nginx-rtmp-module来构建流媒体服务器

总结

使用nginx-rtmp-module建立一个可以实现类似niconico直播的流媒体服务器的方法。

提前准备的事项

    • FreeBSD 10.0 RELEASEがインストールされたサーバ

 

    • sudo

 

    • wget

 

    • pcre

 

    • git

 

    vim

在这里,我们会使用tcsh作为命令行壳。 , huì tcsh .)

建造方式

在开始构建之前

使用这个评论中的方法安装Nginx更容易。
非常感谢@owata提供的评论。

下载nginx。

切换到当前登录用户的主目录。

cd ~

请下载最新版本的nginx-1.7.3。

wget http://nginx.org/download/nginx-1.7.3.tar.gz

下载 nginx-rtmp-module插件。

sudo git clone https://github.com/arut/nginx-rtmp-module.git

3. 解压下载的nginx文件。

tar zxvf nginx-1.7.3.tar.gz

移动到解压的nginx目录中。

cd nginx-1.7.3

编译并安装nginx。

./configure --add-module=/home/ユーザ名/nginx-rtmp-module
make
sudo make install

6. 编辑nginx.conf文件

sudo vim /usr/local/nginx/conf/nginx.conf

在删除已经存在的字符串后,输入以下字符串。

worker_processes 1;
error_log logs/error.log crit;

events {
    worker_connections 10;
}

rtmp {
    server {
        listen 1935;
        access_log logs/rtmp_access.log;
        ping 10s;
        ping_timeout 10s;
        chunk_size 8192;
        drop_idle_publisher 8s;

        application src {
            live on;
            wait_video on;
        }
    }
}

worker_connections和chunk_size可以根据您的喜好来设置。

7. 启动 Nginx

从源代码安装Nginx|FreeBSD|@ OMAKASE

请参考上述网站,在/etc/rc.d/nginx下创建nginx的启动脚本。

完成后,将/etc/rc.d/nginx的权限更改为555。

sudo chmod 555 /etc/rc.d/nginx

当更改完成后,请在/etc/rc.conf文件中添加以下设置以使nginx自动启动。

nginx_enable="YES"

追加工作完成后,试着使用以下命令启动nginx。

sudo /etc/rc.d/nginx start

进行测试直播

请使用开放式广播软件等直播软件,进行测试直播。

以下为中文的选项:

流媒体服务器的URL是什么?

rtmp://[IPアドレス]/src

如上所述。

最终,
最后

只有注册会员才能观看,只有特定的人才能进行发布的设置可以通过结合nginx.conf和PHP进行实现。如果有需求的话,我会再做详细的说明。

bannerAds