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

相关推荐
hunandede5 分钟前
ffmpeg av_buffer_unref的逻辑实现; av_freep 和 av_freep函数的区别
ffmpeg
邪恶的贝利亚9 小时前
一些有关ffmpeg 使用(1)
ffmpeg
RenderNow11 小时前
深耕ffmpeg系列之AVFrame
ffmpeg
xiaoh_717 小时前
解决视频处理中的 HEVC 解码错误:Could not find ref with POC xxx【已解决】
python·ffmpeg·音视频
王江奎18 小时前
Android FFmpeg 交叉编译全指南:NDK编译 + CMake 集成
android·ffmpeg
qq_316837751 天前
使用ffmpeg 将图片合成为视频,填充模糊背景,并添加两段音乐
ffmpeg·音视频
林鸿群2 天前
Mediamtx与FFmpeg远程与本地推拉流使用
ffmpeg
unix2linux3 天前
YOLO v5 Series - FFmpeg & (HTML5 + FLV.js ) & ONNX YOLOv5s Integrating
yolo·ffmpeg·html5
Antonio9153 天前
【音视频】FFmpeg解封装
ffmpeg·音视频
Antonio9154 天前
【音视频】FFmpeg内存模型
ffmpeg·音视频