美文网首页音视频方向
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