I am having some problems finding the correct values for some calculations. For the frame size, I use the following formula:
CODE
Frame Number = Audio Size / (Coefficient * Bit Rate * 1000 / Sampling Rate + Padding)
Here is a table with the coefficient values I use:
QUOTE
MPEG 1 Layer 1 = 48
MPEG 1 Layer 2 = 144
MPEG 1 Layer 3 = 144
MPEG 2(.5) Layer 1 = 24
MPEG 2(.5) Layer 2 = 144
MPEG 2(.5) Layer 3 = 72
MPEG 1 Layer 2 = 144
MPEG 1 Layer 3 = 144
MPEG 2(.5) Layer 1 = 24
MPEG 2(.5) Layer 2 = 144
MPEG 2(.5) Layer 3 = 72
For the duration, here is my formula:
CODE
Duration = Frame Number * Sample Size / Sampling Rate
And here is my table with the sample sizes:
QUOTE
MPEG 1 Layer 1 = 384
MPEG 1 Layer 2 = 1152
MPEG 1 Layer 3 = 1152
MPEG 2(.5) Layer 1 = 192
MPEG 2(.5) Layer 2 = 1152
MPEG 2(.5) Layer 3 = 576
MPEG 1 Layer 2 = 1152
MPEG 1 Layer 3 = 1152
MPEG 2(.5) Layer 1 = 192
MPEG 2(.5) Layer 2 = 1152
MPEG 2(.5) Layer 3 = 576
In "amiga_mpega.c" however, I found the following:
CODE
static const int smpls[2][4]={
/* Layer x I II III */
{0,384,1152,1152}, /* MPEG-1 */
{0,384,1152, 576} /* MPEG-2(.5) */
};
As you can see, the MPEG 2(.5) Layer 1 value is 384 and not 192 as I suppose.
Could someone please tell me what the right values are?
Regards,
Sebastian Mares