因此,我尝试使用moviepy创建一个剪辑,其中使用CompositeVideoClip将五个半透明的剪辑彼此叠加。
输出的片段长度应等于最长的片段,在该片段中,复合片段的所有层均可见。
我的代码看起来像这样:
from moviepy.editor import *
clip_1 = VideoFileClip('some\\path\\here.mp4')
clip_2 = VideoFileClip('some\\path\\here.mp4')
clip_3 = VideoFileClip('some\\path\\here.mp4')
clip_4 = VideoFileClip('some\\path\\here.mp4')
clip_5 = VideoFileClip('some\\path\\here.mp4')
list_of_clips = [clip_1, clip_2, clip_3, clip_4, clip_5]
for index, clip in enumerate(list_of_clips):
list_of_clips[index] = clip.set_opacity(.20)
output_clip = CompositeVideoClip(list_of_clips)
output_clip.write_videofile('some\\path\\here.mp4')
代码运行正常,但未应用透明度。
也不起作用:
clip = VideoFileClip(some\\path\\here.mp4).set_opacity(.30)
clip.write_videofile(some\\path\\here.mp4)
导出工作正常,但是剪辑完全不透明。
关于剪辑输出透明度的任何建议?
mp4(我假设为h264)格式不透明。 webM(vp9)和h265的某些变体确实提供了透明度。
不确定我要做什么,但是也许将重叠的视频创建为webm(支持透明性),然后最后转换为h264可能对您有用。>