Comment puis-je obtenir le temps total d'un fichier mp3 en Java?
Les réponses fournies dans Comment puis-je obtenir un fichier audio temps total en Java? fonctionnent bien pour des fichiers wav, mais pas pour les fichiers mp3.
Ils sont (fichier):
AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(file);
AudioFormat format = audioInputStream.getFormat();
long frames = audioInputStream.getFrameLength();
double durationInSeconds = (frames+0.0) / format.getFrameRate();
et:
AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(file);
AudioFormat format = audioInputStream.getFormat();
long audioFileLength = file.length();
int frameSize = format.getFrameSize();
float frameRate = format.getFrameRate();
float durationInSeconds = (audioFileLength / (frameSize * frameRate));
Ils donnent le même résultat correct pour les fichiers wav, mais tort et à des résultats différents pour les fichiers mp3.
Une idée de ce que dois-je faire pour obtenir le fichier mp3 d'une durée de?
source d'informationauteur Tom Brito
Vous devez vous connecter pour publier un commentaire.
Utilisant MP3SPI:
Ici est la façon dont je obtenir le temps total d'un fichier .mp3, je suis en utilisant la bibliothèque est
Jlayer 1.0.1
Voici une explication détaillée du Fichier MP3 de la structure
http://www.autohotkey.com/forum/topic29420.html
Utilisation
jave-1.0.1.jar
bibliothèque.wav-alaw, wav-format ulaw, wav gsm, wav adpcm;
SingleChannel;
Exemple de Code:
J'ai essayé
Jlayer 1.0.1
mais il a échoué pour certains format MP3. Comme pour un autre libarayjaudiotagger-2.0.3.jar
il fonctionne très bien pour les formats MP3, mais il ne peut soutenir wav-pcm8/16.Je suis à l'ancienne, mais j'ai toujours simplement obtenir les spécifications pour MP3, écrire une fonction qui effectue des recherches sur le droit de bits, et de le trouver.
Si Winamp peut le déterminer par la lecture de la séquence de bits d'un fichier MP3, alors puis-je droit?
Et si vous le pouvez, je crois en toi, camarade!