Je veux ajouter une bande son audio.mp3 à un fichier video.mp4 sans son à l'aide d'un script bash, quelle est la syntaxe correcte de la ligne de commande "cvlc" "ffmpeg"?
J'ai enregistré la vidéo avec VLC et l'option --no-audio, il n'y a donc pas de paramètres tels que le débit binaire ou l'encodage qui peuvent être copiés à partir de la vidéo d'origine.
Exemple pour copie de flux , ou re-mux, la vidéo de video.mp4
(Entrée 0
) Et l'audio de audio.mp3
(Entrée 1
):
ffmpeg -i video.mp4 -i audio.mp3 -map 0:v -map 1:a -codec copy -shortest out.mp4
Cela évitera l'encodage et sera donc très rapide et n'affectera pas la qualité.
Vous pouvez dire à ffmpeg quels encodeurs utiliser si vous avez besoin de ré-encoder pour la taille ou si vous avez besoin de formats différents de ceux des entrées. Exemple pour ré-encoder en vidéo H.264 et audio AAC:
ffmpeg -i video.mp4 -i audio.mp3 -map 0:v -map 1:a -codec:v libx264 \
-preset medium -crf 23 -codec:a aac -b:a 192k -shortest output.mp4
L'option -map
Vous permet de spécifier le flux que vous souhaitez, par exemple, -map 0:v
Fait référence au (x) flux vidéo (s) de la première entrée. Si vous ne dites pas à ffmpeg quels flux vous voulez, il utilisera la valeur par défaut sélection de flux qui consiste à choisir un flux par type de flux. Les valeurs par défaut sont souvent correctes, mais il est recommandé d'être explicite afin que vous puissiez obtenir les résultats attendus.
L'option -shortest
Demande à ffmpeg de terminer le fichier de sortie lorsque les entrées de durée la plus courte se terminent.
L'utilisation d'une version récente de ffmpeg est toujours recommandée. La méthode la plus simple consiste à télécharger une version récente de ffmpeg , mais vous pouvez également suivre un guide pour compiler ffmpeg .