MoviePy: editor de vídeo em Python – guia completo

Treinador Online de Python para Iniciantes

Aprenda Python facilmente sem sobrecarga teórica. Resolva tarefas práticas com verificação automática e escreva código diretamente no navegador.

Start Course

MoviePy para Python: guia completo de edição de vídeo

Introdução à biblioteca MoviePy

Trabalhar com vídeo geralmente remete a ferramentas pesadas e APIs complexas. Mas no Python existe uma biblioteca que torna a edição de vídeo simples e expressiva — MoviePy. Ela permite criar, editar, combinar e exportar vídeos com o mínimo de código.

MoviePy é construída sobre o FFmpeg e suporta diversos formatos de vídeo e áudio. A biblioteca é ideal para criar vídeos dinâmicos, gerar memes, fazer montagens programáticas, animações e sincronização com áudio. MoviePy é amplamente usada por desenvolvedores para automatizar a produção de vídeos, criar conteúdo para redes sociais e processar arquivos de mídia em escala industrial.

As principais vantagens do MoviePy incluem sintaxe simples, funcionalidade rica, suporte a vários formatos, integração com NumPy e a capacidade de criar composições complexas sem conhecimento profundo de codecs de vídeo.

Instalação e configuração do MoviePy

Instalação via pip

pip install moviepy

Dependências adicionais

Para o MoviePy funcionar corretamente, é necessário o FFmpeg. Na maioria dos casos, ele é instalado automaticamente, mas se houver problemas:

Windows:

# Via chocolatey
choco install ffmpeg

# Ou baixe do site oficial

macOS:

brew install ffmpeg

Linux:

sudo apt install ffmpeg  # Ubuntu/Debian
sudo yum install ffmpeg  # CentOS/RHEL

Verificando a instalação

from moviepy.editor import VideoFileClip
print("MoviePy instalado com sucesso!")

Fundamentos do trabalho com arquivos de vídeo

Carregando um vídeo

from moviepy.editor import VideoFileClip

# Carregando o arquivo de vídeo
clip = VideoFileClip("video.mp4")

# Obtendo informações do vídeo
print(f"Duração: {clip.duration} segundos")
print(f"Tamanho: {clip.size}")
print(f"FPS: {clip.fps}")

Trabalhando com diferentes formatos

MoviePy suporta uma ampla variedade de formatos de vídeo:

  • MP4, AVI, MOV, WMV
  • MKV, FLV, WebM
  • GIF (tanto como formato de entrada quanto de saída)

Operações básicas de edição

Cortar e dividir vídeo

# Cortar por tempo
clip_cut = clip.subclip(10, 20)  # do 10º ao 20º segundo

# Cortar do início
clip_from_start = clip.subclip(0, 30)

# Cortar até o final
clip_to_end = clip.subclip(15)

# Remover um trecho
clip_without_part = clip.cutout(5, 15)

Redimensionar e ajustar qualidade

# Redimensionar pela altura
resized = clip.resize(height=480)

# Redimensionar pela largura
resized = clip.resize(width=640)

# Redimensionamento proporcional
resized = clip.resize(0.5)  # 50% do tamanho original

# Alterar FPS
fps_changed = clip.set_fps(30)

Rotação e espelhamento

# Rotacionar 90 graus
rotated = clip.rotate(90)

# Espelhamento horizontal
from moviepy.video.fx import mirror_x
mirrored = mirror_x(clip)

# Espelhamento vertical
from moviepy.video.fx import mirror_y
mirrored_y = mirror_y(clip)

Trabalhando com texto e legendas

Criando clipes de texto

from moviepy.editor import TextClip, CompositeVideoClip

# Texto simples
text = TextClip("Olá, mundo!", fontsize=70, color='white', font='Arial-Bold')
text = text.set_position('center').set_duration(5)

# Texto com fundo
text_with_bg = TextClip("Título", fontsize=50, color='white',                    

Recommendations