把多个clip放置在一个画面中
这么复杂的合成,是怎么做出来的啊?!
在这个脚本中,我们会使用下面这个图:
我们将找到这些区域,然后把不同的clip填充到这些区域
-
from moviepy.editor import *
-
from moviepy.video.tools.segmenting import findObjects
-
# 加载用来指定区域的图像
-
im = ImageClip("../../ultracompositing/motif.png")
-
# 加载这些区域返回一个ImageClip列表
-
regions = findObjects(im)
-
# 载入美国国家公园的7个clip
-
clips = [VideoFileClip(n, audio=False).subclip(18,22) for n in
-
[ "../../videos/romo_0004.mov",
-
"../../videos/apis-0001.mov",
-
"../../videos/romo_0001.mov",
-
"../../videos/elma_s0003.mov",
-
"../../videos/elma_s0002.mov",
-
"../../videos/calo-0007.mov",
-
"../../videos/grsm_0005.mov"]]
-
# 把每一个clip都放置在对应的图片中的区域
-
comp_clips = [c.resize(r.size)
-
.set_mask(r.mask)
-
.set_pos(r.screenpos)
-
for c,r in zip(clips,regions)]
-
cc = CompositeVideoClip(comp_clips,im.size)
-
cc.resize(0.6).write_videofile("../../composition.mp4")
-
# 这个特殊的合成任务要花费很长的时间
--------------------- 本文来自 ucsheep 的优快云 博客 ,全文地址请点击:https://blog.youkuaiyun.com/ucsheep/article/details/82787821?utm_source=copy