用 FFmpeg 实现 RTMP 推流直播

  • RTMP(Real-Time Messaging Protocol) 是直播行业中常用的传输协议。

  • 一般来说,直播服务商会给你:

    • ✅ 一个 RTMP 推流地址(你推视频上去)

    • ✅ 一个 HLS 或 FLV 拉流地址(观众观看用)

看你是自己构建的直播平台还是接入第三方直播服务(如微赞、抖音、B站等),反正拿到这个推流的RTMP地址就可以了。

我这里是用微赞

bash 复制代码
观看地址:https://ject.h5.weizan.cn/sl/0ea4bd2f0623ed57a810621e1109f1e3
推流地址:rtmp://push-hssh.vzan.com/v/1982222222221?t=911111
拉流地址:https://p2hssh.vzan.com/111111/22222/live.m3u8?zbid=3333&tpid=4444

基础命令结构

FFmpeg 推流使用 flv 格式通过 RTMP 协议推送,命令格式如下:

bash 复制代码
ffmpeg -re -i input.mp4 -c:v libx264 -preset veryfast -tune zerolatency -c:a aac -f flv "rtmp://your.rtmp.server/live/stream-key"

参数解释:

参数 含义
-re 按真实速度读取输入,适合直播
-i input.mp4 输入源(可为视频文件、摄像头等)
-c:v libx264 视频编码格式
-preset veryfast 编码速度设置,越快 CPU 压力越小
-tune zerolatency 直播优化,降低延迟
-c:a aac 音频编码(推荐使用 AAC)
-f flv 输出格式,RTMP 需要使用 FLV 容器
"rtmp://..." 推流目标地址

几种常见推流场景

1. 推送本地视频文件

bash 复制代码
ffmpeg -re -i index.mp4 -c:v libx264 -preset veryfast -tune zerolatency -c:a aac -f flv "rtmp://your.rtmp.server/live/stream-key"

推送本地的index.mp4

2. 循环推送视频(无限轮播)

bash 复制代码
ffmpeg -re -stream_loop -1 -i 6a7045fbf54a85c6c3979fdc23526907.mp4 -c:v libx264 -preset veryfast -tune zerolatency -c:a aac -f flv "rtmp://your.rtmp.server/live/stream-key"

视频播放完自动回到开头继续推

3. 推送摄像头画面

Windows 示例(先列出摄像头名称):
bash 复制代码
ffmpeg -list_devices true -f dshow -i dummy
然后推流:
bash 复制代码
ffmpeg -f dshow -i video="Integrated Camera" -c:v libx264 -preset veryfast -tune zerolatency -c:a aac -f flv "rtmp://your.rtmp.server/live/stream-key"

4. 推送桌面屏幕(Windows)

bash 复制代码
ffmpeg -f gdigrab -framerate 15 -i desktop -c:v libx264 -preset veryfast -tune zerolatency -f flv "rtmp://your.rtmp.server/live/stream-key"
相关推荐
'2068 小时前
**写了个自动整理下载视频的脚本:按片名归档、自动重命名、生成目录索引
开发语言·python·ffmpeg·音视频·cctv
殷忆枫9 小时前
嵌入式Linux下基于FFmpeg实现MP4解码为JPG图片(SSD202D交叉编译实战)
linux·运维·ffmpeg
≮傷£≯√1 天前
图片合并成视频 img2video ffmpeg
ffmpeg·音视频
HY小宝F2 天前
树莓派 FFmpeg 实战笔记(二):命令行、源码编译与硬件编码的真相
学习·职场和发展·ffmpeg
qq_316837752 天前
uniapp + Vite + ffmpeg-wasm 0.12.x 集成示例
ffmpeg·uni-app·wasm
qingmiaozhuan2 天前
电脑录屏黑屏?只有声音没画面?从原理到排查一篇搞定
ffmpeg·电脑·音视频开发·录屏技术·电脑录屏
大鹅办公2 天前
酷狗音乐怎么转换MP3格式?4种方法亲测对比+避坑指南(附FFmpeg命令行教程)
ffmpeg·音视频·音频格式
工具派3 天前
记一次用在线工具压缩视频的过程(两档实测)
ffmpeg·视频压缩·crf
bu_shuo4 天前
使用ffmpeg快速截取一段视频
ffmpeg·音视频
天天进步20155 天前
Pixelle-Video 源码解析 #4:快速启动流程:uv、Streamlit、ffmpeg 分别负责什么?
ffmpeg·uv