Utilisation d' overlay
un filtre vidéo pour ajouter un logo à une vidéo:
ffmpeg -i video.mp4 -i logo.png -filter_complex "[0:v][1:v]overlay" \
-codec:a copy out.mp4
Pour comprendre cette commande, vous devez savoir ce qu'est un spécificateur de flux et lire l' Introduction au filtrage FFmpeg vous aidera. [0:v]
fait référence au ou aux flux vidéo de la première entrée ( video.mp4
) et se [1:v]
réfère au flux vidéo de la deuxième entrée ( logo.mp4
). C'est ainsi que vous pouvez savoir overlay
quelles entrées utiliser. Vous pouvez omettre [0:v][1:v]
, et overlay
fonctionnera toujours, mais il est recommandé d'être explicite et de ne pas s'appuyer sur des valeurs par défaut éventuellement inconnues.
Par défaut, le logo sera placé en haut à gauche.
L'utilisation -codec:a copy
permet de copier en continu l'audio. Cela re-multiplexe simplement l'audio au lieu de le ré-encoder. Considérez-le comme un "copier-coller" de l'audio.
Déplacer le logo
Cet exemple déplace le logo de 10 pixels vers la droite et de 10 pixels vers le bas:
ffmpeg -i video.mp4 -i logo.png -filter_complex "[0:v][1:v]overlay=10:10" \
-codec:a copy out.mp4
Cet exemple déplace le logo de 10 pixels du côté droit et de 10 pixels vers le bas:
ffmpeg -i video.mp4 -i logo.png -filter_complex \
"[0:v][1:v]overlay=main_w-overlay_w-10:10" -codec:a copy out.mp4
main_w
fait référence à la largeur de l'entrée "principale" (l'arrière-plan ou [0:v]
), et overlay_w
fait référence à la largeur de l'entrée "superposition" (le logo ou [1:v]
). Ainsi, dans l'exemple, cela peut être traduit en overlay=320-90-10:10
ou overlay=220:10
.
Synchronisation de la superposition
Certains filtres peuvent gérer l' édition de la chronologie, ce qui vous permet d'utiliser des expressions arithmétiques pour déterminer quand un filtre doit être appliqué. Reportez-vous à ffmpeg -filters
pour voir quels filtres prennent en charge l'édition de la chronologie.
Cet exemple montrera le logo jusqu'à 30 secondes:
ffmpeg -i video.mp4 -i logo.png -filter_complex \
"[0:v][1:v]overlay=10:10:enable=between(t\,0\,30)" -codec:a copy out.mp4
Si vous souhaitez estomper le logo, reportez-vous à la réponse de mark4o .