[英]How to end a video when audio ends with moviepy?
I am using this code to add an audio file to a video file in Python, but, when video ends, the audio keeps playing until the end.我正在使用此代码将音频文件添加到 Python 中的视频文件中,但是,当视频结束时,音频会一直播放到最后。 I want to end when the video ends.
我想在视频结束时结束。
Any suggestion?有什么建议吗?
from moviepy.editor import *
videoclip = VideoFileClip(filename)
audioclip = AudioFileClip("audio.mp3")
new_audioclip = CompositeAudioClip([audioclip])
videoclip.audio = new_audioclip
videoclip.write_videofile("new_filename.mp4")
Instead of CompositeAudioClip, afx works for me:代替 CompositeAudioClip,afx 为我工作:
from moviepy.editor import *
videoclip = VideoFileClip(filename)
audioclip = AudioFileClip("audio.mp3")
new_audio = afx.audio_loop(audioclip, duration=videoclip.duration)
videoclip.audio = new_audio
videoclip.write_videofile("new_filename.mp4")
You should get video duration (length) and use it to crop audio.您应该获得视频持续时间(长度)并使用它来裁剪音频。
And you don't need CompositeAudioClip
for this.而且您不需要
CompositeAudioClip
。
from moviepy.editor import *
videoclip = VideoFileClip(filename)
audioclip = AudioFileClip("audio.mp3")
videoclip.audio = audioclip.set_duration(videoclip.duration)
videoclip.write_videofile("new_filename.mp4")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.