Pygame / MoviePy-视频以可怕的帧速率显示,并且窗口尺寸大于我的屏幕

Ele*_*eza 6 python video pygame moviepy

由于新的故事视频游戏项目,我一直在寻找一种方法来尝试在Pygame中显示视频。我终于偶然发现了Moviepy,它运作正常……除了视频显示每秒仅显示24帧之一,并且显示的窗口大于屏幕显示。(在配备11英寸(我认为)屏幕的Windows 10笔记本电脑上)

声音还可以,但是视频也播放太快,因此不同步。

我已经尝试过在文档中说过的resize函数,但是它没有任何效果。

而且我找不到与帧率有关的内容。

因此,我需要一种使窗口更小并校正帧速率的方法。

这是我使用的代码:

from moviepy.editor import VideoFileClip
from moviepy.video.fx.resize import resize
import pygame

pygame.display.set_caption('My video!')

clip = VideoFileClip('Eleeza Crafter And The Cloud Colours Trailer.mp4')
clip.fx(resize, width=240)
clip.preview(fps=24)
pygame.quit()
Run Code Online (Sandbox Code Playgroud)

任何帮助,将不胜感激。谢谢 :)

EDIT: I tested a different video at the same framerate and it works perfectly? Then again it was just a simple line flying around the screen.

Lon*_*rer 1

2秒谷歌给了我这个链接

它指出 :

可以按如下方式预览剪辑

my_clip.preview() # preview with default fps=15
my_clip.preview(fps=25)
my_clip.preview(fps=15, audio=False) # don't generate/play the audio.
my_audio_clip.preview(fps=22000)
Run Code Online (Sandbox Code Playgroud)

另外(取决于您的导入方法:

这样您就可以使用clip.resize(width=240)而不是更长的clip.fx( resize, width=240).

仍然来自文档:

对于高级图像处理,您将需要其中一个或多个软件包。例如,使用 Clip.resize 方法需要至少安装ScipyPILPillowOpenCV之一。