windows下使用Nginx搭建Rtmp流媒体服务器,实现视频直播功能

简介: windows下使用Nginx搭建Rtmp流媒体服务器,实现视频直播功能

一、环境介绍

操作系统:win10 64位系统

Linux下搭建Nginx搭建Rtmp流媒体服务器方法请看这里:https://blog.csdn.net/xiaolong1126626497/article/details/105378894

二、流媒体服务器介绍

流媒体服务器的主要功能是以流式协议(RTP/RTSP、MMS、RTMP等)将视频文件传输到客户端,供用户在线观看;也可从视频采集、压缩软件接收实时视频流,再以流式协议直播给客户端。

nginx服务器是开源的高性能的http服务器,反向代理服务器,在国内许多公司应用比较多。

rtmp是实时消息传输协议(real time messaging protocol),主要应用在流媒体传输,实时音视频通信的协议。

三、搭建流媒体服务器

3.1 下载Nginx

Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。

Nginx 下载地址:http://nginx-win.ecsds.eu/download/

image.png

CSDN下载地址: https://download.csdn.net/download/xiaolong1126626497/13736098

我这里在电脑D盘建立了一个Nginx文件夹,然后将下载的nginx 1.7.11.3 Gryphon.zip文件解压在Nginx文件夹下(我这里解压,选择的是解压到当前目录)。

image.png

3.2 配置nginx.conf文件

接下来在D:\Nginx\conf 目录下新建一个nginx.conf文件。

image.png

写入以下代码:

 worker_processes  1;   #Nginx进程数,建议设置为等于CPU总核数
events {
    worker_connections  1024;  #工作模式与连接数上限
}
rtmp_auto_push on;
#RTMP服务
rtmp {  
    server {  
        listen 8888;   
        application live {  
            live on;  
          }
         }  
}
#HTTP服务
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    server {
        listen       8099;
        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;
        }
    }
}

需要注意的地方:上面配置文件里,有两个地方设置了端口号,一个是HTTP(8099),一个是RTMP(8888),这两个端口号必须是系统当前没有使用的,如果被占用,下面3.4的步骤就会报错。

3.3 建立工作目录

在D:\Nginx 目录下新建三个目录:m3u8File、rec、vod  。

image.png

3.4 检查配置是否正确

打开windows命令行终端,进入到D:\Nginx 目录下,运行nginx.exe -t  。 出现以下结果,就表示成功。

1.Microsoft Windows [版本 10.0.18363.778]
(c) 2019 Microsoft Corporation。保留所有权利。
D:\Nginx>nginx.exe -t
nginx: the configuration file D:\Nginx/conf/nginx.conf syntax is ok
nginx: configuration file D:\Nginx/conf/nginx.conf test is successful
D:\Nginx>

image.png

3.5 启动Nginx服务器

在命令行,继续运行启动命令。

start nginx

image.png

启动之后,用户可以通过命令nginx.exe -s stop或者nginx.exe -s quit停止nginx。

接下来,打开浏览器,输入地址:http://127.0.0.1:8099/  ,查看nginx启动状态,看到下面页面就表示启动成功了,。

image.png

四、推流、拉流测试

在Nginx的配置文件里,设置RTMP服务器的端口号是8888,下面使用编写的推流软件进行测试。

因为是在本地测试,我这里就使用本地IP地址:127.0.0.1

根据上面的配置说明,那么本机Nginx服务器的推流和拉流的地址就是:rtmp://127.0.0.1:8888/live/video01

上面地址里“live”是在配置文件里设置的,“video01”是随意写,是服务器创建的临时目录。

image.png

接下来打开Vlc软件,测试下拉流效果。 拉流地址和推流地址是一样的:rtmp://127.0.0.1:8888/live/video01

image.png

image.png

至此:推流服务器搭建完毕。

目录
相关文章
|
8月前
|
缓存 负载均衡 JavaScript
Nginx:高性能Web服务器与反向代理利器
Nginx:高性能Web服务器与反向代理利器
396 110
|
8月前
|
缓存 负载均衡 前端开发
Nginx:高性能Web服务器的核心引擎
Nginx:高性能Web服务器的核心引擎
273 47
|
7月前
|
Ubuntu 安全 应用服务中间件
详细指南:配置Nginx服务器在Ubuntu平台上
以上步骤涵盖了基本流程:从软件包管理器获取 Ngnix, 设置系统服务, 调整UFW规则, 创建并激活服务器块(也称作虚拟主机), 并进行了初步优化与加固措施。这些操作都是建立在命令行界面上,并假设用户具有必要权限(通常是root用户)来执行这些命令。每个操作都有其特定原因:例如,设置开机启动确保了即使重启后也能自动运行 Ngnix;而编辑server block则定义了如何处理进入特定域名请求等等。
411 18
|
7月前
|
Ubuntu 安全 应用服务中间件
详细指南:配置Nginx服务器在Ubuntu平台上
以上步骤涵盖了基本流程:从软件包管理器获取 Ngnix, 设置系统服务, 调整UFW规则, 创建并激活服务器块(也称作虚拟主机), 并进行了初步优化与加固措施。这些操作都是建立在命令行界面上,并假设用户具有必要权限(通常是root用户)来执行这些命令。每个操作都有其特定原因:例如,设置开机启动确保了即使重启后也能自动运行 Ngnix;而编辑server block则定义了如何处理进入特定域名请求等等。
677 17
|
Windows
Windows系统云服务器配置多用户登录
本教程介绍了在Windows云服务器上配置远程桌面服务的详细步骤,包括安装桌面会话主机和远程桌面授权、允许多用户远程连接以及配置新用户并加入远程桌面用户组。通过添加角色和功能、设置组策略以及管理用户权限,实现多用户同时登录和远程访问。按照指引操作,可顺利完成服务器的远程访问配置,提升管理和使用效率。
1609 0
|
弹性计算 网络安全 Apache
windows server2012服务器下PHPstudy配置ssl证书(https配置)
windows server2012服务器下PHPstudy配置ssl证书(https配置)
610 0
|
算法 程序员 Apache
Windows下搭建SVN服务器并配置eclipse和idea
Windows下搭建SVN服务器并配置eclipse和idea
402 1
|
消息中间件 数据可视化 API
Windows 下安装 RabbitMQ 服务器及基本配置
Windows 下安装 RabbitMQ 服务器及基本配置
839 0
Windows 下安装 RabbitMQ 服务器及基本配置
|
弹性计算 C语言 云计算
在阿里云ESC的Windows Server 2012 R2 完成注册云服务器与为一个新网站配置网络端口的使用体验
为完成外教的作业,使用阿里云ESC的经历体验,和对未来发展的想法。
519 0
在阿里云ESC的Windows Server 2012 R2 完成注册云服务器与为一个新网站配置网络端口的使用体验
|
网络安全 数据安全/隐私保护 Windows
windows服务器ssl证书安装及配置https
申请证书 安装服务器证书 安装服务器证书及配置绑定
3135 0
windows服务器ssl证书安装及配置https
下一篇
开通oss服务