python中的屏幕录像机

时间:2011-11-10 03:16:36

标签: python video

是否有用于在python中制作屏幕录制器应用程序的库?我觉得制作这样的东西会很有趣。但是一个可以使用ubuntu

在linux上运行的库

谢谢!

3 个答案:

答案 0 :(得分:1)

我知道没有机制在Python中执行屏幕录制。但是,您可以使用Python来控制许多现有的屏幕录制程序之一:

  • recorditnow
  • recordmydesktop
  • byzanz
  • 伊斯坦布尔
  • vnc2swf
  • pyvnc2swf

答案 1 :(得分:0)

recordscreen.py avconv (之前用于 ffmpeg )视频捕获/转换工具的命令行选项包装器。在纯Python中实现它会太慢,但当然你总是可以为这些工具创建有用的绑定,或者改进现有的绑定,例如AVBin

答案 2 :(得分:0)

使用MSS是使用python进行屏幕录制的绝佳选择。

例如,使用http://python-mss.readthedocs.io/examples.html中的代码,我的平均fps为60。

import time
import cv2
import mss
import numpy


with mss.mss() as sct:
    # Part of the screen to capture
    monitor = {'top': 40, 'left': 0, 'width': 800, 'height': 640}

    while 'Screen capturing':
        last_time = time.time()

        # Get raw pixels from the screen, save it to a Numpy array
        img = numpy.array(sct.grab(monitor))

        # Display the picture
        cv2.imshow('OpenCV/Numpy normal', img)

        # Display the picture in grayscale
        # cv2.imshow('OpenCV/Numpy grayscale',
        # cv2.cvtColor(img, cv2.COLOR_BGRA2GRAY))

        print('fps: {0}'.format(1 / (time.time()-last_time)))

        # Press "q" to quit
        if cv2.waitKey(25) & 0xFF == ord('q'):
            cv2.destroyAllWindows()
            break