Comment convertir une vidéo MP4 en audio MP3 avec FFmpeg?


119

J'ai besoin d'extraire une piste audio MP3 d'une vidéo MP4 avec ffmpeg. Je peux le faire pour .flv -> mp3, mais je ne connais pas les paramètres de ligne de commande pour mp4-> mp3. Par exemple, flv -> mp3:

ffmpeg -i video.flv -acodec copy audio.mp3

Quels paramètres dois-je utiliser pour mp4 -> mp3?


2
Si vous n'avez pas vraiment besoin d'un MP3, je ne convertirais pas l'audio: MP4-> MP3 est une transformation avec pertes, vous perdrez des informations supplémentaires sur la source.
— Thom Wiggers

pas plus de ffmpeg pour Ubuntu 14.04
— Louis

@ThomWiggers est-il nécessairement une perte? Je ne sais pas comment les mp4 sont encodés, mais tant que vous pouvez séparer la vidéo et l'audio, cela ne devrait pas être nécessaire
— franche

La version originale de cette question n'indiquait pas clairement comment l'audio était codé - cela avait été modifié lors des modifications. Le remixage ne doit pas être une perte.
— Thom Wiggers le

Réponses:


148

La commande de base est:

ffmpeg -i filename.mp4 filename.mp3

ou

ffmpeg -i video.mp4 -b:a 192K -vn music.mp3

Vérifiez cette URL: Vidéo MP4 en fichier MP3 avec ffmpeg (Ubuntu 9.10 Karmic Koala)

Remarque: Ubuntu ne fournit pas FFmpeg, mais le fork nommé Libav . La syntaxe est la même - utilisez avconvplutôt que ffmpegpour les exemples ci-dessus.


2
Je vous remercie! Cette qualité est la meilleure, ou puis-je faire mieux?


pas plus de ffmpeg pour Ubuntu 14.04
— Louis

2
@Louis Vous pouvez toujours le télécharger à partir de ffmpeg.org/download.html
— slhck

1
@Louis - idem pour 14h10, mais il est apparemment de retour dans 15h04
— Wilf

52

La meilleure façon d’encoder le MP3 est d’utiliser le -q:adébit binaire variable.

ffmpeg -i k.mp4 -q:a 0 -map a k.mp3

L' qoption ne peut être utilisée qu'avec libmp3lame et correspond à l' -Voption LAME . Voir:


@slhck ... c'est un bon point, mais je viens de tester un fichier vidéo et laisser de côté ne fait -vnque copier le flux audio. Je suppose que ffmpeg doit avoir un moyen de détecter la différence (je viens de vérifier un fichier avec ffprobe, et la vidéo a été flux 1 plutôt que 0 habituelle, et avait des métadonnées: comment : Cover (front))
— evilsoup

Celui-ci a enfin joué aussi sur le lecteur de musique Android. Merci
— Michalzuber

1
Et pour convertir tout le répertoire (y compris les noms de fichiers avec des espaces) avec la commande ci-dessus: for i in * .mp4; do ffmpeg -i "$ i" -q: un 0 -map un "$ (nom de base" $ {i / .mp4} "). mp3"; terminé;
— KingSlayer

En quoi le ffmpeg -i vid.mp4 audio.mp3fichier .mp3 résultant est-il différent de la commande vanilla dans la réponse de @Naga Harish M? Moins de perte?
— franc
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.