In this article, we will see how we can composite video file in MoviePy. MoviePy is a Python module for video editing, which can be used for basic operations on videos and GIF’s. Meaning of composite is combining different elements, composite video is the combination of different video clips unlike stacking and concatenation of video files composite files are easy to implement but complex structure. Composite file combine the clips over one another and get played at the same time, position and timing of video playback can be set any time.
In order to do this we will use CompositeVideoClip method
Syntax : CompositeVideoClip(clips)
Argument : It takes list of video clips as argument
Return : It returns VideoFileClip object
Below is the implementation
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.margin( 40 ).set_start( 3 ) # rotating clip1 by 180 degree to get the clip3 clip3 = clip1.rotate( 180 ).set_start( 6 ) # creating a composite video final = CompositeVideoClip([clip2, clip1, clip3]) # showing final clip final.ipython_display(width = 480 ) |
Output :
Moviepy - Building video __temp__.mp4. Moviepy - Writing video __temp__.mp4 Moviepy - Done ! Moviepy - video ready __temp__.mp4
Another example
Python3
# Import everything needed to edit video clips from moviepy.editor import * # loading video gfg clip = VideoFileClip( "Lazyroar.mp4" ) # getting subclip from it clip1 = clip.subclip( 0 , 5 ) # mirroring image according to the y axis clip2 = clip.fx(vfx.mirror_y).set_start(( 4 )) # creating a composite video final = CompositeVideoClip([clip1, clip2]) # showing final clip final.ipython_display(width = 480 ) |
Output :
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