ffmpeg injeta timecode E framerate

0

Estou tentando injetar um timecode de início em um vídeo, além de forçar um framerate de 29,97, mas não importa qual framerate eu insiro (não importa onde no script, via -r 29.97), o ffmpeg força a taxa de quadros a 25fps. Eu também tentei fps = 29,97, mas meu entendimento é que 'fps =' é depreciado. Aqui está o comando que estou executando:

ffmpeg -i /INPUT/FILE/SEQUENCE_%04d.jpg -vf -r 29.97 -vcodec prores -profile: v 0 -c: um mp2 -timecode 09: 08: 52: 00 /OUTPUT/FILE.mov

Eu tentei o que parece ser uma combinação dessas tags e, não importa o que, estou obtendo 25fps. Alguém já lidou com isso?

Obrigado antecipadamente.

    
por Peter Timberlake 04.10.2017 / 00:15

1 resposta

1

Seu comando, se mostrado corretamente, tem sua sintaxe errada.

...-vf -r 29.97... < - isso está definindo o sinalizador de taxa de quadros como o argumento para a opção de filtro de vídeo. 29.97 é interpretado como o nome do arquivo de saída.

A outra coisa é que a imagem seqeunce está sendo interpretada como 25 fps (por padrão) e, assim, mesmo que seu comando funcionasse, sua saída teria quadros duplicados e seria 16% mais lenta.

Em vez disso, defina a entrada como 29.97 ou 30000/1001 para ser exato,

ffmpeg -framerate 30000/1001 -i /INPUT/FILE/SEQUENCE_%04d.jpg -c:v prores -profile:v 0 -c:a mp2 -timecode 09:08:52:00 /OUTPUT/FILE.mov
    
por 04.10.2017 / 07:21