Ffmpeg ignorando -desoffset?

0

Eu estou combinando duas seqüências de imagens lado-a-lado em um único vídeo. A primeira dessas sequências precisa ser executada durante toda a duração do vídeo, mas a segunda seqüência deve começar após 50 segundos.

Estou chamando ffmpeg da seguinte forma:

ffmpeg -f image2 -r 25 -i ./sequence1/frame.%04d.png -f image2 -r 25 -itsoffset 00:00:50 -i ./sequence2/frame%05d.png -filter_complex '[0:v]pad=iw+300:ih[int];[int][1:v]overlay=1620:0[vid]' -map [vid] -c:v libx265 -crf 23 -preset slow output.mp4

Infelizmente, o ffmpeg parece estar ignorando meu argumento -itsoffset (ou estou entendendo mal como esse argumento funciona?), já que ambas as seqüências começam no início do vídeo.

Idéias?

    
por Ingo 01.10.2016 / 04:02

1 resposta

0

A opção -itsoffset deve ter sido aplicada quando a entrada contém registros de data e hora. suas entradas são imagens e não têm registro de data e hora, portanto a opção itsoffset não tem efeito sobre elas.

1-Para o seu objetivo:

O fluxo com base em imagens que foi atrasado deve ser convertido em fluxo de vídeo: ffmpeg -f image2 -framerate 25 -i ./sequence2/frame%05d.png -c:v libx265 -crf 23 -preset slow -pix_fmt yuv420p ./sequence2/sequence2.mp4

Agora você pode usar este arquivo mp4 em vez da segunda sequência com a opção itsoffset . ffmpeg -f image2 -r 25 -i ./sequence1/frame.%04d.png -itsoffset 00:00:50 -i ./sequence2/sequence2.mp4 -filter_complex '[0:v]pad=iw+300:ih[int];[int][1:v]overlay=1620:0[vid]' -map [vid] -c:v libx265 -crf 23 -preset slow output.mp4

2- Para anotar:

neste cenário, temos um ciclo de codificação e decodificação que causa alguma perda de qualidade. mas não é muito para se preocupar.

-r e -framerate não são as mesmas opções e, nesses casos, é melhor usar -framerate em vez de -r

    
por 04.10.2016 / 14:26

Tags