Open In App

MoviePy – Concatenating multiple Video Files

Last Updated : 31 Oct, 2021
Improve
Improve
Like Article
Like
Save
Share
Report

In this article, we will see how we can concatenate multiple video file clips in MoviePy. MoviePy is a Python module for video editing, which can be used for basic operations on videos and GIF’s. In formal language theory and computer programming, string concatenation is the operation of joining character strings end-to-end. For example, the concatenation of “snow” and “ball” is “snowball”, similarly concatenating multiple videos clips means that they will get played one after another and act as a single video file.
Note: The clips do not need to be the same size. If they aren’t of the same size they will all appear centered in a clip large enough to contain the biggest of them.
 

In order to do this we will use concatenate_videoclips method 
Syntax : concatenate_videoclips(clips)
Argument : It takes list of video file 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
clip = VideoFileClip("dsa_geek.webm")
 
# getting subclip as video is large
clip1 = clip.subclip(0, 5)
 
# getting subclip as video is large
clip2 = clip.subclip(60, 65)
 
# concatenating both the clips
final = concatenate_videoclips([clip1, clip2])
#writing the video into a file / saving the combined video
final.write_videofile("merged.webm")
 
# 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 dsa gfg intro video
clip = VideoFileClip("dsa_geek.webm")
 
# getting subclip as video is large
clip1 = clip.subclip(0, 5)
 
 
# loading video gfg
clipx = VideoFileClip("geeks.mp4")
 
# getting subclip
clip2 = clipx.subclip(0, 5)
 
# clip list
clips = [clip1, clip2]
 
# concatenating both the clips
final = concatenate_videoclips(clips)
 
# 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


Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads