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

相关推荐
chenzuoli1 小时前
ffmpeg图片视频编辑器工具的安装与使用
ffmpeg·编辑器·音视频
安步当歌13 小时前
【FFmpeg】av_write_trailer函数
c语言·c++·ffmpeg·视频编解码·video-codec
TMS320VC5257H15 小时前
ffmpeg在powershell和ubuntu终端下的不同格式
linux·ubuntu·ffmpeg
玖尾猫1 天前
04.ffmpeg打印音视频媒体信息
ffmpeg·音视频·媒体
暮雨疏桐1 天前
ffmpeg loglevel
ffmpeg
安步当歌2 天前
【FFmpeg】avcodec_send_packet函数
c语言·c++·ffmpeg·视频编解码·video-codec
melonbo2 天前
ffmpeg错误号码
ffmpeg
melonbo2 天前
ffmpeg滤镜-drawtext-命令行
ffmpeg
aqi002 天前
FFmpeg开发笔记(三十五)Windows环境给FFmpeg集成libsrt
ffmpeg·音视频·直播·流媒体