FFmpeg codifica parte do vídeo com legendas

0

codifica parte de um arquivo e, ao mesmo tempo, adiciona as legendas para essa parte. Eu estou usando:

ffmpeg -ss 00:02:00 -t 00:00:30 -i "path/to/input" -c:v libvpx -crf 5 -b:v 3M -c:a libvorbis -vf "ass=path/ass" "output.webm"

mostra que carrega as legendas, mas na saída elas não existem (subtítulo: 0kB). Tanto quanto eu poderia dizer a parte de legendas não funciona com -ss? (Ou ignora -ss e tenta adicionar todos os subs começando com 00:00:00 do .ass em 00:02:00 do fluxo de vídeo).

A única maneira de fazer isso foi recodificar o arquivo inteiro e usar:

ffmpeg -ss 00:02:00 -i "output.webm" -t 00:00:30 -c:v copy -c:a copy "new_output.webm"

para manter o que eu queria. Estou faltando alguma coisa ou simplesmente não é possível fazer o que eu quero em um só?

Espero que o que eu escrevi tenha feito algum sentido e thx.

Output #0, webm, to 'target/test.webm':
  Metadata:
    encoder         : Lavf55.37.101
    Stream #0:0: Video: vp8 (libvpx), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], q=-1--1, 2500 kb/s, 1k tbn, 23.81 tbc (default) (forced)
    Stream #0:1: Audio: vorbis (libvorbis), 44100 Hz, stereo, fltp (default) (forced)
Stream mapping:
  Stream #0:0 -> #0:0 (h264 -> libvpx)
  Stream #0:1 -> #0:1 (aac -> libvorbis)
Press [q] to stop, [?] for help
frame=  953 fps= 22 q=0.0 Lsize=    6990kB time=00:00:40.02 bitrate=1430.6kbits/s dup=0 drop=5
video:6499kB audio:464kB subtitle:0kB other streams:0kB global headers:4kB muxing overhead: 0.376779%
    
por Loke 28.06.2014 / 13:07

1 resposta

1

Se você colocar -ss após -i , o ffmpeg primeiro codificará o arquivo inteiro até o ponto especificado, e somente então ele gravará na saída.

Isso significa que as legendas começarão no ponto correto.

Além disso, você deve considerar colocar -t após -i porque é usado como uma opção de saída aqui, ou seja, produzir apenas 30 segundos.

ffmpeg -i "path/to/input" -ss 00:02:00 -t 30 -c:v libvpx -crf 5 -b:v 3M -c:a libvorbis -vf "ass=path/ass" "output.webm"
    
por 28.06.2014 / 20:38