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。

相关推荐
桌面运维家4 小时前
Windows权限管理进阶:UAC配置与安全策略实战
windows
桌面运维家9 小时前
BGP路由优化实战:加速收敛,提升网络稳定性
网络·windows·php
m0_7381207210 小时前
我的创作纪念日0328
java·网络·windows·python·web安全·php
桌面运维家11 小时前
VHDX父盘定位:相对路径与Windows盘符变更难题
windows
Lyyaoo.11 小时前
【JAVA基础面经】JAVA的面向对象特性
java·开发语言·windows
FPGA的花路12 小时前
Windows10/11永久关闭自动更新
windows·自动更新·永久关闭
水饺编程12 小时前
第4章,[标签 Win32] :SysMets3 程序讲解01
c语言·c++·windows·visual studio
私人珍藏库13 小时前
[Windows] Cap 0.4.81
windows·工具·录屏·软件·多功能
想你依然心痛13 小时前
从零开始:Mac/Windows/Linux 三系统开发环境配置完全指南
linux·windows·macos
ths51214 小时前
doris 中 array_agg函数用法总结
windows