利用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流效果正常。

相关推荐
岁月小龙10 小时前
如何让ffmpeg运行时从当前目录加载库,而不是从/lib64
ffmpeg·origin·ffprobe·rpath
行者记2 天前
ffmpeg命令——从wireshark包中的rtp包中分离h264
测试工具·ffmpeg·wireshark
EasyCVR2 天前
国标GB28181视频平台EasyCVR私有化视频平台工地防盗视频监控系统方案
运维·科技·ffmpeg·音视频·1024程序员节·监控视频接入
hypoqqq2 天前
使用ffmpeg播放rtsp视频流
ffmpeg
cuijiecheng20182 天前
音视频入门基础:FLV专题(24)——FFmpeg源码中,获取FLV文件视频信息的实现
ffmpeg·音视频
QMCY_jason2 天前
黑豹X2 armbian 编译rkmpp ffmpeg 实现CPU视频转码
ffmpeg
苍天饶过谁?2 天前
SDL基本使用
ffmpeg
HZ355722 天前
ffmpeg视频解码
ffmpeg·音视频
runing_an_min2 天前
windows运行ffmpeg的脚本报错:av_ts2str、av_ts2timestr、av_err2str => E0029 C4576
c++·windows·ffmpeg·e0029
EelBarb2 天前
ffmpeg:视频字幕嵌入(GPU加速)
ffmpeg·音视频