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

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

https://ffmpeg.org/

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

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

搭建模拟多通道rtsp相机:

注意:此篇文章是配置多个rtsp服务器,每个服务具有一个端口。如果不需要多个端口,直接修改ffmpeg推流rtsp url当中端口后的地址段即可:

ffmpeg -re -stream_loop -1 -i .\video.mp4 -c copy -f rtsp rtsp://127.0.0.1:8554/stream1
ffmpeg -re -stream_loop -1 -i .\video.mp4 -c copy -f rtsp rtsp://127.0.0.1:8554/stream2

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推流进程
  • 删除文件,方便下次继续使用

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/911158.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

大数据分库分表方案

分库分表介绍 分库分表应用场景 分库分表介绍 大数据分库分表是一种数据库架构技术,旨在应对大数据量场景下的数据库性能瓶颈。以下是对大数据分库分表的详细解释: 一、定义与背景 定义: 分库:将一个大型数据库按照一定的规则…

关于word 页眉页脚的一些小问题

去掉页眉底纹: 对文档的段落边框和底纹进行设置,也是页眉横线怎么删除的一种解决方式,具体操作如下: 选中页眉中的横线文本; 点击【开始】选项卡,在【段落】组中点击【边框】按钮的下拉箭头; …

爬虫-------字体反爬

目录 一、了解什么是字体加密 二. 定位字体位置 三. python处理字体 1. 工具库 2. 字体读取 3. 处理字体 案例1:起点 案例2:字符偏移: 5请求数据 - 发现偏移量 5.4 多套字体替换 套用模板 版本1 版本2 四.项目实战 1. 采集目标 2. 逆向结果 一、了解什么是…

Fortran安装(vscode+gcc+Python)

编写时间: 2024年11月7日 环境配置: gcc VScode Python 条件: Windows 10 x64 VMware虚拟机 前言 这是我出的第2个关于Fortran安装的教程,由于上一个方法(你可以在本专栏里找到)对储存空间的要求比较…

外包干了2年,快要废了。。。

先说一下自己的情况,普通本科毕业,在外包干了2年多的功能测试,这几年因为大环境不好,我整个人心惊胆战的,怕自己卷铺盖走人了,我感觉自己不能够在这样蹉跎下去了,长时间呆在一个舒适的环境真的会…

丹摩征文活动|详解 DAMODEL(丹摩智算)平台:为 AI 开发者量身打造的智算云服务

本文 什么是 DAMODEL(丹摩智算)?DAMODEL 的平台特性快速上手 DAMODEL 平台GPU 实例概览创建 GPU 云实例 储存选项技术支持与社区服务结语 在人工智能领域的飞速发展中,计算资源与平台的选择变得尤为重要。为了帮助 AI 开发者解决高…

canal1.1.7使用canal-adapter进行mysql同步数据

重要的事情说前面,canal1.1.8需要jdk11以上,大家自行选择,我这由于项目原因只能使用1.1.7兼容版的 文章参考地址: canal 使用详解_canal使用-CSDN博客 使用canal.deployer-1.1.7和canal.adapter-1.1.7实现mysql数据同步_mysql更…

Docker安装XXL-JOB分布式调度任务

一、持久化 1、下载 xxl-job 源码,找到持久化脚本 2、创建 xxl-job 数据库,将上述文件中的脚本在本库执行即可 create database xxl_job charset utf8mb4 collate utf8mb4_general_ci; 二、安装 1、下载 xxl-job 镜像 docker pull xuxueli/xxl-job-admin:2.4.1 2、创建挂…

线性表之链表详解

欢迎来到我的:世界 希望作者的文章对你有所帮助,有不足的地方还请指正,大家一起学习交流 ! 目录 前言线性表的概述链表的概述 内容链表的结构链表节点的定义 链表的基本功能单向链表的初始化链表的插入操作头插操作尾插操作 链表的删除操作头…

高校数字化校园中数据交换和共享平台的设计与实现(源码+定制+开发)校园数据整合平台、高校信息交换系统、校园数据整合平台、数字校园信息交换平台、校园数据集成管理

博主介绍: ✌我是阿龙,一名专注于Java技术领域的程序员,全网拥有10W粉丝。作为CSDN特邀作者、博客专家、新星计划导师,我在计算机毕业设计开发方面积累了丰富的经验。同时,我也是掘金、华为云、阿里云、InfoQ等平台…

【Linux驱动开发】timer库下的jiffies时间戳和延时驱动编写

【Linux驱动开发】timer库下的jiffies时间戳和延时驱动编写 gitee地址: https://gitee.com/Mike_Zhou_Admin/Linux_Driver_Timestamp_Driver/更新以gitee为准 文章目录 timer库时间戳函数延时函数驱动代码应用测试附录:嵌入式Linux驱动开发基本步骤开发…

python安装了numpy却用不了且报错的解决方案和numpy的简单应用于图像处理

1.报错情况如下:Error importing numpy: 解决方法:降低python和numpy的版本,我一开始下载安装的都是最新版的python和numpy,后来降低了版本后就不报错且可正常使用了,这里给出我使用的版本作为参考(记得卸…

Java链表及源码解析

文章目录 创建一个ILindkedList接口创建方法(模拟实现链表方法)创建MyLinkedList来实现接口的方法创建链表节点addFirst方法(新增头部属性)addLast方法(新增到末尾一个属性)remove方法(删除指定属性)addInd…

潮玩宇宙方块兽系统开发:可定制UI与多种游戏内嵌助力个性化体验

潮玩宇宙方块兽系统开发正在推动潮玩与游戏的融合,通过个性化的UI设计和多游戏内嵌模式,为用户带来了独一无二的体验。本文将从可定制UI、多游戏内嵌功能以及系统实现等方面入手,探讨如何构建一个极具吸引力的潮玩宇宙方块兽系统。 一、可定制…

C#属性 Property

属性Property不是变量。 它们是由名为访问器方法来实现的一种方法。 实例属性表示的是实例的某个数据,通过这个数据反映实例当前的状态 静态属性表示的是类型的某个数据,通过这个数据反映类型当前的状态 意义: 防止恶意赋值(通过属性间接访问…

第八篇: 通过使用Google BigQuery进行数据批量和自动化处理

使用Python进行Google BigQuery数据批量和自动化处理 在大数据分析的日常工作中,定期更新、查询和处理数据是一项必不可少的任务。Google BigQuery结合Python脚本,可大幅简化这一过程。本文将介绍如何通过Python自动查询和更新BigQuery中的降水量数据&a…

AI - 人工智能;Ollama大模型工具;Java之SpringAI(三)

AI - 人工智能;Java之SpringAI(一) AI - 人工智能;Java之SpringAI(二) 一、Ollama 官网:https://ollama.com/ Ollama是一个大模型部署运行工具,在该工具里面可以部署运行各种大模型…

MySQL_数据类型建表

复习: 我们昨天学习的知识都忘了嘛?如果忘了也不要担心,我来带大家来复习一遍吧!!! 1.查看所有数据库 show databases;2.创建属于自己的数据库 create database 数据库名; 检查自己创建的数据库是…

零基础入门进程间通信:task 1(匿名管道与vscode使用)

目录 引言 VSCODE使用 进程间通信正题 基础背景 进程间通信分类 匿名管道 理解匿名管道 代码实现 匿名管道的特性 管道的四种情况 应用场景 引言 在当今的计算机技术领域,操作系统作为计算机系统的核心组件,承担着资源管理、任务调度和进程管…

Vue 3 的 全局状态管理

1.思路梳理 工厂仓拣货信息:Factory Picking Info (FPI)工厂仓调度信息:Factory Scheduling Info (FSI)DC 收货信息:DC Receiving Info (DCRI)上架信息:Shelving Info (SI)盘点信息:Inventory Count Info (ICI)移位信…