MoviePy Composite Video – Setting Position of Clip

In this article we will see how we can set position of clip in 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 concatination of video files composite files are easy to implement but complex structure. Composite file combine the clips over one another and get played at same time, position and timing of video playback can be set any time. When first clip size is larger than the second clip the second clip appear to be in a larger window and its default position is at the top left hand size although we can change this any time.

In order to do this we will use crossfadein method with the VideoFileClip object

Syntax : clip.set_position((x, y))

Argument : It takes position as argument

Return : It returns VideoFileClip object



Below is the implementation

filter_none

edit
close

play_arrow

link
brightness_4
code

# Import everything needed to edit video clips
from moviepy.editor import *
   
# loading video dsa gfg intro video
clip = VideoFileClip("dsa_geek.webm")
   
# getting only first 5 seconds
clip1 = clip.subclip(0, 5)
   
# rotating clip by 180 degree to get the clip3
clip2 = clip1.rotate(180)
  
# resizing the clip2 reducing it by 50 % clip2 = clip2.resize(0.5)
  
# setting start time to the clip2
clip2 = clip2.set_start(3)
  
# setting position of the clip2
clip2 = clip2.set_position((100, 100))
   
# creating a composite video
final = CompositeVideoClip([clip1, clip2])
   
# showing final clip
final.ipython_display(width = 480)

chevron_right


Output :

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

                                                                                                                       
Moviepy - Done !
Moviepy - video ready __temp__.mp4

Another example

filter_none

edit
close

play_arrow

link
brightness_4
code

# Import everything needed to edit video clips
from moviepy.editor import *
  
# loading video gfg
clip = VideoFileClip("geeks.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)
  
# resizing the clip2 reducing it by 50 % clip2 = clip2.resize(0.5)
  
# setting position of the clip2
clip2 = clip2.set_position((150, 100))
  
  
# creating a composite video
final = CompositeVideoClip([clip1, clip2])
   
# showing final clip
final.ipython_display(width = 480)

chevron_right


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



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.


Article Tags :

Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.