Skip to content
Related Articles

Related Articles

Improve Article
Save Article
Like Article

MoviePy – Changing Image and Time at same time of Video Clip

  • Last Updated : 01 Aug, 2020

In this article we will see how we can change display frames and time line of the video file clip in MoviePy at a same time. MoviePy is a Python module for video editing, which can be used for basic operations on videos and GIF’s. We use fl_image method to alter the display frames and fl_time method to alter the time, although we can do these task at a same time.

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

 Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.  

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning - Basic Level Course

Syntax : clip.fl(method)



Argument : It takes time method as argument

Return : It returns VideoFileClip object

Below is the implementation




# 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
clip = clip.subclip(0, 5)
  
def scroll(get_frame, t):
    """
    This function returns a 'region' of the current frame.
    The position of this region depends on the time.
    """
    frame = get_frame(t)
    frame_region = frame[int(t):int(t)+360, :]
    return frame_region
  
# alter time and frame
final = clip.fl( scroll )
  
# showing final clip
final.ipython_display()

Output :

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

                                                                                                                       
Moviepy - Done !
Moviepy - video ready __temp__.mp4

Another example




# Import everything needed to edit video clips
from moviepy.editor import *
  
# loading video gfg
clip = VideoFileClip("geeks.mp4")
  
  
# getting duration of the video
duration = clip.duration
  
def scroll(get_frame, t):
    """
    This function returns a 'region' of the current frame.
    The position of this region depends on the time.
    """
    frame = get_frame(t)
    frame_region = frame[int(t):int(t)+360, :]
    return frame_region
  
# alter time and frame
final = clip.fl( scroll )
  
# showing final clip
final.ipython_display()

Output :

Duration : 10.98
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
Recommended Articles
Page :

Start Your Coding Journey Now!