1
0
Fork 0
forked from len0rd/rockbox

Rather obvious simplification of the mpeg frametime fraction calculation.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7562 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Jens Arnold 2005-09-25 19:07:56 +00:00
parent 87ebd361e2
commit 893669cc10

View file

@ -158,23 +158,18 @@ static bool mp3headerinfo(struct mp3info *info, unsigned long header)
/ info->frequency + info->padding; / info->frequency + info->padding;
} }
/* Frametime fraction calculation. /* Frametime fraction denominator */
This fraction is reduced as far as possible. */ if (freqindex != 0) { /* 48/32/24/16/12/8 kHz */
if (freqindex != 0) { /* 48/32/24/16/12/8 kHz */ info->ft_den = 1; /* integer number of milliseconds */
/* integer number of milliseconds, denominator == 1 */
info->ft_num = 1000 * info->frame_samples / info->frequency;
info->ft_den = 1;
} }
else { /* 44.1/22.05/11.025 kHz */ else { /* 44.1/22.05/11.025 kHz */
if (info->layer == 0) { if (info->layer == 0) /* layer 1 */
info->ft_num = 147000 * 384 / info->frequency;
info->ft_den = 147; info->ft_den = 147;
} else /* layer 2+3 */
else {
info->ft_num = 49000 * info->frame_samples / info->frequency;
info->ft_den = 49; info->ft_den = 49;
}
} }
/* Frametime fraction numerator */
info->ft_num = 1000 * info->ft_den * info->frame_samples / info->frequency;
info->channel_mode = (header & CHANNELMODE_MASK) >> 6; info->channel_mode = (header & CHANNELMODE_MASK) >> 6;
info->mode_extension = (header & MODE_EXT_MASK) >> 4; info->mode_extension = (header & MODE_EXT_MASK) >> 4;