From 9aeefa5ebe4edd597bccb488ca0aac44be5ee9ef Mon Sep 17 00:00:00 2001 From: jules Date: Mon, 23 Dec 2013 13:09:29 +0000 Subject: [PATCH] Better seeking in mp3 reader. --- .../juce_audio_formats/codecs/juce_MP3AudioFormat.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/modules/juce_audio_formats/codecs/juce_MP3AudioFormat.cpp b/modules/juce_audio_formats/codecs/juce_MP3AudioFormat.cpp index 226b374a2c..8a7033a4b1 100644 --- a/modules/juce_audio_formats/codecs/juce_MP3AudioFormat.cpp +++ b/modules/juce_audio_formats/codecs/juce_MP3AudioFormat.cpp @@ -3095,7 +3095,14 @@ private: const int64 streamSize = stream.stream.getTotalLength(); if (streamSize > 0) - numFrames = (streamSize - streamStartPos) / (stream.frame.frameSize); + { + const int bytesPerFrame = stream.frame.frameSize + 4; + + if (bytesPerFrame == 417 || bytesPerFrame == 418) + numFrames = roundToInt ((streamSize - streamStartPos) / 417.95918); // more accurate for 128k + else + numFrames = (streamSize - streamStartPos) / bytesPerFrame; + } } return numFrames * 1152;