Table des matières
Combiner une piste audio et une piste vidéo
Cas d'utilisation
Je dispose d'une video sous forme de deux fichiers : l'un pour la piste audio, l'autre pour la piste vidéo. Je souhaite les fusionner dans un seul fichier vidéo en limitant les ré-encodages.
Sous-cas
Je souhaitais télécharger une vidéo sur Youtube. Malheureusement, elle n'était pas proposée sous un format audio-vidéo qui me convenait. En revanche, elle était proposée sous forme de téléchargement séparés, avec le format que je voulais. J'ai donc effectué les 2 téléchargements qui m'ont donné deux fichiers.
Solution
sources :
Sans réencodage audio
Pour que ce soit possible il faut les formats audio et vidéo soient compatibles avec le type de fichier qu'on veut produire. La commande ffprobe est une alliée sûre pour savoir ce que votre fichier a dans le ventre…
ffprobe mon-fichier.ext
L'assemblage se fait avec ffmpeg :
ffmpeg -i video.mp4 -i audio.m4a -c:v copy -c:a copy output.mp4
“-c:v” et “-c:a” permettent de définir le codec utilisé pour le réencodage. “copy” indique un codec fictif qui signifie qu'on ne transcode pas.
Avec ré-encodage
ffmpeg -i video.mp4 -i audio.wav -c:v copy -c:a aac output.mp4
Dans ce cas, on ré-encode (avec pertes) le fichier d'entrée du format wav/pcm au format aac pour s'assurer que le flux audio du fichier de sortie mp4 est compatible avec le conteneur mp4.