web-dev-qa-db-fra.com

Comment puis-je réparer une durée mp3 incorrecte?

Ma bibliothèque musicale contient un certain nombre de chansons qui affichent des valeurs de durée incorrectes et ne sont donc lues que partiellement dans Clementine. Dans Banshee et d'autres joueurs, ils affichent des valeurs de durée différentes et jouent parfois la chanson en entier.

Y at-il un moyen de résoudre ce problème sans avoir à "ré-encoder" la chanson?

21
RolandiXor

MP3 Diags peut corriger des durées incorrectes (et d’autres erreurs). C'est open source et dans les dépôts. C'est un outil graphique.

Installation

Sudo apt-get install mp3diags mp3diags-doc

Une autre option est MP3val , qui peut être utilisé via la ligne de commande ou via l'interface graphique:

Installation

Sudo apt-get install mp3val

Exemple d'utilisation

mp3val damaged.mp3 -f -t

-f: corriger les erreurs, -t: conserver l'horodatage d'origine

21
phoibos

Si vous ne voulez rien installer de nouveau, essayez avec ffmpeg :

ffmpeg -i file_orig.mp3 -acodec copy file_fixed.mp3
10
Alcaro

Mis à part les en-têtes VBR ne correspondant pas à l'audio réel (que vous utiliseriez mp3val pour corriger, comme indiqué dans l'autre réponse), cela peut également être causé par un fichier MP3 dont l'étiquette ID3 a une valeur incorrecte pour l'étiquette TLEN. . Vous pouvez résoudre ce problème en utilisant l'outil mid3v2 du package mutagen pour supprimer la balise (apparemment optionnelle):

$ mid3v2 --delete-frames=TLEN filename.mp3

Le lecteur de musique Quodlibet dispose également du plug-in "Fix MP3 Duration" que vous pouvez utiliser pour cela.

(Extrait de la FAQ de Quodlibet: http://quodlibet.readthedocs.org/en/latest/guide/faq.html )

1
nedned

mp3check a fonctionné parfaitement pour moi aussi avec des wildcards.

Sudo apt-get install mp3check

mp3check {filename or wildcard} --cut-junk-start --cut-junk-end --fix-headers
1
Dmitry Orlov