Não é possível fazer vídeo a partir de imagens usando o ffmpeg

0

Este é o meu log enquanto faço imagens do ffmpeg:

Incompatible pixel format 'yuvj420p' for codec 'mpeg4', auto-selecting format 'yuv420p'
[buffer @ 0x9e4f20] w:532 h:800 pixfmt:yuvj420p
[avsink @ 0x9f6240] auto-inserting filter 'auto-inserted scaler 0' between the filter 'src' and the filter 'out'
[scale @ 0xa86ac0] w:532 h:800 fmt:yuvj420p -> w:532 h:800 fmt:yuv420p flags:0x4
Output #0, mp4, to 'output2.mp4':
  Metadata:
    encoder         : Lavf53.21.1
    Stream #0.0: Video: mpeg4, yuv420p, 532x800 [PAR 1:1 DAR 133:200], q=2-31, 200 kb/s, 32 tbn, 32 tbc
Stream mapping:
  Stream #0.0 -> #0.0
Press ctrl-c to stop encoding
[buffer @ 0x9e4f20] Changing frame properties on the fly is not supported.
    Last message repeated 43 times
frame=    1 fps=  0 q=1.0 Lsize=      58kB time=0.03 bitrate=15312.1kbits/s    
video:58kB audio:0kB global headers:0kB muxing overhead 1.321295%

Este é o comando que eu executei:

ffmpeg -r 32 -qscale 1 -i %05d.morph.jpg output2.mp4 

O arquivo output2.mp4 mal funciona, pois mostra apenas uma imagem e dura por um segundo insuficiente.

Onde estou indo errado?

    
por kasperasky 18.11.2013 / 20:52

1 resposta

0

A mensagem "Alterando as propriedades do quadro em tempo real não é suportada" é enviada porque todo o seu JEPG não tem o mesmo tamanho (como o primeiro 532x800)

Para lidar com esse caso, é possível dimensionar todas as imagens de entrada JPEG para um determinado tamanho:

ffmpeg -r 32 -qscale 1 -i %05d.morph.jpg -vf scale=532:800 output2.mp4 

Para mais informações sobre redimensionamento e dimensionamento com o ffmpeg, consulte essa página

    
por 18.11.2013 / 23:17

Tags