基于OBS+Nginx-Rtmp+ffplay实现局域网实时推流

本文详细介绍了如何在Windows上搭建Nginx-RTMP流媒体服务,包括配置Nginx和RTMP,使用Obs进行推流操作,以及客户端如何拉流的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、搭建Nginx-RTMP流媒体服务

注:若嫌麻烦可以直接使用以下链接获取流媒体服务器Windows版本 

链接:https://pan.baidu.com/s/1fquT8L8SULH-6BcNzjE3nA?pwd=XKWS 
提取码:XKWS

1.配置nginx+rtmp

2.启动nginx

二、配置obs

以此版本为例

开启推流

也可以使用以下脚本一键启停推流(在流媒体服务器已经运行的前提下)

开启推流:

@echo off
pushd %~dp0

tasklist | findstr /i obs64* >nul 2>nul && (taskkill /f /im obs64* >nul 2>nul)


start obs   --allow-opengl-dynamic-loading  --collection  LiveRTMP   --minimize-to-tray  --startstreaming

echo,等待信号传输...
for /l %%i in (5 -1 1) do (
	ping -n 2 127.1>nul
	echo,%%i...

关闭推流

@echo off
pushd %~dp0

tasklist | findstr /i obs64* >nul 2>nul && (taskkill /f /im obs64* >nul 2>nul)

三、客户端拉流

tasklist | findstr /i ffplay
ffplay -i rtmp://192.168.0.122:1935/live  -alwaysontop -fflags nobuffer -window_title "MY_LIVE"
#192.168.0.122:1935替换成你流媒体服务器的ip

要搭建RTMP媒体服务,你需要完成以下两个步骤: 1. 安装NginxRTMP模块 2. 配置NginxRTMP模块 下面我将为你详细介绍如何完成这两个步骤。 ## 安装NginxRTMP模块 ### 安装Nginx 首先,你需要安装Nginx。在Ubuntu系统上,可以使用以下命令进行安装: ``` sudo apt-get update sudo apt-get install nginx ``` 安装完成后,你可以使用以下命令验证Nginx是否成功安装: ``` nginx -v ``` 如果成功安装,你应该可以看到Nginx的版本信息。 ### 安装RTMP模块 安装Nginx后,你需要安装RTMP模块。RTMP模块可以让Nginx支持RTMP协议,从而实现媒体服务。 在Ubuntu系统上,你可以使用以下命令下载RTMP模块: ``` sudo apt-get install libnginx-mod-rtmp ``` 安装完成后,你需要启用RTMP模块。可以使用以下命令启用: ``` sudo ln -s /usr/share/nginx/modules-available/mod-rtmp.conf /etc/nginx/modules-enabled/ sudo ln -s /usr/share/nginx/modules-available/mod-rtmp.load /etc/nginx/modules-enabled/ ``` ## 配置NginxRTMP模块 安装完成NginxRTMP模块后,你需要配置NginxRTMP模块以实现媒体服务。 ### 配置Nginx 首先,你需要编辑Nginx的配置文件。可以使用以下命令打开默认Nginx配置文件: ``` sudo nano /etc/nginx/nginx.conf ``` 在文件末尾添加以下代码: ``` rtmp { server { listen 1935; chunk_size 4096; application live { live on; record off; } } } ``` 这里我们定义了一个RTMP服务器,它将监听1935端口并支持媒体服务。在application块中,我们定义了一个名为live的应用程序,它将允许直播,并关闭录制。 ### 启动Nginx 完成Nginx配置后,你需要启动Nginx。可以使用以下命令启动: ``` sudo service nginx start ``` ### 配置和拉 现在,你可以使用软件将视频送到服务器上。例如,可以使用OBS Studio或FFmpeg进行。 在OBS Studio中,你需要配置以下设置: - 类型:自定义服务器 - URL:rtmp://your-server-ip:1935/live - 关键字:随意命名 在FFmpeg中,你可以使用以下命令进行: ``` ffmpeg -re -i input.mp4 -c copy -f flv rtmp://your-server-ip:1935/live/stream-name ``` 这里我们将本地input.mp4文件到服务器上,名称为stream-name。 完成后,你可以使用以下命令进行拉: ``` ffplay rtmp://your-server-ip:1935/live/stream-name ``` 这里我们使用ffplay命令进行拉。你也可以使用其他支持RTMP协议的播放器进行拉。 到这里,你已经成功搭建了RTMP媒体服务。祝你好运!
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值