From: Thibaut M. <tma...@us...> - 2005-10-02 19:03:51
|
Update of /cvsroot/xine/xine-lib/src/demuxers In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30098 Modified Files: demux_mpgaudio.c Log Message: Fixed overflow when computing bitrate. Index: demux_mpgaudio.c =================================================================== RCS file: /cvsroot/xine/xine-lib/src/demuxers/demux_mpgaudio.c,v retrieving revision 1.142 retrieving revision 1.143 diff -u -r1.142 -r1.143 --- demux_mpgaudio.c 1 Oct 2005 08:03:36 -0000 1.142 +++ demux_mpgaudio.c 2 Oct 2005 14:15:17 -0000 1.143 @@ -770,7 +770,7 @@ this->stream_length = (double)xing->stream_frames * this->cur_frame.duration; /* compute abr */ if (this->stream_length) { - this->br = (xing->stream_size * 8 * 1000) / this->stream_length; + this->br = ((uint64_t)xing->stream_size * 8 * 1000) / this->stream_length; } } else if (this->vbri_header) { @@ -781,7 +781,7 @@ this->stream_length = (double)vbri->stream_frames * this->cur_frame.duration; /* compute abr */ if (this->stream_length) { - this->br = (vbri->stream_size * 8 * 1000) / this->stream_length; + this->br = ((uint64_t)vbri->stream_size * 8 * 1000) / this->stream_length; } } @@ -807,9 +807,7 @@ lprintf("stream size: %lld, mp3 size: %lld\n", this->input->get_length(this->input), this->mpg_size); - lprintf("stream_length: %lld min %lld s\n", - ((uint64_t)this->stream_length / 1000) / 60, - ((uint64_t)this->stream_length / 1000) % 60); + lprintf("stream_length: %d ms\n", this->stream_length); /* set codec infos here * the decoder doesn't know if the stream is VBR |