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

OpenCV技术应用(9)— 视频的暂停播放和继续播放

前言:Hello大家好,我是小哥谈。本节课就手把手教大家如何控制视频的暂停播放和继续播放,希望大家学习之后能够有所收获~!🌈       

     目录

🚀1.技术介绍 

🚀2.实现代码

🚀1.技术介绍 

在播放视频的过程中,能否通过按键指令,实现视频的暂停播放和继续播放呢?答案是肯定的。

为了实现视频的暂停播放和继续播放,需要用到按键指令continue关键字。例如,当按下空格键时,实现视频的暂停播放;当再次按下空格键时,实现视频的继续播放。实现视频的暂停播放和继续播放的关键代码如下所示:

if key == 32: # 如果按下空格键cv2.waitKey(0) # 无限等待用户按下键盘按键的时间,实现暂停效果continue # 再按一次空格键,继续播放

🚀2.实现代码

本案例先要从打开后的视频文件中读取帧;再设置窗口的名称、宽度和高度;接着把读取到的帧显示在窗口里;而后设置视频的播放速度为每50ms播放1帧,当按下空格键时,实现视频的暂停播放,当再次按下空格键时,实现视频的继续播放;最后通过按下Esc键,关闭视频文件,并且销毁显示的窗口。

具体的实现代码如下所示:

import cv2video = cv2.VideoCapture(r"C:\Users\Lenovo\Desktop\1.mp4") # 初始化视频文件
while (video.isOpened()): # 视频文件被打开后retval, image = video.read() # 读取视频里的帧# 设置“Video”窗口的宽为420,高为300cv2.namedWindow("Video", 0)cv2.resizeWindow("Video", 420, 300)if retval == True: # 读取到视频里的帧后cv2.imshow("Video", image) # 在窗口里显示读取到的帧else: # 没有读取到视频里的帧breakkey = cv2.waitKey(50) # 等待用户按下键盘按键的时间为50msif key == 32: # 如果按下空格键cv2.waitKey(0) # 无限等待用户按下键盘按键的时间,实现暂停效果continue # 再按一次空格键,继续播放if key == 27: # 如果按下Esc键break
video.release() # 关闭视频文件
cv2.destroyAllWindows() # 销毁显示视频文件的窗口

相关文章:

OpenCV技术应用(9)— 视频的暂停播放和继续播放

前言:Hello大家好,我是小哥谈。本节课就手把手教大家如何控制视频的暂停播放和继续播放,希望大家学习之后能够有所收获~!🌈 目录 🚀1.技术介绍 🚀2.实现代码 🚀1.技术介绍…...

C#时间戳转换

时间戳转化为时间 long oldtime1703235741; System.DateTime startTime TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1, 0, 0, 0, 0)); var newtimestartTime.AddMilliseconds(oldtime).ToString("yyyy-MM-dd HH:mm:ss.fff"); 时间转化为时…...

Postgresql源码(118)elog/ereport报错跳转功能分析

1 日志接口 elog.c完成PG中日志的生产、记录工作,对外常用接口如下: 1.1 最常用的ereport和elog ereport(ERROR,(errcode(ERRCODE_UNDEFINED_TABLE),errmsg("relation \"%s\" does not exist",relation->relname)));elog(ERRO…...

Python Selenium中的强大等待设置详解

更多资料获取 📚 个人网站:ipengtao.com 在Web自动化测试中,等待是至关重要的一环,而Selenium提供了丰富的等待设置来确保测试脚本的可靠性和稳定性。本文将深入研究Python Selenium中常用的必备等待设置,包括显式等待…...

ACL实现固定时间访问资源——项目

文章目录 一、前言二、项目拓扑三、项目需求四、配置思路五、配置步骤1 IP地址2 端口类型3 静态路由4 流策略 六、结语 免责声明 本文旨在提供信息和解决问题的建议,观点和建议可能不适用于个人情况,仅供参考!!! 文章中…...

前端学习——关于前端框架的思考

前端框架 我们知道在AngularJS,react,vue等前端框架出现之前,前端开发都是通过js直接操作dom树来实现的,而有了前端框架之后,前端开发基本上不需要在直接操作dom树,相当于在原生html的dom树之间和前端程序…...

大创项目推荐 深度学习+opencv+python实现车道线检测 - 自动驾驶

文章目录 0 前言1 课题背景2 实现效果3 卷积神经网络3.1卷积层3.2 池化层3.3 激活函数:3.4 全连接层3.5 使用tensorflow中keras模块实现卷积神经网络 4 YOLOV56 数据集处理7 模型训练8 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 &am…...

Linux(二)常用命令

文章目录 一、文件管理命令1.1 chmod1.2 chown1.3 cat1.4 cp1.5 find1.6 head1.7 tail1.8 less1.9 more1.10 mv1.11 rm1.12 touch1.13 vim1.14 >和>>1.15 scp1.16 ln1.17 怎么用命令查看日志 二、文档管理命令2.1 grep2.2 wc2.3 echo 三、磁盘管理命令3.1 cd3.2 df3.3…...

PHP通过mailer发送邮箱

<?php namespace sw\controler\action;require(APP_DIR./extend/PHPMailer/class.phpmailer.php); require(APP_DIR./extend/PHPMailer/class.smtp.php); class action_test_mailer extends Base {public function test(){$smtpemailto"1967899707qq.com";//接收…...

c# OpenCV 基本绘画(直线、椭圆、矩形、圆、多边形、文本)(四)

我们将在这里演示如何使用几何形状和文本注释图像。 Cv2.Line() 绘制直线 Cv2.Ellipse() 绘制椭圆Cv2.Rectangle() 绘制矩形Cv2.Circle() 绘制圆Cv2.FillPoly() 绘制多边形Cv2.PutText() 绘制文本 一、绘制直线 Cv2.Line(image, start_point, end_point, color, thickness) …...

js键盘事件keydown事件,防止重复触发,组合键的配合使用

js键盘事件keydown事件&#xff0c;防止重复触发 键盘事件类型主要有三种&#xff1a; keydown 、keypress(不建议使用&#xff0c;部分浏览器已放弃)和 keyup 。 添加普通键盘keydown事件 // 监听键盘按下事件document.addEventListener(keydown, function(event) {// 输出按…...

【Docker】升级docker或者docker到docker-ce完全保留镜像和容器,不影响原容器使用方法

升级docker或者docker到docker-ce完全保留镜像和容器&#xff0c;不影响原容器使用方法 一、介绍二、升级方法 三、遇到问题说明 以下是我的使用场景&#xff0c;docker升级到docker-ce&#xff0c;但对于docker-ce升级也通用&#xff01;亲测&#xff01; 一、介绍 CentOS自带…...

22 3GPP在SHF频段基于中继的5G高速列车场景中的标准化

文章目录 信道模型实验μ参考信号初始接入方法波形比较 RRH&#xff1a;remote radio head 远程无线头 HTS&#xff1a;high speed train 高速移动列车 信道模型 考虑搭配RRH和车载中继站之间的LOS路径以及各种环境&#xff08;开放或峡谷&#xff09;&#xff0c;在本次实验场…...

C语言之初识C语言

文章目录 前言一、什么是C语言二、第一个C语言程序三、数据类型四、变量&#xff0c;常量1、变量1.1 变量的命名1.2 变量的分类1.3 变量的使用1.4 变量的作用域和生命周期2、变量 五、字符串1. 概念2. 求解字符串的长度【strlen】3. 转义字符【含笔试题】 六、注释七、选择语句…...

Modbus-TCP数据帧

Modbus-TCP基于4种报文类型 MODBUS 请求是客户机在网络上发送用来启动事务处理的报文MODBUS 指示是服务端接收的请求报文MODBUS 响应是服务器发送的响应信息MODBUS 证实是在客户端接收的响应信息 Modbus-TCP报文: 报文头MBAP MBAP为报文头&#xff0c;长度为7字节&#xff0c…...

linux搭建gitlab

gitlab的介绍 区别于github&#xff0c;github是面向互联网基于git实现的代码托管平台&#xff0c;gitlab是基于Ruby语言实现的git管理平台软件&#xff0c;一般用于公司内部代码仓库。 gitlab组成 Nginx 静态Web服务器Gitlab-workhorse 轻量级的反向代理服务器Gitlab-shell 用…...

GEM5 Garent CPU cache消息传递路径:1. NI部分

简介 我们仔细分析下图怎么连的&#xff0c;以及消息传递路径。 图来自https://www.gem5.org/documentation/general_docs/ruby/ 代码的连接 fs.py->ruby.py-> gem5/configs/ruby/MESI_Two_Level.py 中的 create_system( options, full_system, system, dma_ports, b…...

Java设计模式之单例模式以及如何防止通过反射破坏单例模式

单例模式 单例模式使用场景 ​ 什么是单例模式&#xff1f;保障一个类只能有一个对象&#xff08;实例&#xff09;的代码开发模式就叫单例模式 ​ 什么时候使用&#xff1f; 工具类&#xff01;&#xff08;一种做法&#xff0c;所有的方法都是static&#xff0c;还有一种单…...

python flask+vue实现前后端图片上传

python flaskvue实现前后端图片上传 vue代码如下&#xff1a; <template><div><input type"file" change"handleFileChange"/><button click"uploadFile">上传</button><br><img :src"imageUrl&…...

centos7安装开源日志系统graylog5.1.2

安装包链接&#xff1a;链接&#xff1a;https://pan.baidu.com/s/1Zl5s7x1zMWpuKfaePy0gPg?pwd1eup 提取码&#xff1a;1eup 这里采用的shell脚本安装&#xff0c;脚本如下&#xff1a; 先使用命令产生2个参数代入到脚本中&#xff1a; 使用pwgen生成password_secret密码 …...

Coze(扣子)工作流使用攻略 操作指南(2026最新版)

Coze工作流&#xff08;Workflow&#xff09;是实现复杂AI任务的核心工具&#xff0c;它通过可视化拖拽节点的方式&#xff0c;将大模型、插件、代码、数据库等组件组合成自动化流程。适合处理多步骤、结构化任务&#xff08;如内容生成、数据分析、图像处理、客服流程等&#…...

AI驱动编辑预设:智能调色与音频处理实战指南

1. 项目概述&#xff1a;AI驱动的编辑预设库最近在折腾视频和图片后期的时候&#xff0c;发现一个挺有意思的项目&#xff0c;叫kaushalrao/ai-editor-presets。光看名字&#xff0c;你可能觉得这又是一个普通的滤镜包或者调色预设合集。但深入用下来&#xff0c;我发现它的核心…...

STM32WLE5CCU6 LoRaWAN节点实战:用AT指令连接TTN服务器并收发数据

STM32WLE5CCU6 LoRaWAN节点实战&#xff1a;从硬件配置到TTN云端交互全解析 在物联网设备爆炸式增长的今天&#xff0c;低功耗广域网络(LPWAN)技术正成为连接海量终端的关键基础设施。作为LPWAN的代表性技术之一&#xff0c;LoRaWAN以其超长传输距离和极低功耗特性&#xff0c;…...

仅限首批200名DevOps工程师解密:DeepSeek内部CI/CD可观测性看板DSL语法与12个预置PromQL故障模式模板

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;DeepSeek CI/CD流水线的可观测性演进与战略定位 可观测性已从传统监控的“事后响应”范式&#xff0c;跃迁为DeepSeek CI/CD流水线的核心设计原则与战略支点。它不再仅关注指标&#xff08;Metrics&…...

3分钟快速上手:用MoneyPrinterTurbo一键生成AI短视频的完整指南

3分钟快速上手&#xff1a;用MoneyPrinterTurbo一键生成AI短视频的完整指南 【免费下载链接】MoneyPrinterTurbo 利用AI大模型&#xff0c;一键生成高清短视频 Generate short videos with one click using AI LLM. 项目地址: https://gitcode.com/GitHub_Trending/mo/MoneyP…...

学妹问降完AI重复率反涨10个点怎么办?这款降AI工具同时降AI率重复率

学妹问降完AI重复率反涨10个点怎么办&#xff1f;这款降AI工具同时降AI率重复率 学妹凌晨发来的紧急求助 3 月 24 号凌晨 1:17 学妹发来消息&#xff1a;「学姐我刚送知网测——AI 率从 65% 降到 9% 过了&#xff01;但重复率从 18% 涨到 28% 不达标了&#xff01;这怎么办」…...

【Midjourney批量生成黄金工作流】:20年AI工程实战总结的7步标准化流水线(附可复用Prompt模板库)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Midjourney批量生成工作流的底层逻辑与范式演进 Midjourney 的批量生成并非简单重复调用 /imagine&#xff0c;其本质是围绕提示工程&#xff08;Prompt Engineering&#xff09;、状态管理&#xff08…...

Kubernetes Pod安全标准:构建零信任的容器运行环境

Kubernetes Pod安全标准&#xff1a;构建零信任的容器运行环境 一、Pod安全标准的核心概念与演进 1.1 容器安全的演进历程 容器技术的普及带来了部署效率的革命性提升&#xff0c;但同时也引入了新的安全挑战。从Docker早期的容器逃逸漏洞到Kubernetes集群的大规模安全事件&…...

Vue3-DateTime-Picker:现代化Vue 3日期时间选择器的完整指南

Vue3-DateTime-Picker&#xff1a;现代化Vue 3日期时间选择器的完整指南 【免费下载链接】vue3-date-time-picker Datepicker component for Vue 3 项目地址: https://gitcode.com/gh_mirrors/vu/vue3-date-time-picker 在当今的Web开发中&#xff0c;日期时间选择器是几…...

CC2530开发避坑指南:IAR for 8051 10.10.1新建工程到流水灯调试的完整流程

CC2530开发实战&#xff1a;IAR for 8051 10.10.1工程搭建与调试全解析 第一次接触CC2530和IAR开发环境时&#xff0c;我盯着满屏的编译错误和无法识别的仿真器&#xff0c;深刻理解了什么叫"从入门到放弃"。这种经历在嵌入式开发领域太常见了——特别是当你面对的是…...