简单记录一下Linux 搭建nginx+rtmp直播服务器

环境为:Linux Cent OS 6.9

先要配置一下编译环境 

yum install -y gcc gcc-c++ autoconf wget


yum -y install wget gcc-c++ ncurses ncurses-devel cmake make perl bison openssl openssl-devel gcc* libxml2 libxml2-devel curl-devel libjpeg* libpng* freetype*  

然后

cd  /usr/local

下载nginx

然后 wget http://nginx.org/download/nginx-1.12.1.tar.gz

下载nginx-rtmp-module

然后 http://arut.github.com/nginx-rtmp-module/

通过xftp上传

然后解压这两个文件

tar -zxvf nginx-1.12.1.tar.gz

nginx-rtmp-module的文件名太长了 修改文件名为nrm

tar -zxvf nrm.tar.gz

解压完再修改一次为nrm

cd  nginx-1.12.1

输入

./configure

然后

make

然后

make install

这样会看到 /usr/local 下有个nginx的目录就是默认的安装目录了

cd /usr/local/nginx/sbin

./nginx -s start 可能已经开启了

然后在任意浏览器输入 我的ip 就会出现nginx欢迎页

说明安装成功

接着加入nrm

cd /usr/local/nginx-1.12.1

上面已经配置了环境了 不需要额外再编译 openssl zlib等了 直接搞

./configure --add-module=/usr/local/nrm --prefix=/usr/local/nginx --with-debug 

make

make install

就好了

然后测试一下推流

这里抄一下其他教程的代码

mkdir /usr/local/m3u8File

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

 

代码如下


worker_processes  1;

events {
    worker_connections  1024;
}

rtmp {
    server{
       listen 1935;
       application mylive{
          live on;
          hls on;
          hls_path /usr/local/m3u8File;
       }
    }
  }

http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    server {
        listen       80;
        server_name  localhost;
        location / {
            root   html;
            index  index.html index.htm;
        }
        
       location /mylive_hls{
           types {
         application/vnd.apple.mpegurl m3u8;
             video/mp2t ts;
         }
     alias /usr/local/m3u8File;
           add_header Cache-Control no-cache;     
    }
        
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}

直接复制黏贴就好

cd /usr/local/nginx/sbin

./nginx -s reload

然后下载obs 或用 ffmpeg等推流测试

obs软件推流   rtmp://xx.xx.xx.xx:1935/mylive  (错误举例 rtmp://xx.xx.xx.xx:1935/mylive/2)服务选自定义 流密钥随便写

ffmpeg 命令推流   ffmpeg -i /Users/zwt/Desktop/2.mp4 -c copy -f flv rtmp://xx.xx.xx.xx:1935/mylive

然后 cd /usr/local/m3u8File 

ls

就能看到视频文件了

使用obs实时推流然后使用ffmpeg拉流

拉流代码  ffplay "rtmp://xx.xx.xx.xx:1935/mylive/111 live=1"    或访问hls为 ffplay http://xx.xx.xx.xx:80/mylive_hls/111.m3u8

live=1为标记实时观看 111为流的名称

你可能感兴趣的:(linux,ios,android)