【FFMPEG+Mediamtx】 本地RTSP测试推流记录

news2024/11/17 16:31:01

利用本地FFMPEG+Mediamtx 搭建本地RTSP测试推流电脑摄像头

起因

本来要用qt的qml的Video做摄像头测试。

😔但是,不在现场,本地测试,又要测试rtsp流,又因为搜了一圈找不到一个比较好的在线测试rtsp推流网址😫,只能自己本地推流了。

几年前玩yolo做多源信息融合搞过一次,没记录,最近也不忙,就记录一下吧,估计很多找不到rtsp测试流的人也很需要这样一个教程。

废话不多说,开始吧!

注意:我的场景是推流笔记本自带的摄像头

工具提前说

在这里插入图片描述

媒体开源处理神器F神(还有一个是O神,哈哈opencv)

  • FFMPEG: https://github.com/BtbN/FFmpeg-Builds/releases

推流服务器

  • Mediamtx: https://github.com/bluenviron/mediamtx/releases/

上述两个下载解压就好了,ffmepg你可以在工作目录使用,也可以按需要把他放在系统环境变量的path里面,好处就是导出都可以使用。

在这里插入图片描述

开始测试

因为我要推送的是本地摄像头,那么就需要查询一下我的设备有哪些了:

  1. 查询当前设备
ffmpeg -list_devices true -f dshow -i dummy

在这里插入图片描述

可以看到我的自带摄像头是 Integrated Camera

  1. 播放测试
    video参数换成上边你查询到的摄像头标签
ffplay -f dshow video="Integrated Camera"

这样就可以了

在这里插入图片描述

  1. 开始推流测试

(1)打开mediamtx
在这里插入图片描述(2) ffmjeg推流

ffmpeg -f dshow -i video="Integrated Camera" -vf scale=1280:720 -framerate 10 -c:v libx264 -c:a aac -f rtsp -rtsp_transport tcp rtsp://127.0.0.1:8554/test

命令说明:

  • -f dshow -framerate 10 -i video=“Integrated Camera” 指定使用dshow输入设备来捕获本地摄像头,名称为"Integrated Camera",并设置输出帧率为10。
  • -c:v libx264 指定视频编码器为libx264,您也可以选择其他视频编码器。
  • -c:a aac 指定音频编码器为AAC,您也可以选择其他音频编码器。
  • -rtsp_transport tcp 应用层传输协议为tcp
  • -f rtsp 指定输出格式为RTSP。 rtsp://127.0.0.1:8554/test是流地址,这个可以自定义,一般要用二级地址

在这里插入图片描述

  1. 拉流测试

这时候一共打开两个控制台
在这里插入图片描述

我这里用vlc 播放器进行拉流测试。

打开vlc–媒体–打开网络串流–输入rtsp://127.0.0.1:8554/test–播放
在这里插入图片描述

附加

如果你是用云服务器来跑mediamtx,那么拉流还可以用下面这个测试网站测试:

RTSP在线测试

在这里插入图片描述

结语

还可以支持其他协议层,还有本地视频,还有很多很多,以后有机会慢慢更新,希望对您有帮助。

参考博客:https://blog.csdn.net/q771410116/article/details/137009009

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

JAVA每日作业day6.24

ok了家人们今天学习了一些关键字,用法和注意事项,静态代码块这些知识,闲话少叙我们一起看看吧。 一,final关键字 1.1 final关键字的概述 final: 不可改变。可以用于修饰类、方法和变量。 类:被修饰的类&a…

Hex文件与BIn文件的关系

单片机中Hex文件与BIn文件的关系 前言 时间:2024/6/24 官方网站:.hex文件解析:Hexadecimal (Intel-Format) File (.hex) Definition 参考博客:实现STM32烧写程序-(3) Hex文件结构-CSDN博客 文件:《Hexfrmt.pdf》描述了…

地信大四,实习重要吗?怎么找实习岗位?

“地信怎么找实习啊?” “实习三个月以上?暑假只有两个月啊” “什么岗位实习比较有用?” “助理类岗位是做什么?” …… 同学们好啊,不知不觉24年已经是过完一小半了,24届毕业的同学们也差不多就要迎来…

JSON.parse(JSON.stringify())导致的响应式属性丢失

console.log("formdata赋值前", this.formdata);console.log("row",row);console.log("row序列化后", JSON.parse(JSON.stringify(row)));this.formdata JSON.parse(JSON.stringify(row)); console.log("formdata赋值后", this.formd…

0803功放3

1.甲乙类互补堆成功放, 理想12v t提供静态偏置,消去交越失真 2.12V Po(12)2/2RL 3.电压并联负反馈 并联减小输入电阻 电压减小输出电阻 4.-Rf/Ri 这个问题是工艺问题引起的,最早用PNP管用的锗管,后面硅工艺成熟后用的就是硅管&…

springboot 网上商城系统-计算机毕业设计源码08789

摘 要 随着互联网趋势的到来,各行各业都在考虑利用互联网将自己推广出去,最好方式就是建立自己的互联网系统,并对其进行维护和管理。在现实运用中,应用软件的工作规则和开发步骤,采用Java技术建设网上商城系统。 本设…

数据库攻防之MongoDB

MongoDB是一个安全性相对较高的非关系型数据库,它的安全问题主要出现在使用、配置过程当中。目前随着MongoDB的流行,它也成为了红队攻防领域不可忽视的数据库。 0x01 MongoDB简介 MongoDB 是一个由C编写、基于分布式文件存储的开源数据库系统&#xff…

java运维交接项目逆向工程

​ 背景 有承接过Java项目运维的团队估计都处理过的一件事情,就是同步生产代码跟本地代码,条件再差些甚至要直接基于生产部署包逆向本地源码工程。而哪怕是原运维团队交接了源码,往往也会历史久远的原因,给了一份不太可靠的源码…

Navicat连接服务器MySQL

Navicat连接服务器MySQL 1. Navicat连接服务器MySQL2. 如何查看MySQL用户名和密码3. 修改MySQL登录密码4. 安装MySQL(Centos7)遇到错误和问题1. error 1045 (28000): access denied for user rootlocalhost (using password:yes) 1. Navicat连接服务器MySQL 选择数据库 直接使用…

记录react实现选择框一二级联动出现的问题

需求:用户在选择第一个选择框的选项后,第二个选择框的选项会根据第一个选择框的选择动态更新。如图所示 出现的问题 一级分类选择之后二级分类没有数据,第二次重新选择一级分类的时候,二级分类就会有值。 第一次点击截图&#x…

提升办公效率的利器—OnlyOffice文档8.1深度体验

目录 1. 前言 2. 安装 3. 基本使用 3.1 文档编辑 3.2 表格处理 3.3 演示文稿 4. 个人评价 5. 总结 1. 前言 在当今信息化时代,办公软件已经成为我们日常工作中不可或缺的工具。无论是撰写文档、处理数据,还是制作演示文稿,办公软件的…

数电大作业-四输入表决器

(PCB和multisim仿真画的有很大问题,没有VCC输入和GND,没学过直接裸画的,之后会好好看视频学习) 应用背景: 四个评委,三个及以上评委同时按下通过按钮时,选手才能通过。否则不通过。…

【Flink metric(3)】chunjun是如何实现脏数据管理的

文章目录 一. 基础逻辑二. DirtyManager1. 初始化2. 收集脏数据并check3. 关闭资源 三. DirtyDataCollector1. 初始化2. 收集脏数据并check3. run:消费脏数据4. 释放资源 四. LogDirtyDataCollector 一. 基础逻辑 脏数据管理模块的基本逻辑是: 当数据消…

适用于轨道交通专用的板卡式网管型工业以太网交换机

是网管型 CompactPCI板卡式冗余环网交换机。前面板带有6个 10/100/1000Base-T(X)M12接口。后面的CPCI接口有 8个10/100/1000Base-T (X) 以太网接口。 是特别为轨道交通行业EN50155标准要求而设计的坚固型交换机。它同时具有以下特性: ● 支持2线以太网距离扩展端口&…

Crypto++ 入门

一、简介 Crypto(也称为CryptoPP、libcrypto或cryptlib)是一个免费的开源C库,提供了多种加密方案。它由Wei Dai开发和维护,广泛应用于需要强大加密安全的各种应用程序中。该库提供了广泛的加密算法和协议的实现,包括&…

【通用技巧】自动获取日志存放路径,无需手动修改配置文件

我们在部署环境的时候,常常会手动修改一些配置文件的存放地址,比如日志的路径、截图的路径,这是因为我们的环境不一样,部署应用的位置也不一样导致的。如果位置写死了,那么就会造成通用性很差,所以我们经常…

明明设置允许跨域,为什么还会出现跨域请求的问题

一、问题 在微服务项目中,明明已经设置允许跨域访问: 为什么还会出现跨域请求问题? 二、为什么 仔细查看错误提示信息:When allowCredentials is true, allowedOrigins cannot contain the special value "*" since t…

NestJs连接数据库

文章目录 一、下载 MySql 数据库二、下载VsCode插件查询、插入数据 一、下载 MySql 数据库 NestJS连接数据库我选择的是MySql,首先先安装nestjs/typeorm 、typeorm、 mysql2 执行命令: pnpm install nestjs/typeorm typeorm mysql2 -S 连接数据库需要你…

C语言小例程28/100

题目&#xff1a;利用递归方法求5!。 程序分析&#xff1a;递归公式&#xff1a;fnfn_1*4! #include <stdio.h>int main() {int i;int fact(int);for(i0;i<6;i){printf("%d!%d\n",i,fact(i));} } int fact(int j) {int sum;if(j0){sum1;} else {sumj*fac…

震惊!这样制作宣传册,效果竟然如此惊人!

在当今社会&#xff0c;宣传册作为一种重要的宣传手段&#xff0c;其制作质量直接影响到宣传效果。而令人震惊的是&#xff0c;现在有些制作宣传册的方法&#xff0c;其效果竟然如此惊人&#xff01;今天&#xff0c;教大家如何制作宣传册吧&#xff01; 首先&#xff0c;我们要…