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

OpenEuler 使用ffmpeg x11grab捕获屏幕流,rtsp推流,并用vlc播放

环境准备

安装x11grab(用于捕获屏幕流)和libx264(用于编码)

# 基础开发环境&x11grab
sudo dnf install -y \autoconf \automake \bzip2 \bzip2-devel \cmake \freetype-devel \gcc \gcc-c++ \git \libtool \make \mercurial \pkgconfig \zlib-devel \libX11-devel \libXext-devel \libxcb-devel \xorg-x11-server-utils# 安装x264
sudo dnf install -y x264-devel
pkg-config --cflags --libs x264

安装好ffmpeg(这里要用编译安装,因为要添加上–enable-x11grab这个选项只有高版本支持低版本的话是其他几个选项反正你用./configure --help 查看可用选项把带x11的都选上就行了

下载mediamtx,这是推流服务器
下载地址
下载完解压就能用了

安装vlc,我这里是在windows上安装的

命令

先运行推流服务器
./你的mediamtx所在的目录/mediamtx

使用ffmpeg捕获屏幕流并推送到服务器
ffmpeg -f x11grab -i :0.0 -vcodec libx264 -preset ultrafast -acodec aac -f rtsp rtsp://127.0.0.1:8554/desktop

vlc播放
在这里插入图片描述

在这里插入图片描述

效果展示

在这里插入图片描述

相关文章:

OpenEuler 使用ffmpeg x11grab捕获屏幕流,rtsp推流,并用vlc播放

环境准备 安装x11grab(用于捕获屏幕流)和libx264(用于编码) # 基础开发环境&x11grab sudo dnf install -y \autoconf \automake \bzip2 \bzip2-devel \cmake \freetype-devel \gcc \gcc-c \git \libtool \make \mercurial \pkgconfig \zlib-devel \libX11-devel \libXext…...

呼叫中心报工号功能有没有价值?有没有更好的方案?

呼叫中心报工号功能有没有价值?有没有更好的方案? 作者:开源呼叫中心系统 FreeIPCC,Github地址:https://github.com/lihaiya/freeipcc 呼叫中心报工号功能确实具有一定的价值,主要体现在以下几个方面&…...

Unity 6 基础教程(Unity 界面)

Unity 6 基础教程(Unity 界面) Unity 6 基础教程(Unity 界面)Project 窗口Project 窗口工具栏Project 窗口 创建菜单Project 窗口 搜索栏Project 窗口 Search 工具Project 窗口 类型搜索Project 窗口 标签搜索Project 窗口 保存搜…...

Vue插槽的使用场景

插槽(slot)是一种用于组件模版复用的技术,它允许你在子组件中预留一些位置,然后在父组件中填充内容。这样就可以在不同的地方使用同一个组件,但是在不同的地方显示不同的内容。 插槽主要分为默认插槽、具名插槽、动态插槽、插槽后备、作用域插…...

Redis 下载安装(Windows11)

目录 Redis工具下载安装 Redis 工具 系统:Windows 11 下载 Windows版本安装包:通过百度网盘分享的文件:Redis-x64-3.0.504.msi 链接:https://pan.baidu.com/s/1qxq0AZJe5bXeCPzm1-RBCg?pwdc14j 提取码:c14j 安装…...

求平面连接线段组成的所有最小闭合区间

这个功能确实非常实用,我在过去开发地面分区编辑器时就曾应用过这一算法。最近,在新产品的开发中再次遇到了类似的需求。尽管之前已经实现过,但由于长时间未接触,对算法的具体细节有所遗忘,导致重新编写时耗费了不少时…...

编译安装并刷写高通智能机器人SDK

The Qualcomm Intelligent Robotics Product SDK (QIRP SDK) 高通智能机器SDK基于ROS2进行开发,此SDK适用于高通linux发行版本,QIRPSDK中提供以下内容: ROS 包中用于支持机器人应用程序开发的参考代码 用于评估机器人平台的端到端场景示例集…...

软考:案例题分析1101

22年第一题:架构设计与评估 分析文字,识别需求和质量属性?这里需要记忆质量属性有那些,区分需求和质量属性,能区分出质量属性之间的区别。 我的回答: 差距分析: 根据题目中功能的特点&#xff…...

如何检查雷池社区版 WAF 是否安装成功?

容器运行状态检查: 使用命令行检查:打开终端,连接到安装雷池的服务器。运行 docker ps 命令,查看是否有与雷池相关的容器正在运行。 如果能看到类似 safeline-mgt、safeline-tengine 等相关容器,并且状态为 Up&#x…...

一周内从0到1开发一款 AR眼镜 相机应用?

目录 1. 📂 前言 2. 💠 任务拆分 2.1 产品需求拆分 2.2 开发工作拆分 3. 🔱 开发实现 3.1 代码目录截图 3.2 app 模块 3.3 middleware 模块 3.4 portal 模块 4. ⚛️ 拍照与录像 4.1 前滑后滑统一处理 4.2 初始化 View 以及 Came…...

vue3中setup的作用是什么?

Vue 3.0中的setup函数是一个全新的选项,它是在组件创建时执行的一个函数,用于替代Vue2.x中的beforeCreate和created钩子函数。setup函数的作用是将组件的状态和行为进行分离,使得组件更加清晰和易于维护。 在本文中,我们将详细讲解…...

java.io.FileNotFoundException: Could not locate Hadoop executable: (详细解决方案)

1,当你在pycharm 上运行spark代码时候出现下面这个报错。 解决方案 我们要先去hadoop的bin目录下去看看里面是否有 winutils.exe 这个错误 就是缺少winutils.exe 所以报这个错误,把它放到你的hadoop的bin目录下问题就解决了...

事件捕获vs 事件冒泡,延申事件委托

事件捕获vs事件冒泡 拿点击事件举例子,点击dom树的某个目标节点: 事件捕获:从根节点到目标节点扩散事件冒泡:从目标节点到根节点扩散 扩散就是说,途中的节点,相应的点击事件都会被触发 但是,只…...

接口测试(十一)jmeter——断言

一、jmeter断言 添加【响应断言】 添加断言 运行后,在【察看结果树】中可得到,响应结果与断言不一致,就会红色标记...

使用buildx构建多架构平台镜像

1. 查看buildx插件信息 比较新的docker-ce版本默认已经集成了buildx插件 [rootdocker ~]# docker buildx version github.com/docker/buildx v0.11.2 9872040 [rootdocker ~]#2. 增加多平台镜像构建支持 通过tonistiigi/binfmt:latest初始化一个基于容器的构建环境&#xff…...

宠物领养救助管理软件有哪些功能 佳易王宠物领养救助管理系统使用操作教程

一、概述 佳易王宠物领养救助管理系统V16.0,集宠物信息登记、查询,宠物领养登记、查询, 宠物领养预约管理、货品进出库库存管理于一体的综合管理系统软件。 概述: 佳易王宠物领养救助管理系统V16.0,集宠物信息登记…...

Spring Boot中实现多数据源连接和切换的方案

Spring Boot中实现多数据源连接和切换的方案 在Spring Boot项目中,随着业务需求的增长,我们往往需要连接多个数据库,即实现多数据源连接和切换。这种需求可能源于数据库的读写分离、微服务架构下的服务拆分、数据分库分表等场景。本文将详细…...

科技资讯|谷歌Play应用商店有望支持 XR 头显,AR / VR设备有望得到发展

据 Android Authority 报道,谷歌似乎正在为其 Play 商店增加对 XR 头显的支持。该媒体在 Play 商店的代码中发现了相关的线索,包括一个代表头显的小图标以及对“XR 头显”的提及。 谷歌也可能改变了此前拒绝将 Play 商店引入 Meta Quest 头显的决定。今…...

关于read/write 网络IO、硬盘IO的区别

对于read/write API,在数据在不超过指定的长度的时候有多少读多少,没有数据则会一直等待。 因此,对于网络IO,由于我们无法知道网络对面什么时候准备好数据,什么时候发起数据。所以使用read/write的话,可能…...

vue2开发 对接后端(go语言)常抛异常情况以及处理方法汇总

背景 在Vue2开发中,与后端(Go语言)接口对接时出现异常通常是由于前后端之间的数据交互出现了问题。常见的异常包括数据格式不匹配、请求方法不匹配、请求头部信息错误、跨域请求问题等。 常见异常 如出现报错提示: json : can…...

告别阿里云!用ThingsCloud免费搭建个人智能家居控制中心(附ESP8266配置)

从零构建智能家居控制中心:ThingsCloud与ESP8266实战指南 在智能家居领域,许多技术爱好者常常面临一个两难选择:要么使用功能强大但配置复杂的商业平台,要么选择简单但功能有限的DIY方案。ThingsCloud的出现为这一问题提供了优雅的…...

从libdatachannel到AioRTC:构建轻量级WebRTC原型实践指南

1. 为什么选择libdatachannel和AioRTC 最近在研究浏览器音视频流推送技术时,我发现WebRTC虽然强大但入门门槛较高。经过多轮技术选型对比,最终锁定了两个轻量级开源库:C的libdatachannel和Python的AioRTC。这两个项目特别适合快速原型开发&am…...

SAP ABAP RFC函数外部调用Debug全攻略:从SE37设置到断点跟踪

SAP ABAP RFC函数外部调用Debug全攻略:从SE37设置到断点跟踪 在跨系统集成的复杂场景中,RFC函数调试往往让开发者头疼不已。想象一下这样的场景:你开发的RFC接口在生产环境突然报错,但本地测试一切正常;或者第三方系统…...

OpenClaw日志分析:Qwen3-32B每日自动汇总服务器异常事件

OpenClaw日志分析:Qwen3-32B每日自动汇总服务器异常事件 1. 为什么需要自动化日志分析 作为一名运维工程师,我每天早晨的第一项工作就是检查服务器日志。Nginx的错误日志、系统内核日志、应用服务的异常输出……这些文件分散在不同的目录,格…...

别再死磕分布式事务了!用MySQL+RabbitMQ手撸一个本地消息表,搞定订单库存一致性问题

轻量级数据一致性实战:基于MySQL与RabbitMQ的本地消息表设计 在电商系统开发中,订单创建与库存扣减的原子性操作一直是技术难点。传统单体架构下的数据库事务无法跨越服务边界,而引入分布式事务框架又往往带来额外的复杂性和性能损耗。本文将…...

深入排查k8s集群6443端口连接拒绝:从kubectl故障到系统级修复

1. 当kubectl突然罢工:6443端口连接拒绝的紧急处理 那天早上我像往常一样打开终端,准备用kubectl get pods查看集群状态,结果终端冷冰冰地抛出一行错误:"Unable to connect to the server: dial tcp 192.168.1.1:6443: conne…...

别再死记硬背了!用Python脚本自动解析蓝牙BR/EDR/BLE测试报告(附代码)

用Python解放双手:自动化解析蓝牙测试报告的实战指南 每天面对堆积如山的蓝牙测试报告,你是否已经厌倦了手动整理数据的繁琐?当测试工程师们还在为Excel公式抓耳挠腮时,Python早已准备好了一套自动化解决方案。本文将带你从零开始…...

技术赋能B端拓客:号码核验行业的破局与价值重塑,氪迹科技法人股东号码筛选系统,阶梯式价格

2026年,B端拓客正式迈入智能内卷时代,“精准获客、降本增效”成为企业突破业绩瓶颈的核心关键词,而号码核验作为拓客流程的前置过滤环节,直接决定了线索质量与人力效能,成为影响拓客投入回报比的关键变量。当前&#x…...

LibreTranslate模型部署优化指南:从技术痛点到落地实践

LibreTranslate模型部署优化指南:从技术痛点到落地实践 【免费下载链接】LibreTranslate Free and Open Source Machine Translation API. Self-hosted, offline capable and easy to setup. 项目地址: https://gitcode.com/GitHub_Trending/li/LibreTranslate …...

SlopeCraft:Minecraft地图艺术创作的高效解决方案

SlopeCraft:Minecraft地图艺术创作的高效解决方案 【免费下载链接】SlopeCraft Map Pixel Art Generator for Minecraft 项目地址: https://gitcode.com/gh_mirrors/sl/SlopeCraft 在Minecraft的方块世界中,将现实中的图像转化为立体地图艺术一直…...