当前位置: 首页 > news >正文

使用ffmpeg和mediamtx模拟多通道rtsp相机

首先下载ffmpeg,在windows系统上直接下载可执行文件,并配置环境变量即可在命令行当中调用执行。
下载地址:

https://ffmpeg.org/

再在github上下载mediamtx搭建rtsp服务器,使用ffmpeg将码流推流到rtsp服务器。
下载地址:

https://github.com/13meimei/mediamtx

搭建模拟多通道rtsp相机:

1、修改配置文件mediamtx.yml

在这里插入图片描述
把不必要开启的监听服务关闭。防止再开启另一个mediamtx进程作为另一个rtsp服务器时端口冲突,被占用报错。

2、重新开启mediamtx进程,rtsp监听8554端口

在进程已经启动之后,修改配置文件,保存之后也会立即生效。
在这里插入图片描述
在mediamtx.exe所在文件夹的命令行当中执行mediamtx.exe时,命令行可以看到只剩下监听rtsp,并且可以看到当前占用的端口。

3、开启另一个进程,rtsp监听9554端口

在这里插入图片描述

4、ffmpeg推流

当前使用两张图片作为输入,推流命令:

rtsp:8554

ffmpeg -re -stream_loop -1 -i left_road.png -c:v libx264 -f rtsp rtsp://127.0.0.1:8554/live

rtsp:9554

ffmpeg -re -stream_loop -1 -i right_road.png -c:v libx264 -f rtsp rtsp://127.0.0.1:9554/live

5、ffplay播放

ffplay是ffmpeg当中的一个套件,安装完成ffmpeg之后也就有了ffplay。播放命令:

rtsp:8554

ffplay rtsp://127.0.0.1:8554/live

在这里插入图片描述

rtsp:9554

ffplay rtsp://127.0.0.1:9554/live

在这里插入图片描述

附:

1、命令行当中还可以,通过配置环境变量设置rtsp监听地址和端口:

$env:MTX_RTSPADDRESS = "127.0.0.1:8554"
.\mediamtx.exe

2、可以使用python将以上步骤自动化

  • 拷贝文件
  • 关闭除了rtsp的其他协议
  • 按照需要开启的rtsp通道数量,递增修改监听套接字
  • 启动服务,监听套接字
  • 打印rtsp url地址,用于ffmpeg推流
  • ffmpeg推流
  • 监听按键
  • 按下按键,退出rtsp服务器和ffmpeg推流进程
  • 删除文件,方便下次继续使用
http://www.lryc.cn/news/476242.html

相关文章:

  • windows系统类似于linux的nohup命令后台启动jar服务
  • 2024 Rust现代实用教程 流程控制与函数
  • stm32入门教程--USART外设 超详细!!!
  • 再探“构造函数”(2)友元and内部类
  • ffmpeg+vue2
  • 基于深度学习YOLOv10的电动二轮车目标检测、轨迹跟踪、测距算法
  • 鸿蒙ArkTS中的image组件
  • LeetCode 684.冗余连接:拓扑排序+哈希表(O(n)) 或 并查集(O(nlog n)-O(nα(n)))
  • 让空气净化器“很听话”-置入NRK3502离线语音控制芯片
  • 8个Visio最佳替代软件推荐,每一款都堪称绘图神器
  • 微服务day02
  • 使用 Logback 的最佳实践:`logback.xml` 与 `logback-spring.xml` 的区别与用法
  • NSET or MSET算法--原理解析
  • NC6 系统配置的消息渠道配置配置涉及相关的表,用户使用admin登录
  • PXC数据库性能测试对比
  • 使用AutoMySQLBackup 数据库自动备份
  • NVR批量管理软件/平台EasyNVR多个NVR同时管理支持对接阿里云、腾讯云、天翼云、亚马逊S3云存储
  • 13.React useTimeout
  • Android待机问题与内存泄露日志定位及bugreport获取分析
  • 访问控制技术原理与应用
  • 详解Rust标准库:Vec向量
  • 网络原理(初一,TCP/IP五层(或四层)模型面试问题)
  • Unity引擎材质球残留贴图引用的处理
  • Flutter鸿蒙next中封装一个列表组件
  • 层次与网络的视觉对话:树图与力引导布局的双剑合璧
  • python将数据集中所有文件名升序制作txt文件(医学影像)
  • 【The Art of Unit Testing 3_自学笔记06】3.4 + 3.5 单元测试核心技能之:函数式注入与模块化注入的解决方案简介
  • 【VSCode】配置
  • Linux 常用命令整理大全及命令使用心得
  • 计算器的实现