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。

相关推荐
SuperW2 小时前
FFMPEG推流器讲解
ffmpeg
路由侠内网穿透2 小时前
本地部署消息代理软件 RabbitMQ 并实现外部访问( Windows 版本 )
服务器·开发语言·windows·数据分析·rabbitmq·ruby
枷锁—sha3 小时前
【HW系列】—溯源与定位—Windows入侵排查
windows·安全·web安全
Tipriest_5 小时前
linux有效裁剪视频的方式(基于ffmpeg,不改变分辨率,帧率,视频质量,不需要三方软件)
linux·ffmpeg·音视频
一丝晨光5 小时前
Windows搭建Swift语言编译环境?如何构建ObjC语言编译环境?Swift如何引入ObjC框架?Interface Builder的历史?
linux·windows·macos·ios·objective-c·xcode·swift
aqi006 小时前
FFmpeg开发笔记(六十二)Windows给FFmpeg集成H.266编码器vvenc
ffmpeg·音视频·直播·流媒体
6v6-博客7 小时前
B站视频下载器 v1.0.4|免登录下载1080P视频
windows
姓刘的哦7 小时前
FFmpeg学习笔记
笔记·学习·ffmpeg
枫叶kx8 小时前
在IIS上无法使用PUT等请求
服务器·windows
猿小蔡-Cool10 小时前
Kotlin 中 Lambda 表达式的语法结构及简化推导
开发语言·windows·kotlin