MoviePy (full documentation here) is a Python module for script-based movie editing.
It can read and write to many formats, including animated GIFs, and enables basic operations (cuts, concatenations, title insertions) to be done in a few lines. It can also be used for advanced compositing.
A typical MoviePy script looks like that:
from moviepy.editor import * # Load myHolidays.mp4 and select the subclip 00:00:50 - 00:00:60 clip = VideoFileClip("myHolidays.mp4").subclip(50,60) # Generate a text clip (many options available ! ) txt_clip = TextClip("My Holidays 2013",fontsize=70,color='white') txt_clip = txt_clip.set_pos('center').set_duration(10) # Overlay the text clip above the first clip final_clip = CompositeVideoClip([clip, txt_clip]) # write the result to a file in any format final_clip.to_videofile("myHolidays_edited.avi",fps=25, codec='mpeg4')
Download and Installation
You will also need a recent version of the software ffmpeg , preferably downloaded directly from the ffmpeg website.
First installation method : if you have
pip installed, just type this in a terminal (sudo is optional on some systems)
(sudo) pip install moviepy
(sudo) python setup.py install
Linking to ffmpeg
If you put have a ffmpeg binary in you executable folder (on Linux it will be
/usr/bin) it will be detected automatically by MoviePy. Else make sure that MoviePy can locate ffmpeg on your computer by running the script
moviepy/conf.py that is in the sources. It it fails, then you must enter the path to the FFMPEG executable in the first line of this file
FFMPEG_BINARY = path/to/your/ffmpeg