因此,我正在尝试创建一个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)导出工作正常,但剪辑是完全不透明的。
对于如何在剪辑输出中实现透明度有什么建议吗?
发布于 2020-04-17 04:31:45
mp4 (我假设是h264)格式不提供透明度。webM (vp9)和h265的一些变体确实提供了透明性。
我不确定你到底想要做什么--但也许是创建覆盖的视频为webm (支持透明)--然后在最后转换成h264可能对你有用。
https://stackoverflow.com/questions/61255431
复制相似问题