搭建nginx流媒体服务器(Windows)

本文详细介绍了在Windows系统上搭建nginx流媒体服务器的步骤,包括远程连接云服务器,安装并配置nginx,开启rtmp服务,使用OBS进行推流,以及使用VLC播放器拉流。通过这个过程,读者可以学会如何在广域网上实现直播功能。

搭建流媒体服务器(Windows)

1 前言

本文将采用搭建nginx流媒体服务器的方法,使其支持rtmp协议的直播以及通过配置支持直播状态监听 。

Nginx (engine x) 是一个高性能的HTTP反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。

Nginx是一款轻量级Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东新浪网易腾讯淘宝等。

​ ----百度百科

2 资源需求

  • 云服务器一台

  • nginx 1.7.11.3 Gryphon.zip 下载地址:http://nginx-win.ecsds.eu/download/

  • nginx-rtmp-module-master.zip 下载地址:https://github.com/arut/nginx-rtmp-module/

  • OBS(Open Broadcaster Software) 下载地址:https://obsproject.com

  • VLC 播放器 下载地址:https://www.videolan.org/

    以上资源除云服务器以外均为开源(注:局域网测试无需云服务器)。

3 搭建流媒体服务器

3.1 远程连接云服务器

在这里插入图片描述

3.2 解压 nginx

解压nginx 1.7.11.3 Gryphon.zipnginx-1.7.11.3-Gryphon文件夹中,在该文件夹中Shift + 鼠标右键打开cmd控制台,输入命令:nginx.exe -v可以查看版本信息:

在这里插入图片描述

相关命令:

start nginx # 开启nginx
nginx -s stop # 关闭nginx
nginx -s reload # 重新启动nginx
nginx -v # 查看版本号
nginx -t # 验证配置文件是否正确
3.3 配置 nginx

然后我们进入nginx-1.7.11.3-Gryphon文件夹的conf目录下,新建一个文件nginx.conf,文件内容如下:


worker_processes  1;   #Nginx进程数,建议设置为等于CPU总核数
 
events {
    worker_connections  1024;  #工作模式与连接数上限
}
 
rtmp_auto_push on;
 
 
#RTMP服务
rtmp  {
    server  {
        listen 1935;
        chunk_size 4096;
        application live  {
            live on;
            record off;
        }
        application live2  {
            live on;
            record off;
        }
        application vod  {
            play /var/flvs;
        }
        application vod_http  {
            play http://114.215.82.212/vod;
        }
        application hls  {
            live on;
            hls on;
            hls_path /tmp/hls;
        }
    }
}
 
 
#HTTP服务
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 /live_hls{
		    types{
			    #m3u8 type设置
				application/vnd.apple.mpegurl m3u8;
				#ts分片文件设置
				video/mp2t ts;
			}
			#指向访问m3u8文件目录
			alias ./m3u8File;
			    add_header Cache-Control no-cache; #禁止缓存
		}
 
        location /control{
		    rtmp_control all;
		}
		
		location /stat{
		    rtmp_stat all;
			rtmp_stat_stylesheet stat.xsl;
		}
		location /stat.xsl{
		    root ./nginx-rtmp-module-master;
		}
 
        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}

然后,把nginx-rtmp-module-master.zip 解压到nginx-1.7.11.3-Gryphon文件夹下,进行直播状态监控。

3.4 开启 nginx

nginx-1.7.11.3-Gryphon文件夹下,Shift + 鼠标右键打开cmd控制台,输入命令:start nginx,如下:

在这里插入图片描述

在浏览器输入IP地址:(本文云服务器地址为:114.215.82.212;注:局域网测试输入本地IP地址或者127.0.0.1或者 localhost),结果如下为启动成功:

在这里插入图片描述

在浏览器输入IP地址/stat(114.215.82.212),可以查看直播监控状态,如下:

在这里插入图片描述

4 推流

4.1 开启云服务端口

点击添加安全组规则,开启rtmp绑定的端口号1935,点击确定,如下:

在这里插入图片描述

添加成功如下:

在这里插入图片描述

4.2 OBS推流

安装OBS,打开应用添加一个场景,并在场景中添加来源(具体使用方式,自行查阅):

在这里插入图片描述

点击设置, 把推流地址rtmp://IP地址:端口号/live填入下方,如下:

在这里插入图片描述

然后点击开始推流,查看是否推流成功,发现有1条流数据,推流成功。

在这里插入图片描述

5 拉流

这里我们使用VLC media player,也可以使用其他开源拉流工具,自行百度。

安装VLC media player,打开如下,点击媒体,然后点击打开网络串流

在这里插入图片描述

如下,输入推流地址,点击播放

在这里插入图片描述

结果如下, 拉流成功:

在这里插入图片描述

查看直播监控状态如下,有2条流数据:

在这里插入图片描述

6 框架图

在这里插入图片描述

7 总结

本文在Windows系统下,在云服务器搭建了nginx流媒体服务器,实现了广域网下的直播推流(OBS)和拉流(FLV)。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值