使用ffmpeg本地发布rtmp/rtsp直播流

1

FFmpeg的选择与下载

选择合适的版本

首先,访问FFmpeg官方下载页面(https://ffmpeg.org/download.html),在这里可以找到最新的稳定版或 nightly 构建版本。对于大多数常规用途,推荐下载预编译的Windows静态版本,它不需要额外的库支持即可运行。

下载ZIP文件

在官方下载页面中找到适用于Windows系统的版本链接,并直接下载压缩包,如果追求更高的效率和最新特性,也可以下载预编译的FFmpeg完整二进制包。

Releases:https://github.com/BtbN/FFmpeg-Builds/releases

复制bin文件夹的位置D:\Software\ffmpeg-master-latest-win64-gpl-shared\bin

右键点击"此电脑"或"计算机",选择"属性" -> "高级系统设置" -> "环境变量"。

在"系统变量"区域中找到"Path"变量,点击"编辑"

2 下载 nginx 以及 rtmp 插件

windos 可以通过 https://github.com/illuspas/nginx-rtmp-win32下载

3 nginx.conf 修改

java 复制代码
rtmp {
    server {
        listen 1935; # RTMP监听端口,默认为1935
        chunk_size 4096;

        application live {
            live on;
            record off;
            # 示例推流地址:rtmp://localhost:1935/live/mystream
        }
    }
}

4 视频转直播流

打开终端:

taskkill /f /im nginx.exe 关闭nginx

start nginx 开启nginx

netstat -ano | findstr :1935 1935没有被占用

ffmpeg -re -i output.mp4 -c copy -f flv rtmp://localhost:1935/live/mystream (mystream是自定义名称)

  • -re 参数表示以实际时间速率读取输入文件。
  • -i output.mp4 指定要推送的视频文件。
  • -c copy 表示复制流而无需重新编码,提高效率。
  • -f flv 指定输出格式为FLV,适应RTMP协议。
  • 推送地址 rtmp://localhost:1935/live/mystream 应与Nginx配置中的应用及流名称匹配。

ffmpeg -re -stream_loop -1 -i wfj.mp4 -c copy -f flv rtmp://localhost:1935/live/mywfj

ffmpeg -re -stream_loop -1 -i wfj.mp4 -c:v libx264 -c:a aac -f flv rtmp://localhost:1935/live/mywfj

这是持续循环 的命令

5 如果报错

两个原因

1 电脑防火墙拦截 需要打开所有防火墙

2 成功后突然断开 是电脑太卡或者网络不好

6 验证

下载VLC软件

媒体-媒体-打开网络串流-输入 rtmp://localhost:1935/live/mywfj

localhost 如果在局域网中访问 可以替换为自身的

视频转 rtsp:

安装rtsp-simple-server

安装rtsp服务器,可以去这个链接

rtsp-simple-server

ffmpeg -re -stream_loop -1 -i wfj.mp4 -c:v libx264 -c:a aac -f rtsp rtsp://localhost:8554/stream

相关推荐
blanks20202 天前
ffmpeg 学习笔记 通过命令行采集音频
ffmpeg
Mahut6 天前
我用 Electron + FFmpeg 做了一个本地视频处理工作站 ClipForge
前端·ffmpeg·electron
源之缘-OFD先行者15 天前
破界渲染:WinForm下的FFmpeg+Vortice极速推流引擎
ffmpeg·winform·推流·h264
源来猿往15 天前
记ffmpeg-8.1.1 之Android库编译(window)
android·ffmpeg
Deitymoon15 天前
RV1126+FFMPEG多路码流监控项目
ffmpeg·音视频
芝麻别开门15 天前
GStreamer DASH Demux 知识文档
ffmpeg·dash
ltlovezh16 天前
ROI 编码学习指南:Android 与 FFmpeg 的真实实现边界
android·ffmpeg·音视频开发
m0_7471245317 天前
多媒体框架 FFmpeg 和 GStreamer
ffmpeg·gstreamer
小鹿研究点东西17 天前
AI直播系统怎么搭?
人工智能·ffmpeg·自动化·音视频·语音识别
Nightwish517 天前
Oracle 数据库巡检检查清单
数据库·oracle·ffmpeg