python-简单的屏幕录像功能

# coding: utf-8  
from PIL import ImageGrab  
import numpy as np  
import cv2  
import datetime  
  
fps = 30  
start = 3  # 延时录制  
end = 15  # 自动结束时间  
  
curScreen = ImageGrab.grab()  # 获取屏幕对象  
height, width = curScreen.size  
filename = datetime.datetime.now().strftime("%Y-%m-%d_%H-%M-%S") + ".avi"  
video = cv2.VideoWriter(filename, cv2.VideoWriter_fourcc(*'XVID'), fps, (height, width))  
  
imageNum = 0  
while True:  
    imageNum += 1  
    captureImage = ImageGrab.grab()  # 抓取屏幕  
    frame = cv2.cvtColor(np.array(captureImage), cv2.COLOR_RGB2BGR)  
  
    # 显示无图像的窗口  
    cv2.imshow('encoding,press"q" exit', np.zeros((1, 255), np.uint8))  
  
    # 控制窗口显示位置,方便通过按键方式退出  
    cv2.moveWindow('encoding,press"q" exit', height - 100, width - 100)  
    if imageNum > fps * start:  
        video.write(frame)  
    # 退出条件  
    if cv2.waitKey(50) == ord('q') or imageNum > fps * end:  
        break  
video.release()  
cv2.destroyAllWindows()

运行需要安装依赖:

pip install pillow
pip install pyautogui
pip install opencv-python

很简单的一个功能。多平台都可使用。

本文由作者 王大神 原创发布于 大神网的AI博客。

转载请注明作者:王大神

原文出处:python-简单的屏幕录像功能

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 2023年2月7日
下一篇 2023年2月7日

相关推荐

  • 忘记UOS密码的两种解决方案。

    GRUB2菜单修改引导命令: 首先,要解决密码问题你需要知道如何进入GRUB2编辑菜单界面。 进入GRUB2编辑模式很简单,看到系统引导的时候按“e”就可以了。 修改引导命令: 修改引导菜单进入单用户模式,single mode。 …

    2023年1月6日
    00
  • 人人都是开发者?AI辅助编程工具对比!

    随着科技的不断进步,人工智能在各个领域都展现出了强大的潜力,编程领域也不例外。现在,开发者们可以利用各种AI辅助编程工具来提高他们的生产力,减轻编码的负担。但在众多的AI编程工具中,究竟哪一款是最适合你…

    2023年3月14日
    00
  • DAO:Web3技术下的新型组织形式,开启组织创新与变革

    在过去的几十年里,中心化组织结构一直主导着世界各行各业。大公司、政府机构、银行等中心化实体一直在制定规则、做出决策、管理资源和协调协作。然而,随着技术的不断发展和互联网的普及,人们开始思考:是否有一…

    2023年6月6日
    00
  • 为什么其他厂商不跟进小米的AI电话接听功能?

    每当我们收到骚扰电话或不想错过重要电话时,我们都希望有一个智能的解决方案。小米推出的AI电话接听功能引起了广泛的关注,但为什么其他厂商没有跟进呢?本文将深入探讨这个问题,并分析AI电话接听功能在通信领域…

    2023年12月30日
    00
  • Electron与浏览器UI:一场关于技术选择的辩论

    随着技术的不断发展,开发者们在选择工具和框架时常常会面临一些艰难的抉择。在这篇文章中,我们将探讨一个备受争议的话题:为什么一些开发者选择使用Electron构建桌面应用,而不是直接在用户的浏览器中呈现UI界面…

    2023年11月23日
    00
  • Git版本控制系统:安装、配置与基本命令教程

    在现代软件开发中,版本控制是一个至关重要的概念。它允许开发者追踪代码的变化,协作开发,以及安全地管理项目。如果你曾经因为不懂如何使用版本控制而感到困惑,那么不用担心,本教程将为你提供关于Git版本控制系…

    2023年11月19日
    00
  • 如何保持手机常年运行

    在现代社会中,手机已经成为我们生活中不可或缺的一部分。然而,有时候我们希望手机能够常年运行,不断电工作。可能是因为需要监控某个设备或系统,或者出于其他特殊需求。在这篇教程中,我们将讨论如何实现这一目…

    2023年11月26日
    00
  • 德国推迟禁售燃油车,汽车业未来展望

    新闻速递:德国政府最近宣布将推迟禁售燃油车的计划,这一决定引起了广泛的讨论和反应。在此背景下,我们将探讨新能源汽车和燃油车的未来前景,以及电动车技术的发展。 1. 德国政府推迟禁售燃油车计划 最近,德国政…

    2023年11月27日
    00
  • 超越时间与空间:我们的操作系统来自外星?

    1956年,在新墨西哥州的一个秘密军事基地内,科学家们忙碌地围绕一块来自外星的金属板研究。这块神秘的金属板带给我们的不仅仅是好奇心的满足,更有可能改变了整个计算机行业的发展轨迹。 秘密基地的意外收获 当时…

    2023年10月28日
    00
  • 微软收购动视暴雪:游戏产业的巨变

    在游戏界发生了历史性的一幕:微软以创纪录的687亿美元完成了对动视暴雪的收购。这一交易经历了22个月的波折,牵扯多国监管和竞争对手的利益博弈,最终以微软收购动视暴雪的方式结束。本文将回顾这一交易的来龙去脉…

    2023年10月23日
    00