Nginx搭建RTMP流媒体服务器的实现

目录
  • 1 环境搭建
    • 依赖库安装
    • 源码下载与编译
    • 编译过程
  • 2 推流服务
    • 2.1 利用文件推流
    • 2.2 将一路流灌到nginx服务器rtmp进行推流
  • 3 直播拉流

1 环境搭建

环境搭建主要是利用nginx服务器的插件模块nginx-rtmp-module进行rtmp的推拉流操作。

依赖库安装

安装过nginx的可以跳个这个步骤,主要是安装ssl、pcre和zlib库依赖

#安装ssl依赖库
sudo apt-get install openssl libssl-dev
#安装pcre
sudo apt-get install libpcre3 libpcre3-dev
#安装zlib
sudo apt-get install zlib1g-dev

源码下载与编译

源码下载路径:https://github.com/arut/nginx-rtmp-module
下载源码,如果git命令没法下载就直接到网页下载复制到对应目录。

mkdir /home/rtmp
cd /home/rtmp
git clone https://github.com/nginx/nginx.git
git clone https://github.com/arut/nginx-rtmp-module.git

编译过程

设置nginx编译参数

auto/configure --with-http_ssl_module --with-http_v2_module --with-http_flv_module --with-http_mp4_module --add-module=../nginx-rtmp-module

编译和安装

make -j4
sudo make install

安装完可以查看nginx版本是否正常
默认安装路径:/usr/local/nginx/

2 推流服务

2.1 利用文件推流

完成nginx服务器的安装后,需要进行rtmp服务的配置,只需要修改nginx配置即可:

vi /usr/local/nginx/conf/nginx.conf

配置内容注意事项:

  • 开启root权限,以便可以访问home下的目录;
  • play路径设置为自己的视频文件夹路径
user  root;
rtmp {  #RTMP server
    server {
        listen 1935;  #server port
        chunk_size 4096;  #chunk_size
        application vod {
           #play /mnt/hgfs/ygf/vod; #media file position
           play /home/ffmpeg_learn/test_sources/test-av;
        }
    }
}

重启nginx

/usr/local/nginx/sbin/nginx -s reload

需要注意的是播放的路径一定要正确,同时播放音频是aac视频视h264,这里添加一个test.mp4文件。

下面是测试过程,windows利用vlc工具播放rtmp的路径。这里的ip需要设置为自己的Ubuntu ip地址

视频效果如下:

注意需要确定视频文件的格式:
音频为AAC视频为H264

2.2 将一路流灌到nginx服务器rtmp进行推流

1 修改nginx配置,新增直播节点,用于FFmpeg将流推到对应节点上

        application live{ # live add
           live on;
        }

2 重启nginx服务器

/usr/local/nginx/sbin/nginx -s reload

3 进行推流操作

ffmpeg -re -i /home/ffmpeg_learn/test_sources/test-av/Titanic.mp4 -c copy -f flv rtmp://192.168.88.180/live/Titanic

利用vlc查看视频,如下所示:

3 直播拉流

上面利用VLC就是一个拉流的过程。
这里介绍FFmpeg命令行操作。

#利用ffplay直接观看
ffplay rtmp://192.168.88.180/vod/Titanic.mp4
#利用FFmpeg下载到文件
ffmpeg -i rtmp://192.168.88.180/vod/Titanic.mp4 test.mp4

到此这篇关于Nginx搭建RTMP流媒体服务器的实现的文章就介绍到这了,更多相关Nginx搭建RTMP内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Nginx搭建rtmp直播服务器实现代码

    1.到nginx源码目录新建个rtmp目录 ,进入 git clone https://github.com/arut/nginx-rtmp-module.git 2.重编译nginx 代码如下 ./configure --prefix=/usr/local/nginx-1.2.9/ --add-module=./rtmp/nginx-rtmp-module --with-http_ssl_module --with-pcre=/lamp_source/pcre-8.38; make;make

  • Mac上搭建nginx+rtmp直播服务器的步骤详解

    前言 相信大家都知道nginx是非常优秀的开源服务器,用它来做hls或者rtmp流媒体服务器是非常不错的选择,所以小编在网上整理了安装流程,现在分享给大家并且作备忘.有需要的朋友们可以参考学习,下面来一起看看吧. 一.安装Homebrow 已经安装了brow的可以直接跳过这一步. 执行命令 ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 如果已经安装过,而

  • 利用nginx搭建RTMP视频点播、直播、HLS服务器

    目录 nginx的服务器的搭建 点播视频服务器的配置 直播视频服务器的配置 配置OBS如图: 实时回看视频服务器的配置 开发环境 Ubuntu 14.04 server nginx-1.8.1 nginx-rtmp-module nginx的服务器的搭建 安装nginx的依赖库 sudo apt-get update sudo apt-get install libpcre3 libpcre3-dev sudo apt-get install openssl libssl-dev 配置并编译ng

  • Nginx搭建RTMP流媒体服务器的实现

    目录 1 环境搭建 依赖库安装 源码下载与编译 编译过程 2 推流服务 2.1 利用文件推流 2.2 将一路流灌到nginx服务器rtmp进行推流 3 直播拉流 1 环境搭建 环境搭建主要是利用nginx服务器的插件模块nginx-rtmp-module进行rtmp的推拉流操作. 依赖库安装 安装过nginx的可以跳个这个步骤,主要是安装ssl.pcre和zlib库依赖 #安装ssl依赖库 sudo apt-get install openssl libssl-dev #安装pcre sudo

  • 使用Nginx搭载rtmp直播服务器的方法

    这次我们搭建一个rtmp直播服务器,用于电脑或手机直播推流到服务器,然后其他终端如电脑或手机可以观看直播的视频画面. 我们这里用电脑录屏软件将实时录制的电脑屏幕画面直播给其它人看.总共需要3部分,第一,录屏软件录制电脑屏幕,并传递画面流到服务器: 第二,服务器rtmp搭建,应能接收来自录屏软件上传的画面:第三,视频播放器客户端能连接到rtmp服务器,接收rtmp服务器推送的视频流,从而可实时观看第一部分录屏软件的实时画面.这里最核心的就是第二部分,搭建rtmp服务器. 1. 下载nginx ng

  • 利用nginx搭建静态资源服务器的方法步骤

    以windows为例,linux其实一样: 搭建静态资源服务器 我电脑上的work文件夹下面有很多图片,我想通过nginx搭建静态资源服务器,通过在地址栏输入ip+port的方式完成目录的映射 找到nginx安装目录,打开/conf/nginx.conf配置文件,添加一个虚拟主机 添加监听端口.访问域名 重点是添加location, 映射-URL:/work/; 注意:如果当前server模块中已有一个location且URL为"/",那么新建的location的url应为匹配路径,不

  • Nginx搭建图片视频服务器的部署步骤

    目录 1 前言 1.1 关于视频 1.2 关于图片 2 搭建图片服务器 2.1 配置文件 2.2 显示效果 3 搭建视频服务器 3.1 添加视频模块 3.2 配置文件 3.3 展示 1 前言 首先是俩故事: 1.1 关于视频 好几年前,我还在上上家公司就职的时候,工作电脑是不连外网的,内网开发,真滴难受,查啥资料的时候,只能用手机.有啥不会的,查到代码了,只能对着一个一个敲. 有一天,俺们接待了一个客户,想给他看我们新产品的的宣传视频,但是视频刚弄好,还在内网,他们坐在会议室聊着天等着看视频,俺

  • CentOS利用Nginx搭建下载功能服务器

    利用nginx在服务器搭建下载功能, 安装Nginx,pcre mkdir /usr/local/nginx tar zxvf pcre-8.12.tar.gz cd pcre-8.12 ./configure --prefix=/usr/local/pcre make && make install tar zxvf nginx-1.0.12.tar.gz tar zxvf nginx-1.0.12.tar.gz cd nginx-1.0.12 ./configure --prefix=

  • Linux环境下nginx搭建简易图片服务器

    主要使用Nginx和vsftpd. 安装方面可以直接从nginx官网上下载,或者... 复制代码 代码如下: yum install nginx 如果没有yum源则需要自行添加再进行install. 复制代码 代码如下: yum install wget wget http://www.atomicorp.com/installers/atomic  sh ./atomic  yum check update 如果是从官网上下载的则进行如下操作: 复制代码 代码如下: [root@admin l

  • 用nginx搭建简单的文件下载服务器的方法

    1.修改nginx.conf配置文件,内容如下: server { listen 9000; #端口 server_name localhost; #服务名 charset utf-8; # 避免中文乱码 root E:\Download\java; #显示的根索引目录,注意这里要改成你自己的,目录要存在 location / { autoindex on; #开启索引功能 autoindex_exact_size off; # 关闭计算文件确切大小(单位bytes),只显示大概大小(单位kb.

随机推荐