Windows上用FFmpeg推流及拉流的流程概览

1. 视频采集与推流(Windows + FFmpeg)

  • 采集设备:Windows上的摄像头,比如"Integrated Camera"。

  • 采集方式 :FFmpeg通过 dshow 设备接口读取摄像头。

  • 推流协议:你可以选择推到 RTMP 或 RTSP 服务器。

  • 推流命令示例

    • 推RTMP流:

      ffmpeg -rtbufsize 100M -f dshow -video_size 1280x720 -framerate 30 -i video="Integrated Camera" -c:v libx264 -f flv rtmp://localhost/live/stream

    • 推RTSP流(前提服务器支持接收RTSP推流):

      ffmpeg -rtbufsize 100M -f dshow -video_size 1280x720 -framerate 30 -i video="Integrated Camera" -c:v libx264 -f rtsp rtsp://localhost:8554/live/stream


2. 服务器转发(MediaMTX 或其他)

  • 服务监听端口和协议

    • RTMP监听默认1935端口

    • RTSP监听默认8554端口

  • 服务器角色

    • 接收推送的流(RTMP或RTSP)

    • 将流转发给客户端(可支持RTMP、RTSP、HLS、WebRTC等协议)

  • 关键点

    • 服务器需要配置支持你推的协议和对应路径。

    • 如果推的是RTMP流,但客户端要用RTSP拉流,服务器必须支持RTMP->RTSP转发。

    • 否则客户端必须用相同协议拉流。


3. 客户端拉流

  • 协议必须对应推流协议或服务器转协议后的协议

  • 例子:

    • 你推的是RTMP流,客户端用:

      ffplay rtmp://localhost/live/stream

    • 你推的是RTSP流,客户端用:

      ffplay rtsp://localhost:8554/live/stream

    • 如果用OpenCV读取流,也要用对应的协议URL。

相关推荐
zdd567896 小时前
关于Windows 11 家庭中文版 25H2中ensp无法启动路由器,报40错的解决方法
windows
胡闹549 小时前
Linux查询防火墙放过的端口并额外增加需要通过的端口命令
linux·运维·windows
北极糊的狐9 小时前
若依系统报错net::ERR_CONNECTION_TIMED_OUT的原因
java·windows·sql·mybatis
简鹿视频12 小时前
视频转mp4格式具体作步骤
ffmpeg·php·音视频·实时音视频
45288655上山打老虎12 小时前
List容器
数据结构·windows·list
Baikal..13 小时前
CVE-2024-38077漏洞 2012R2系统更新失败
windows
yunmoon0113 小时前
一款专业的 Windows 恶意程序分析与清理工具
windows
白仑色13 小时前
java中的anyMatch和allMatch方法
java·linux·windows·anymatch·allmatch
9527(●—●)13 小时前
windows系统python开发pip命令使用(菜鸟学习)
开发语言·windows·python·学习·pip
yyywxk13 小时前
Windows 下 VMamba 安装教程(无需更改base环境中的cuda版本且可加速)
windows·vmamba