📜  MoviePy - 堆叠多个视频文件

📅  最后修改于: 2022-05-13 01:54:39.165000             🧑  作者: Mango

MoviePy - 堆叠多个视频文件

在本文中,我们将了解如何在 MoviePy 中堆叠多个视频文件剪辑。 MoviePy 是一个用于视频编辑的Python模块,可用于视频和 GIF 的基本操作。与堆叠多个视频剪辑的串联不同,所有视频文件都像拼贴中的图像一样同时播放。
注意:剪辑不需要是相同的大小。如果它们的大小不同,它们都将出现在一个足够大的剪辑的中心以包含其中最大的一个

下面是实现

Python3
# Import everything needed to edit video clips
from moviepy.editor import *
 
# loading video dsa gfg intro video and getting only first 5 seconds
clip1 = VideoFileClip("dsa_geek.webm").subclip(0, 5)
 
# rotating clip1 by 90 degree to get the clip2
clip2 = clip1.rotate(90)
 
# rotating clip1 by 180 degree to get the clip3
clip3 = clip1.rotate(180)
 
# rotating clip1 by 270 degree to get the clip4
clip4 = clip1.rotate(270)
 
 
# list of clips
clips = [[clip1, clip2],
        [clip3, clip4]]
 
 
# stacking clips
final = clips_array(clips)
 
# showing final clip
final.ipython_display(width = 480)


Python3
# Import everything needed to edit video clips
from moviepy.editor import *
 
# loading video dsa gfg intro video
# getting subclip as video is large
# adding margin to the video
clip1 = VideoFileClip("geeks.mp4").subclip(0, 5).margin(10)
 
 
# getting clip2 by mirroring over x axis
clip2 = clip1.fx(vfx.mirror_x)
 
# getting clip3 by mirroring over y axis
clip3 = clip1.fx(vfx.mirror_y)
 
# getting clip 4 by resising the clip
clip4 = clip1.resize(0.60)
 
# clips list
clips = [[clip1, clip2],
        [clip3, clip4]]
 
 
# stacking clips
final = clips_array(clips)
 
# showing final clip
final.ipython_display(width = 480)


输出 :

Moviepy - Building video __temp__.mp4.
Moviepy - Writing video __temp__.mp4

                                                                                                                       
Moviepy - Done !
Moviepy - video ready __temp__.mp4

另一个例子

Python3

# Import everything needed to edit video clips
from moviepy.editor import *
 
# loading video dsa gfg intro video
# getting subclip as video is large
# adding margin to the video
clip1 = VideoFileClip("geeks.mp4").subclip(0, 5).margin(10)
 
 
# getting clip2 by mirroring over x axis
clip2 = clip1.fx(vfx.mirror_x)
 
# getting clip3 by mirroring over y axis
clip3 = clip1.fx(vfx.mirror_y)
 
# getting clip 4 by resising the clip
clip4 = clip1.resize(0.60)
 
# clips list
clips = [[clip1, clip2],
        [clip3, clip4]]
 
 
# stacking clips
final = clips_array(clips)
 
# showing final clip
final.ipython_display(width = 480)

输出 :

Moviepy - Building video __temp__.mp4.
MoviePy - Writing audio in __temp__TEMP_MPY_wvf_snd.mp3
                                                                                                                       
MoviePy - Done.
Moviepy - Writing video __temp__.mp4

                                                                                                                       
Moviepy - Done !
Moviepy - video ready __temp__.mp4