FFMPEG Crossfade video cambia la risoluzione del video


1

Attualmente sto usando il comando di questa domanda per dissolvere due video:

dissolvenza incrociata tra 2 video usando ffmpeg

Il mio comando:

ffmpeg -i firstVideo.mp4 -i secondVideo.mp4 -f lavfi -i color=black -    filter_complex \
"[0:v]format=pix_fmts=yuva420p,fade=t=out:st=4:d=1:alpha=1,setpts=PTS-STARTPTS[va0];\
[1:v]format=pix_fmts=yuva420p,fade=t=in:st=0:d=1:alpha=1,setpts=PTS-STARTPTS+4/TB[va1];\
[2:v]scale=640x360,trim=duration=9[over];\
[over][va0]overlay[over1];\
[over1][va1]overlay=format=yuv420[outv]" \
 -vcodec libx264 -map [outv] output.mp4

Questa animazione con dissolvenza incrociata funziona bene, tranne per il fatto che riduce il video a 480x360 anziché i 640x360 desiderati. Le meta informazioni mostreranno erroneamente che le dimensioni sono 640x360, ma sono certo che non lo sono.

Sono anche certo che entrambi i video in ingresso siano esattamente 640x360.

Immagino che il restringimento sia dovuto al formato pixel yuva420p, ma non sono sicuro di quali altre opzioni ho. Ho provato a cambiare il formato dei pixel ma finora nulla ha funzionato.

Il comando indicato sopra viene eseguito senza errori.

Risposte:


1

Uso

ffmpeg -i firstVideo.mp4 -i secondVideo.mp4 -f lavfi -i "color=black:s=640x360:d=9" 
-filter_complex \
"[0:v]format=pix_fmts=yuva420p,fade=t=out:st=4:d=1:alpha=1,setpts=PTS-STARTPTS[va0];\
[1:v]format=pix_fmts=yuva420p,fade=t=in:st=0:d=1:alpha=1,setpts=PTS-STARTPTS+4/TB[va1];\
[2:v][va0]overlay[over1];\
[over1][va1]overlay=format=yuv420[outv]" \
 -vcodec libx264 -map [outv] output.mp4

Il filtro colorato produce un video 320x240 se non diversamente specificato. Il filtro di scala cerca di preservare le proporzioni di origine - 4: 3 in questo caso, quindi il video è codificato come 640x360 ma con un rapporto di visualizzazione di 4: 3 così mostra 480x360.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.