Faz o loop do texto que passa da esquerda para a direita usando o filtro drawtext FFMPEG

3

Eu tenho o seguinte comando FFMPEG, que limpa corretamente o texto na parte inferior de um vídeo.

ffmpeg -y -i test_small.mov -acodec libmp3lame -vcodec libx264 -pix_fmt yuv420p -b:a 192k -b:v 1400k -ar 44100 -crf 18 -vf "drawtext=text=string1 string2 string3 string4 string5 string6 string7 :expansion=normal:fontfile=foo.ttf: y=h-line_h-10:x=(5*n): fontcolor=white: fontsize=40: shadowx=2: shadowy=2" -an left_to_right_small.mp4

Mas isso só acontece uma vez. Como eu altero isso para que a animação fique com um atraso entre cada loop?

    
por Bachalo 07.02.2015 / 21:48

1 resposta

5

Isso funciona:

-vf "drawtext=text=string1 string2 string3 string4 string5 string6 string7 :expansion=normal:fontfile=foo.ttf: y=h-line_h-10:x=(mod(5*n\,w+tw)-tw): fontcolor=white: fontsize=40: shadowx=2: shadowy=2"

Veja Desmos para saber como funciona.

x - o eixo é a largura do vídeo.

y - o tempo é o tempo.

A linha preta é a largura da imagem (ajustável em Desmos por meio de um controle deslizante, x ).

A sombra preta é o texto da minha fórmula.

t em Desmos corresponde a tw no FFmpeg CMD, que é a largura do texto.

A área azul é o texto da sua fórmula original.

    
por 08.02.2015 / 21:49

Tags