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

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

声明:本站所有文章,如无特殊说明或标注,均为本站(王大神)原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
指数词

使用Obsidian写wordpress文章

2023-2-7 17:20:52

指数词

AICG-利用CHATGPT帮你写seo文章

2023-2-7 19:27:06

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索