Moviepy 无法识别调整大小功能

Moviepy does not recognize resize function

我正在尝试编写一个调整视频文件大小的应用程序,最简单的方法是使用 moviepy。但是,我不能使用 moviepy 的调整大小功能。好像是未解参考。我的部分代码在这里:

我尝试使用带子进程的 ffmpeg 来解决我的问题,但没有成功。

from moviepy.editor import *

video_path = self.file_name2process.text()
video2process = VideoFileClip(video_path)
video2process_resized = video2process.resize(height=360)
video2process_resized.write_videofile("new.mp4")

它没有显示任何错误消息,因为它不识别调整大小的部分。由于它不识别调整大小部分,它也不允许我使用 'write_videofile' 功能。不知何故,当我查看 'VideoFileClip' 模块时,我可以在那里看到调整大小功能,但我无法访问它。

截图如下:https://i.hizliresim.com/5NqQAL.png

是的,它显示调整大小为未解决的参考,但无论如何都会完成工作。

from moviepy.editor import VideoFileClip

disk_video_path = get_tmp_video_file_path(video)
clip = VideoFileClip(disk_video_path)

video_max_height = int(get_config_value(STORY_VIDEO_HEIGHT))

if clip.h > video_max_height:
    clip_resized = clip.resize(height=video_max_height)
    clip_resized.write_videofile(RESIZED_STORY_VIDEO_NAME, temp_audiofile="temp-audio.m4a",
                             remove_temp=True,
                             codec="libx264",
                             audio_codec="aac", fps=30,
                             logger=None, threads=4)
    clip.close()

Screenshot

对于像我一样盲目摸索的人:调整大小功能 returns 调整大小剪辑的副本。您需要重新分配变量! 我知道 Shivam 的答案包含解决方案,但直到在 reddit 上明确找到答案后我才注意到它。 moviePy 文档令人困惑,因为该示例未显示重新分配。

resizedClip = oldClip.resize(width=400)