Vous avez quelques doutes par rapport à la commande ffmpeg suivante -
ffmpeg -f concat -i input.txt -loop 1 -t 8 -i inputImg.jpg -filter_complex "[1]format=rgba,fade=alpha=1:st=0:d=8,setpts=PTS+10/TB[v1];[0][v1]overlay=x=70:y=100:enable='between(t,2,10)'" -crf 22 -threads 2 -preset ultrafast output.mp4
1- effet de boucle sur la performance si je ne fournis pas -t 8
et juste utiliser shortest=1
dans le filtre de superposition - une vidéo de durée infinie sera-t-elle créée et la plus courte vidéo sera-t-elle sélectionnée?
2- qu'est-ce que setpts
faire? - J'ai mentionné -t 8
- Donc, il boucle pendant 8 secondes. Si je fais `setpts = PTS + 10 / TB 'augmente-t-il la vidéo en boucle à une durée de 18 ans où l'effet de fondu est compris entre 10 et 18 ans? Qu'y a-t-il de 0 à 10 secondes dans la vidéo en boucle?
3- comment 2 vidéos sont superposées - les deux vidéos sont-elles fusionnées à partir de 0 seconde?
4- Si je veux avoir un effet de fondu appliqué sur une image qui sera superposée à ma vidéo à la centième seconde, puis-je créer une vidéo en boucle de 100? - comment cela affectera-t-il la performance?
5- Le frame_no de main_video [0] peut-il être utilisé dans looped_video [1]?
6- Existe-t-il une méthode / alternative performante pour appliquer l'effet de fondu sur une image, en se basant sur frame_sequence, fade_in à partir du frame 30-35?
setpts
n'affecte pas la durée - seuls les horodatages sont modifiés? Et 5 - ce que je voulais dire, c’est que frame_no of stream [0] (qui est lu depuis le fichier input.txt) doit être utilisé lors de l’évaluation du fondu (pour calculer lesetpts
dynamiquement - Je veux utiliser enable (n, 30, 35) dans le filtre de superposition et calculer en conséquence les paramètres pour le fondu)?ffmpeg -f concat -i input.txt -loop 1 -t 1 -i inputImg.jpg -filter_complex "[1]format=rgba,fade=alpha=1:s=0:n=9,setpts=PTS+0/TB[v1];[0][v1]overlay=x=70:y=100:enable='between(n,0,9)'" -crf 22 -threads 2 -preset ultrafast output.mp4' - but in
s` etn
dansfade
, fait probablement référence aux images du flux [1] (le looped_video) et non du flux [0] (main_video lu à partir du fichier input.txt) - les commandes o / p partagées ici et celles de la question sont différentes.setpts
fait référence au flux sur lequel il opère.