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


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?


103
2017-09-06 05:19


origine


Si vous n'avez pas vraiment besoin d'un MP3, je ne convertirais pas l'audio: MP4-> MP3 est une transformation avec perte, vous perdrez des informations supplémentaires. - Thom Wiggers
plus de ffmpeg pour Ubuntu 14.04 - Louis


Réponses:


La commande de base est la suivante:

ffmpeg -i filename.mp4 filename.mp3

ou

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

Vérifiez cette URL: Fichier MP4 en 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 juste avconv au lieu de ffmpeg pour les exemples ci-dessus.


118
2017-09-06 05:23



Je vous remercie! Cette qualité est la meilleure ou je peux faire mieux?
essayez avec 320kbs en.wikipedia.org/wiki/MP3#Bit_rate
plus de ffmpeg pour Ubuntu 14.04 - Louis
@Louis Vous pouvez toujours le télécharger depuis ffmpeg.org/download.html - slhck
@Louis - même chose pour 14.10, mais il est apparemment de retour en 15.04: askubuntu.com/questions/432542/... - Wilf


La meilleure façon d'encoder le MP3 est d'utiliser -q:a pour un débit binaire variable.

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

le q L'option ne peut être utilisée qu'avec libmp3lame et correspond au LAME -V option. Voir:


51
2017-11-07 05:21



@slhck ... c'est un bon point, mais je viens de tester un fichier vidéo et de laisser de côté -vn copie simplement 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 finalement joué aussi le lecteur de musique Android. Merci - michalzuber
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; faire ffmpeg -i "$ i" -q: un 0 -map un "$ (basename "$ {i / .mp4}"). mp3"; terminé; - kingSlayer