美文网首页音视频方向
Ubuntu下搭建Nginx服务器+集成RTMP视频直播流推拉

Ubuntu下搭建Nginx服务器+集成RTMP视频直播流推拉

作者: JasperWong | 来源:发表于2017-06-14 02:05 被阅读0次
  • 主要讲述如何在ubuntu上搭建nginx服务器以及在nginx上集成rtmp视频直播流推拉模块
  • 文中使用的路径可根据个人习惯更改,但是编译时候注意同时更改路径

搭建nginx服务器

下载nginx

http://nginx.org/en/download.html,这里选择nginx-1.8.1.tar.gz,下载至/usr/local后使用 tar -zxvf nginx-1.8.1.tar.gz 解压

下载所需依赖

  • ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/下载pcre至/usr/local目录下,请注意pcre有2种,下载pcre而不要下载pcre2,这里个人选择pcre-8.39.tar.gz,下载成功后tar -zxvf pcre-8.39.tar.gz解压
  • https://www.openssl.org/source/ 下载openssl至/usr/local,这里选择openssl-1.0.2j.tar.gz,使用tar -zxvf openssl-1.0.2j.tar.gz解压
  • https://zlib.net/ 下载zlib至/usr/local,这里选择zlib-1.2.8.tar.gz,使用tar -zxvf zlib-1.2.8.tar.gz解压

所需文件已准备完毕,开始编译

  • nginx编译依赖pcre,zlib,openssl,编译前请确保g++编译器已安装,若未安装使用sudo apt-get install build-essential安装

  • 编译openssl,cd /usr/local/openssl-1.0.2j切换至openssl目录,使用下述命令编译
    ./config
    ./config -t
    make depend 
    make
    make test
    make install
    
  • 编译pcre,cd /usr/local/pcre-8.39切换至pcre目录,sudo apt-get install libpcre3-dev安装libpcre3-dev依赖库,然后使用下面命令编译,如遇权限问题在命令前加上sudo
    ./configure --prefix=/usr/local/pcre-8.39    
    make
    make install
    
  • 编译nginx
    cd /usr/local/nginx-1.8.1
    sudo ./configure --prefix=/usr/local/nginx --with-pcre=/usr/local/pcre-8.39 --with-zlib=/usr/local/zlib-1.2.8 --with-openssl=/usr/local/openssl-1.0.2j --with-http_ssl_module  
    sudo make
    sudo make install
    

测试nginx是否顺利搭建

  • 如编译成功,/usr/local下将有nginx文件夹,cd /usr/local/nginx/sbin切换到该目录,sudo ./nginx,运行nginx,在浏览器中输入相应ip,如看到下图则nginx搭建成功,sudo ./nginx -s stop可退出服务器

添加rtmp视频直播流推拉模块

  • https://github.com/arut/nginx-rtmp-module下载rtmp模块至/usr/local
  • 切换回nginx源码目录开始编译
    cd /usr/local/nginx-1.8.1
    sudo ./configure --prefix=/usr/local/nginx --with-pcre=/usr/local/pcre-8.39 --with-zlib=/usr/local/zlib-1.2.8 --with-openssl=/usr/local/openssl-1.0.2j  --with-http_ssl_module --add-module=/usr/local/nginx-rtmp-module
    sudo make
    sudo make install
    
  • 如编译成功后nginx目录如图


  • 切换至conf目录cd /usr/local/nginx/conf,编辑nginx.confsudo nano nginx.conf,在
    http协议括号外添加
    rtmp {
         server { 
                listen 1935;
                application test { 
                    live on;
                }
                application hls {
                    live on; 
                    hls on; 
                    hls_path /tmp/hls; 
                }
          }
    }
    
  • 重启nginx

测试直播推拉流

  • 上传一段视频至/usr/local
  • 安装ffmpeg
    sudo add-apt-repository ppa:kirillshkrogalev/ffmpeg-next
    sudo apt-get update
    sudo apt-get install ffmpeg
    
  • 使用ffmpeg推送本地视频流,其中"test"要与nginx.conf中application字段对应,"test123"可随意
    ffmpeg -re -i /usr/local/test.mp4 -vcodec libx264 -vprofile baseline -acodec aac -ar 44100 -strict -2 -ac 1 -f flv -s 1280x720 -q 10 rtmp://localhost:1935/test/test123
  • 在windows中使用potplayer打开rtmp://你的ip:1935/test/test123或者在ubuntu中使用VLC播放器打开rtmp://你的ip:1935/test/test123进行播放

谢谢阅读!

相关文章

网友评论

    本文标题:Ubuntu下搭建Nginx服务器+集成RTMP视频直播流推拉

    本文链接:https://www.haomeiwen.com/subject/idojqxtx.html