So erhalten Sie die tatsächliche tatsächliche Dauer einer MP3-Datei (VBR oder CBR) auf der Serverseite

Ich zur Berechnung der Dauer von MP3-Dateien auf server-Seite mit dem ffmpeg -, die schien zu funktionieren. Heute habe ich entdeckt, dass einige der Berechnungen waren falsch. Irgendwie, aus irgendeinem Grund, ffmpeg verrechnen die Dauer und es scheint zu geschehen mit variabler bit-rate von mp3-Dateien nur.

Beim testen das lokal bemerkte ich, dass ffmpeg-gedruckt von zwei zusätzlichen Zeilen in grün.

Befehl verwendet:

ffmpeg -i song_9747c077aef8.mp3

ffmpeg sagt:

[mp3 @ 0x102052600] max_analyze_duration 5000000 reached at 5015510
[mp3 @ 0x102052600] Estimating duration from bitrate, this may be inaccurate

Nach einem schönen, warmen google-session entdeckte ich einige Beiträge, aber keine Lösung gefunden wurde.

Ich habe dann versucht, erhöhen Sie die maximale Dauer:

ffmpeg -analyzeduration 999999999 -i song_9747c077aef8.mp3

Danach ffmpeg wieder nur die zweite Zeile:

[mp3 @ 0x102052600] Estimating duration from bitrate, this may be inaccurate

Aber in beiden Fällen die berechnete Dauer war einfach nur falsch. Vergleich zum VLC habe ich gemerkt, dass es die Dauer ist richtig.

Nach mehr Forschung ich stolperte über mp3info - die ich installiert und verwendet werden.

mp3info -p "%S" song_9747c077aef8.mp3

mp3info dann wieder die RICHTIGE Dauer, sondern nur als ganze Zahl, die kann ich nicht verwenden, da Brauch ich eine genauere Zahl hier. Der Grund dafür war, erklärte in einem Kommentar unten, durch den Benutzer blahdiblah - mp3info ist einfach ziehen ID3-Infos aus der Datei und nicht tatsächlich durchführen Berechnungen.

Ich habe auch versucht mit mplayer zum abrufen der Dauer, sondern nur wie ffmpeg, mplayer ist wieder der falsche Wert.

InformationsquelleAutor der Frage SquareCat | 2012-05-03

Schreibe einen Kommentar