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

相关推荐
道剑剑非道6 小时前
QT开发技术【ffmpeg + QAudioOutput】音乐播放器 完善
开发语言·qt·ffmpeg
毒果6 小时前
FFmpeg 低延迟同屏方案
ffmpeg·同屏
aqi0012 小时前
FFmpeg开发笔记(六十三)FFmpeg使用vvenc把视频转为H.266编码
ffmpeg·音视频·直播·流媒体
梧桐樹下2 天前
FFmpeg avformat_open_input函数分析
ffmpeg
道剑剑非道2 天前
QT开发技术【ffmpeg + QAudioOutput】音乐播放器
开发语言·qt·ffmpeg
IOsetting2 天前
Ubuntu24.04 交叉编译 aarch64 ffmpeg
ffmpeg
却道天凉_好个秋2 天前
ffmpeg(三):处理原始数据命令
ffmpeg
@残梦2 天前
129、QT搭建FFmpeg环境
开发语言·qt·ffmpeg
阿飞__3 天前
C++ 使用 ffmpeg 解码本地视频并获取每帧的YUV数据
c++·ffmpeg·音视频
好好学习O(∩_∩)O3 天前
QT6引入QMediaPlaylist类
前端·c++·ffmpeg·前端框架