使用Pygame事件关闭moviepy视频文件剪辑

2024-10-03 19:32:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图创建一个python程序,该程序循环相同的片段,直到用户按下esc键或关闭窗口。 我在这里看到一个问题,建议将moviepypygame一起使用,但问题是,当我运行视频文件剪辑预览时,pygame.event.get()似乎并没有像预期的那样编写事件。 当我按下退出按钮时,程序只是重新启动剪辑,甚至没有进入第22行的for event in pygame.event.get():循环。谢谢你的帮助

from moviepy.editor import *
import pygame
import os

pygame.init()

clip = VideoFileClip('videos/nightRide.mp4')

pygame.display.set_caption("Melancholic Cat")

catImage = pygame.image.load("images/cat.png")
pygame.display.set_icon(catImage)

run = True
while run:
    
    clip.preview()
    pygame.display.init()

    keys = pygame.key.get_pressed()
    
    for event in pygame.event.get():  
        if event.type == pygame.QUIT: 
            run = False  

    if keys[pygame.K_ESCAPE]:
        run = False

pygame.display.quit()
pygame.quit()
sys.exit()

Tags: runinimport程序eventforgetclip