drawtext
filtrar quando compilado com a configuração --enable-libfreetype
. Se você não tem isso, você tem que compilar ffmpeg-se -. Não terrivelmente complicado, porém
A sintaxe mais fácil seria:
ffmpeg -i <input> -vf 'drawtext=fontsize=15:fontfile=FreeSerif.ttf:text=LONG_LINE:y=100:x=100' output.mp4
Isso posiciona o texto em 100 pixels de deslocamento a partir do canto superior esquerdo. então você pode usar a opção enable
para especificar um texto para um determinado período, por exemplo, para mostrar um texto apenas para o frame 123
, você usaria:
drawtext=enable='eq(n,123)':fontsize=15:fontfile=FreeSerif.ttf:text='I':y=100:x=100
Então, é claro que você tem que gerar o comando processualmente para mostrar uma certa string por um certo tempo.
Outra idéia seria a queimar as legendas no vídeo de um arquivo de legenda pré-gerado.