python 录屏软件(配合pillow、opencv

编程入门 行业动态 更新时间:2024-10-06 18:21:28

python 录屏<a href=https://www.elefans.com/category/jswz/34/1770125.html style=软件(配合pillow、opencv"/>

python 录屏软件(配合pillow、opencv

#coding:utf-8
import time,threading
from datetime import datetime
from PIL import ImageGrab
import numpy as np
import cv2
from pynput import keyboard
def video_record(sttime):   # 录入视频global namename = datetime.now().strftime('%Y-%m-%d %H-%M-%S') # 当前的时间(当文件名)screen = ImageGrab.grab() # 获取当前屏幕width, high = screen.size # 获取当前屏幕的大小fourcc = cv2.VideoWriter_fourcc('X', 'V', 'I', 'D') # MPEG-4编码,文件后缀可为.avi .asf .mov等video = cv2.VideoWriter('%s.avi' % name, fourcc, 15, (width, high)) # (文件名,编码器,帧率,视频宽高)print(str(sttime)+'秒后开始录制----')  # 可选time.sleep(int(sttime))print('开始录制!')global start_timestart_time = time.time()while True:if flag:print("录制结束!")global final_timefinal_time = time.time()video.release() #释放breakim = ImageGrab.grab()  # 图片为RGB模式imm = cv2.cvtColor(np.array(im), cv2.COLOR_RGB2BGR) # 转为opencv的BGR模式video.write(imm)  #写入# time.sleep(5) # 等待5秒再次循环
def on_press(key):   # 监听按键global flagif key == keyboard.Key.esc:flag = True # 改变return False # 返回False,键盘监听结束!
def video_info():   # 视频信息video = cv2.VideoCapture('%s.avi' % name)  # 记得文件名加格式不要错!fps = video.get(cv2.CAP_PROP_FPS)Count = video.get(cv2.CAP_PROP_FRAME_COUNT)size = (int(video.get(cv2.CAP_PROP_FRAME_WIDTH)), int(video.get(cv2.CAP_PROP_FRAME_HEIGHT)))print('帧率=%.1f'%fps)print('帧数=%.1f'%Count)print('分辨率',size)print('视频时间=%.3f秒'%(int(Count)/fps))print('录制时间=%.3f秒'%(final_time-start_time))print('推荐帧率=%.2f'%(fps*((int(Count)/fps)/(final_time-start_time))))
if __name__ == '__main__':flag = Falseprint("工具使用:输入1-9秒必须为整数的延迟时间,点击esc按钮结束录屏")sstime = input("请输入多少秒后开始录制(1-9秒)必须为整数:",)th = threading.Thread(target=video_record,args=sstime)th.start()with keyboard.Listener(on_press=on_press) as listener:listener.join()time.sleep(1)  # 等待视频释放过后video_info()

测试PC的朋友不妨可以试试这款录屏工具,直接打包即可使用 

更多推荐

python 录屏软件(配合pillow、opencv

本文发布于:2024-03-09 07:03:08,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1724222.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:软件   python   opencv   pillow

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!