FFMPEG
Receitas Manipulação Áudio e Vídeo
Aqui estão alguns comandos que uso no dia a dia para manipulação de áudio e vídeo. A página principal do projeto FFMPEG tem uma ampla docuentação. Aqui separei usos corriqueiros encontrados na internet em www.linhadecodigo.com.br, https://catswhocode.com e http://www.dicas-l.com.br
Conversão de formatos de vídeo
ffmpeg -i origem.mpg -q:v 0 -q:a 0 destino.avi
Entendendo a sintaxe:
-q:v 0
-q:v 0 preserva video original
-q:a 0
-q:a 0 preserva audio original
Obs: se não usar a diretiva "q:" teremos a saida default que é 64kbps e 200kbps (audio e video)
Extrair imagens de vídeo
ffmpeg -i origem.mpg -r 1 xxx-%3d.jpeg
Entendendo a sintaxe:
-r 1
extrai uma(1) imagem por segundo
-xxx
qualquer prefixo
%3d
sequencial de tres casas (001, 002...)
Exibir informações/detalhes do vídeo
ffmpeg -i origem.mp4 -hide_banner
Renderizar sem o audio, apenas video
ffmpeg -i origem.mp4 -an videoMudo.mp4
Como recortar uma parte da imagem no vídeo
ffmpeg -i origem.mp4 -filter:v "crop=w:h:x:y" destino.mp4
Entendendo a sintaxe:
-filter:v
Indica o uso de um filtro de vídeo
crop
Indica o filtro de recorte
w, h, x e y
Largura, altura e coordenadas do video resultante
Dividindo um arquivo de vídeo em dois
ffmpeg -i origem.mp4 -t 00:01:00 -c copy parte1.mp4 -ss 00:01:00 -codec copy parte2.mp4
Entendendo a sintaxe:
-t 00:01:00 -c copy
copia do inicio até o primeiro minuto , gerando parte1.mp4
-ss 00:01:00 -codec copy
copia da posição minuto um até o final, gerando parte2.mp4
-copy
faz uma cópia imediata, sem renderizar o vídeo
Unindo vários arquivos de vídeo em um
ffmpeg -f concat -i list.txt -c copy todos.mov
Entendendo a sintaxe:
-f concat
junta os arquivos a partir de uma lista
-i list.txt
lista dos arquivos que serão concatenados (a lista deve ter um arquivo por linha, salva num arquivo .txt)
Gerar video a partir de imagens
ffmpeg -r 5 -pattern_type glob -i 'origem*.jpg' -c:v libx264 saida.mp4
Entendendo a sintaxe:
-r 5
indica o número de imagens a serem apresentadas por segundo, neste caso, 5
pattern_type glob
irá ler todos os arquivos em ordem sequencial
-c:v libx264
especifica o formato
Converter um arquivo avi/wav para Mp3
ffmpeg -i origem.avi -vn -ar 44100 -ac 2 -ab 192 -f mp3 saida.mp3
Combinar som e video
ffmpeg -i som.wav -i video.avi saida.mpg