Corte, Join e Loop com FFmpeg
Cortar um vídeo, juntar sequências, criar um loop perfeito, tudo sem abrir o Premiere.
Cortando vídeo
# Do segundo 10 ao 40 (sem re-encodar)ffmpeg -i input.mp4 -ss 00:00:10 -to 00:00:40 -c copy output.mp4
# A partir de 1min30s por 20 segundosffmpeg -i input.mp4 -ss 00:01:30 -t 20 -c copy output.mp4
# Duração de 30 segundos a partir de 1 minuto:ffmpeg -i input.mp4 -ss 00:01:00 -t 30 -c copy output.mp4-c copy = sem re-encodar (rápido, mas corte pode não ser frame-exato). Para corte frame-exato, remova -c copy.
Busca rápida (menos precisa mas mais eficiente):
ffmpeg -ss 00:01:30 -i input.mp4 -t 20 -c copy output.mp4Juntando vídeos
# Crie arquivo de listaecho "file 'video1.mp4'" > lista.txtecho "file 'video2.mp4'" >> lista.txtecho "file 'video3.mp4'" >> lista.txt
# Concatena (mesmo codec, sem re-encode)ffmpeg -f concat -safe 0 -i lista.txt -c copy output.mp4Para formatos diferentes (re-encode necessário):
ffmpeg -i video1.mp4 -i video2.mov \ -filter_complex "[0:v][0:a][1:v][1:a]concat=n=2:v=1:a=1[v][a]" \ -map "[v]" -map "[a]" output.mp4Criando loops
# Loop 3 vezesffmpeg -stream_loop 3 -i input.mp4 -c copy looped.mp4
# Loop por 60 segundosffmpeg -stream_loop -1 -i input.mp4 -c copy -t 60 loop_60s.mp4
# Loop 5 vezes (stream_loop conta as repetições, não o total)ffmpeg -stream_loop 4 -i input.mp4 -c copy output.mp4Revertendo vídeo
ffmpeg -i input.mp4 -vf reverse -af areverse reversed.mp4Extraindo frames
# Todos os frames como PNGffmpeg -i input.mp4 frame_%04d.png
# 1 frame por segundoffmpeg -i input.mp4 -vf fps=1 frame_%04d.jpg
# Frame específico (no segundo 5)ffmpeg -ss 00:00:05 -i input.mp4 -frames:v 1 frame_5s.pngRemovendo áudio
# Remove áudio completamenteffmpeg -i input.mp4 -an output_mudo.mp4
# Extrai áudio como WAVffmpeg -i input.mp4 -vn -c:a pcm_s16le audio.wavAdicionando timecode para revisão
ffmpeg -i render.mov \ -vf "drawtext=text='%{pts\\:hms}':fontsize=24:fontcolor=white:x=20:y=20:box=1:boxcolor=black@0.5" \ -c:v libx264 -crf 20 \ render_com_timecode.mp4