利用ffmpeg实现rtmp和rtsp推流

环境说明

windows11 : ffmpeg + VLC

Linux Unbuntu20.04 : SRS + MediaMTX

可选:GStreamer

win11下载ffmpeg和ffplay

ffmpeg官网

添加环境变量:添加ffmpeg/bin所在的路径。

D:\ffmpeg\ffmpeg-master-latest-win64-lgpl-shared\bin

win11查看本机电脑的设备

bash 复制代码
ffmpeg -list_devices true -f dshow -i dummy

如图所示,红框内是摄像机名称

win11测试摄像头是否可用

bash 复制代码
ffplay -f dshow -i video="Integrated Camera"

请将video后字符串替换为你的摄像头名称。如果可用,会显示摄像头画面。

win11查看摄像头信息

bash 复制代码
ffmpeg -list_options true -f dshow -i video="Integrated Camera"

请将video后字符串替换为你的摄像头名称

Linux部署MediaMTX服务器

RTSP/RTMP服务器(不稳定,但可以接受RTSP流):MediaMTX操作指南

Linux部署SRS服务器

RTMP服务器(稳定):SRS服务器搭建

win11本地视频推流

bash 复制代码
ffmpeg.exe -re -i D:\Download\file_example_WMV_1280_4_9MB.wmv -f flv rtmp://192.168.31.206/live/123

测试可行:

Linux Unbuntu20.04+SRS当RTMP服务器。效果稳定。

摄像头推流

RTMP推流

bash 复制代码
ffmpeg -f dshow -rtbufsize 2147.48M -i video="Integrated Camera" -vcodec libx264 -preset:v ultrafast -tune:v zerolatency -f flv rtmp://192.168.31.206/live/123

测试可行:

Linux Unbuntu20.04+SRS

Linux Unbuntu20.04+MediaMTX

RTSP推流

bash 复制代码
ffmpeg -f dshow -rtbufsize 2147.48M -i video="Integrated Camera" -vcodec libx264 -preset:v ultrafast -tune:v zerolatency -rtsp_transport tcp -f rtsp rtsp://192.168.31.206:8554/live/123

测试可行:

Linux Unbuntu20.04+MediaMTX

VLC拉流

如图,手动打码人脸,VLC拉RTSP流效果正常。

相关推荐
都非拉得15 小时前
FFmpeg命令详解
ffmpeg
cuijiecheng201817 小时前
音视频入门基础:MPEG2-TS专题(26)——通过FFmpeg命令使用RTP发送TS流
ffmpeg·音视频
Yeauty1 天前
Rust 中的高效视频处理:利用硬件加速应对高分辨率视频
开发语言·rust·ffmpeg·音视频·音频·视频
winfredzhang1 天前
Python视频标签工具详解:基于wxPython和FFmpeg的实现
python·ffmpeg·音视频·视频标签
Yeauty3 天前
从0到1:Rust 如何用 FFmpeg 和 OpenGL 打造硬核视频特效
rust·ffmpeg·音视频
witton3 天前
MinGW下编译ffmpeg源码时生成compile_commands.json
ffmpeg·json·makefile·mingw·调试·compile_command·remake
用户96715113916723 天前
从0到1:Rust 如何用 FFmpeg 和 OpenGL 打造硬核视频特效
rust·ffmpeg
小小码农Come on3 天前
ffmpeg滤镜使用
ffmpeg
喵手4 天前
Java实现视频格式转换的完整指南:从FFmpeg到纯Java方案!
java·开发语言·ffmpeg