Commit e0a8c179 authored by Eric Wong's avatar Eric Wong

mp3_plugin.c: fix compilation with -pedantic and/or gcc 2.95

git-svn-id: https://svn.musicpd.org/mpd/trunk@4876 09075e82-0dd4-0310-85a5-a0d7c8717e4f
parent e1988266
...@@ -651,23 +651,27 @@ static int decodeFirstFrame(mp3DecodeData * data, DecoderControl * dc, ...@@ -651,23 +651,27 @@ static int decodeFirstFrame(mp3DecodeData * data, DecoderControl * dc,
/* /*
* Attempt to calulcate the length of the song from filesize * Attempt to calulcate the length of the song from filesize
*/ */
size_t offset = data->inStream->offset; {
mad_timer_t duration = data->frame.header.duration; size_t offset = data->inStream->offset;
float frameTime = ((float)mad_timer_count(duration, MAD_UNITS_MILLISECONDS)) / 1000; mad_timer_t duration = data->frame.header.duration;
float frameTime = ((float)mad_timer_count(duration,
if (data->stream.this_frame != NULL) MAD_UNITS_MILLISECONDS)) / 1000;
offset -= data->stream.bufend - data->stream.this_frame;
else if (data->stream.this_frame != NULL)
offset -= data->stream.bufend - data->stream.buffer; offset -= data->stream.bufend - data->stream.this_frame;
else
if (data->inStream->size >= offset) { offset -= data->stream.bufend - data->stream.buffer;
data->totalTime = ((data->inStream->size - offset) * 8.0) / (data->frame).header.bitrate;
data->maxFrames = data->totalTime / frameTime + FRAMES_CUSHION; if (data->inStream->size >= offset) {
} else { data->totalTime = ((data->inStream->size - offset) *
data->maxFrames = FRAMES_CUSHION; 8.0) / (data->frame).header.bitrate;
data->totalTime = 0; data->maxFrames = data->totalTime / frameTime +
FRAMES_CUSHION;
} else {
data->maxFrames = FRAMES_CUSHION;
data->totalTime = 0;
}
} }
/* /*
* if an xing tag exists, use that! * if an xing tag exists, use that!
*/ */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment