This is default featured slide 1 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured slide 2 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured slide 3 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured slide 4 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured slide 5 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

Mostrando postagens com marcador ffmpeg. Mostrar todas as postagens
Mostrando postagens com marcador ffmpeg. Mostrar todas as postagens

sábado, 25 de outubro de 2014

Alterar volume de áudio com FFmpeg

Abaixar ou aumentar o volume de um áudio usando o FFmpeg, basta usar o filtro de audio "volume":

$ ffmpeg -i input.wav -af 'volume=0.5' output.wav 

Nesse caso, o volume é diminuido pela metade.

Cortar vídeo usando FFmpeg

Exemplo: cortar um vídeo dos 2m10s aos 3m30s (1m20s a partir de 2m10s).

$ ffmpeg -ss 00:02:10 -i video.mp4 -to 00:01:20 -c copy cut.mp4

quarta-feira, 10 de setembro de 2014

Dividir tela do vídeo usando FFMPEG | Split Screen Using FFMPEG

Exemplo 1: Colocar dois vídeos lado a lado.

Assuma que temos 2 vídeos, "a.mp4" e "b.mp4", com a mesma resolução 720x480 pixels. E desejamos colocá-los lado a lado em um único vídeo "out.mp4" de 720x480 pixels. Pode-se usar o seguinte comando:
 $ ffmpeg -i a.mp4 -vf "scale=360:480 [inScale]; \
   color=c=black@1.0:s=720x480:r=29.75:d=9.0 [bg];\
   movie=b.mp4, scale=360:480 [vid2]; \
   [bg] [vid2] overlay=360:0 [basis1]; \
   [basis1] [inScale] overlay=0:0" out.mp4

A expressão entre parênteses é a descrição do filtro (filtergraph). A partir dessa expressão é possível montar um diagrama de blocos, para entendermos melhor como ele funciona.


O vídeo "a.mp4" é reescalado para metade da largura (causará distorção) e o resultado fica no nó [inScale]. No nó [bg], é criado um fundo preto de tamanho 720x480, com taxa de frame de 29.75 e duração de 9 segundos. No nó [vid2], é introduzido o vídeo "b.mp4" e reescalado. Agora o nó [vid2] é sobreposto ao nó [bg] na posição 360:0. O resultado está no nó [basis1], onde o nó [inScale] será sobreposto na posição 0:0. E o resultado será salvo no arquivo "out.mp4".

Exemplo 2: Colocar um vídeo em cima do outro .

Da mesma forma que o exemplo 1, porém com algumas modificações.

 $ ffmpeg -i a.mp4 -vf "scale=720:240 [inScale]; \
   color=c=black@1.0:s=720x480:r=29.75:d=9.0 [bg];\
   movie=b.mp4, scale=720:240 [vid2]; \
   [bg] [vid2] overlay=0:240 [basis1]; \
   [basis1] [inScale] overlay=0:0" out.mp4

A diferença está ao reescalar os vídeos "a.mp4" e "b.mp4", e na posição de sopreposição do segundo vídeo.

Exemplo 3: Dividir a tela para quatro vídeos.

Agora assuma que temos 4 vídeos, "a.mp4", "b.mp4", "c.mp4" e "d.mp4", com a mesma resolução 720x480 pixels. E desejamos colocá-los em duas linhas e duas colunas em um único vídeo "out.mp4" de 720x480 pixels. Pode-se usar o seguinte comando:

 $ ffmpeg -i a.mp4  -vf "scale=360:240 [inScale]; \
   color=c=black@1.0:s=720x480:r=29.75:d=9.0 [bg];\
   movie=b.mp4, scale=360:240 [vid2]; \
   movie=c.mp4, scale=360:240 [vid3]; \
   movie=d.mp4, scale=360:240 [vid4]; \
   [bg] [vid2] overlay=360:0 [basis1]; \
   [basis1] [vid3] overlay=0:240 [basis2]; \
   [basis2] [vid4] overlay=360:240 [basis3]; \
   [basis3] [inScale] overlay=0:0" out.mp4

O princípio é o mesmo dos exemplos anteriores, só que desta vez com mais dois blocos de sobreposição. Neste exemplo não ocorre distorção nas imagens (mantem a proporção do aspecto). A seguir tem o vídeo resultante do exemplo 3:


Como pode-se observar, existe uma infinidade de variações que pode ser feita com esses filtros do ffmpeg, basta usar a imaginação. ;) Espero ter ajudado.


Fontes: