Blog Linux Terminal Root

Vou mostrar uma forma de criar SLIDE pelo terminal utilizando o ffmpeg , lógico , precisaremos dele instalado. Verifique se o mesmo está instalado , caso não esteja , instale-o! Após instalado , você precisa estar no diretório onde estão as imagens ( $ cd SEU_DIR/ ) ou no comando apontar para a pasta que as contém.

Para criar um SLIDE de imagens JPG sendo cada imagem com duração na tela de 2 segundos , use

ffmpeg [argumentos/opções] vídeo_de_slides.mp4

-framerate : Informa o tempo de duração de cada imagem [1/2] , 2 segundos.

-pattern_type glob -i : Informa que não usaremos imagens pré numeradas , usaremos o glob *.jpg , o -i informa a entrada.

-c:v libx264 : Fundamental , pois usaremos o encoder libx264

-r : O fluxo de vídeo terá uma taxa de quadros de 30 fps, duplicando os quadros de acordo:
ffmpeg -framerate 1/2 -pattern_type glob -i '*.jpg' -c:v libx264 -r 30 slide.mp4

Para imagens no formato PNG , note que usamos mais argumentos -pix_fmt yuv420p , que gera compatibilidade para players que utilizam espaço de cor YUV com 4:2:0 subsampling chroma:

ffmpeg -framerate 1/2 -pattern_type glob -i '*.png' -c:v libx264 -pix_fmt yuv420p out.mp4

Caso você quiser enumerá-las , em caso de erro , use sem o glob , lembrando que as imagens devem estar enumeradas como:

img001.png, img002.png, img003.png, etc.

ffmpeg -framerate 1/5 -i img%03d.png -c:v libx264 -r 30 -pix_fmt yuv420p out.mp4

Você ainda pode incluir música nos seus SLIDES, exemplo de PNG com Música:

ffmpeg -framerate 1/2 -pattern_type glob -i '*.png' -i audio.mp3 -c:v libx264 -c:a aac -strict experimental -b:a 192k -shortest out.mp4

Agora se em vez de IMAGENS você queira juntar/concatenar vídeos num só, então:

Converter os vídeos para o formato MPEG com os mesmos bit rates, codecs, resoluções, números de quadros, etc.

ffmpeg -i arquivo_original -s vga -target ntsc-dvd -aspect 4:3 arquivo_novo.mpg

Depois você concatena todos os arquivos mpeg e joga a saída para um arquivo mpeg novo

cat *.mpg > novo.mpg

Se o índice ficar bagunçado, o que será bem provável , para corrigir basta passar o arquivo pelo ffmpeg novamente

ffmpeg -i teste.mpg -sameq arquivo_final.mpg

Se você quiser pôr áudio nos vídeos concatenados , pode alterar o áudio com o próprio FFMPEG! :)

Mais em: https://ffmpeg.org/