簡體   English   中英

Moviepy 無法識別調整大小功能

[英]Moviepy does not recognize resize function

我正在嘗試編寫一個調整視頻文件大小的應用程序,最簡單的方法是moviepy。 但是,我不能使用moviepy的調整大小功能。 似乎未解決的參考。 我的部分代碼在這里:

我嘗試使用 ffmpeg 和 subprocess 來解決我的問題,但它沒有用。

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()

截屏

對於像我一樣盲目地絆倒它的人:調整大小函數返回調整大小的剪輯的副本。 您需要重新分配變量! 我知道 Shivam 的答案包含解決方案,但直到在 reddit 上明確找到答案之前我才注意到它。 moviePy 文檔令人困惑,因為該示例沒有顯示重新分配。

resizedClip = oldClip.resize(width=400)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM