Vous pouvez faire une superposition d'image simple en utilisant la syntaxe suivante:
ffmpeg -i input.mp4 -i image.png \
-filter_complex "[0:v][1:v] overlay=25:25:enable='between(t,0,20)'" \
-pix_fmt yuv420p -c:a copy \
output.mp4
overlay=25:25
signifie que nous voulons positionner l'image à 25 pixels vers la droite et à 25 pixels vers le bas, provenant du coin supérieur gauche (0: 0).
enable='between(t,0,20)'
signifie que nous voulons que l'image s'affiche entre le deuxième 0 et le 20.
[0:v][1:v]
signifie que nous voulons que le premier fichier vidéo que nous importons avec -i
, dans notre cas input.mp4 ou comment ffmpeg le voit, le fichier d'entrée vidéo numéro 0, soit sous le fichier d'entrée vidéo 1, dans notre cas image.png. :v
signifie simplement que nous voulons la vidéo 0 et la vidéo 1. [0:a]
signifierait que nous voulons la première piste audio importée. Qui proviendrait également de input.mp4 mais pointerait vers la piste audio au lieu de la piste vidéo dans le fichier mp4.
Si vous souhaitez une certaine qualité d'image / certains paramètres et non les paramètres choisis par ffmpeg, ajoutez l'image et / ou les options d'encodage audio que vous souhaitez utiliser. L'encodeur vidéo par défaut sera x264. Consultez le guide d'encodage H.264 pour les paramètres possibles.
Le -acodec copy
/ -c:a copy
que vous avez dans votre commande fe réutiliserait simplement l'audio du fichier source. Bien que vous ne puissiez pas faire cela avec la vidéo bien sûr (dans ce cas), cela doit être transcodé car nous créons une nouvelle source vidéo.
Si vous souhaitez transcoder l'audio, supprimez la -c:a copy
partie. Vous devrez peut-être spécifier explicitement un encodeur, par exemple -c:a aac -strict experimental
. Voir le guide d'encodage AAC pour plus d'informations.