1 votes

FFMPEG - Combinaison par lots de la vidéo H.264 et de l'audio .WAV séparé sous Windows

J'utilise ffmpeg pour la première fois et j'essaie de muxer une vidéo h.264 .mp4 avec un son .wav séparé/secondaire, sans ré-encoder quoi que ce soit du côté vidéo. Je voudrais que l'audio final soit au format .aac (même codec que l'audio du fichier h.264).

Essentiellement, je veux simplement superposer une piste audio supplémentaire (commentaire) de longueur équivalente à la vidéo. J'essaie de contourner l'incapacité de Premiere à importer correctement le format h.264 en éditant l'audio .wav séparément et en le combinant avec le fichier original sans jamais le faire passer par Premiere ou un autre éditeur. Ce programme semble être le meilleur moyen de le faire rapidement.

Je vais faire cela par lots, donc toute suggestion sur la façon de mettre en file d'attente plusieurs travaux serait appréciée. Les seuls conseils de mise en file d'attente que j'ai trouvés utilisaient du code Linux.

Si vous avez le temps de répondre, expliquez-moi ça comme si j'avais 5 ans, s'il vous plaît. Je suis un utilisateur expérimenté, mais totalement novice dans cette façon de travailler avec le contenu, orientée ligne de commande. Je ne suis pas sûr de faire tout ce qui est droite.

Et aussi : J'utilise Windows.

1voto

Gyan Points 29437

La ligne de commande FFmpeg de base pour votre utilisation est la suivante

ffmpeg -i video.mp4 -i audio.wav -map 0 -map 1:a -c:v copy -c:a:0 copy -c:a:1 aac video-new.mp4

-map 0 signifie inclure tous les flux à partir de la première entrée - l'index FFmpeg commence à zéro. De même, map 1:a signifie inclure tous les flux audio de la 2ème entrée. -map 1 aurait suffi puisque les fichiers WAV ne contiennent que des flux audio.

-c:v copy signifie que tous les flux vidéo inclus dans la sortie doivent être copiés, donc pas de ré-encodage.

-c:a:0 copy signifie le premier flux audio dans le sortie doit être copié également. L'ordre des flux de sortie ici est décidé par l'ordre des arguments de la carte. Puisque -map 0 est placé en premier, les flux audio et vidéo de ce fichier seront empilés en premier dans la sortie. Ainsi, le premier flux audio dans la sortie sera celui de la première entrée, c'est-à-dire video.mp4.

-c:a:1 aac des moyens pour encoder le second flux audio dans la sortie avec l'encodeur AAC (natif).


Sous Windows, vous pouvez utiliser l'option Avanti Interface graphique pour effectuer des opérations par lots. Lisez le lien pour les instructions de configuration - assez simple.

Les paramètres de votre fenêtre GUI principale devraient ressembler à ceci :

enter image description here

Après avoir effectué un seul travail à partir de la fenêtre principale, vous pouvez charger le gestionnaire de contrôle des travaux, disponible dans le menu déroulant lorsque vous cliquez sur l'icône en haut à gauche.

Ça devrait ressembler à ça :

Avanti Job Manager

Pour chaque paire vidéo/audio correspondante que vous ajoutez, assurez-vous de ne pas marquer le fichier audio afin qu'Avanti sache qu'il fait partie de la même tâche que l'entrée vidéo qui le précède. Sélectionnez votre chemin de destination (4ème icône en haut à partir de la gauche) pour être différent du dossier contenant vos fichiers source. Avanti nommera le fichier de sortie de la même façon que la première entrée (la vidéo) donc vous aurez une mauvaise surprise si vous ne prenez pas soin de cela.

C'est à peu près tout.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X