[FFmpeg-devel] [PATCH] allow high audio sample rates in mov/mp4 muxer
Justin Ruggles
justin.ruggles
Mon Jun 14 03:16:23 CEST 2010
Michael Niedermayer wrote:
> On Sun, Jun 13, 2010 at 12:52:29PM -0400, Justin Ruggles wrote:
>> Baptiste Coudurier wrote:
>>
>>> On 6/12/10 8:26 AM, Justin Ruggles wrote:
>>>> Baptiste Coudurier wrote:
>>>>
>>>>> On 06/10/2010 01:27 PM, Justin Ruggles wrote:
>>>>>> Alex Converse wrote:
>>>>>>
>>>>>>> On Thu, Jun 10, 2010 at 1:54 PM, Justin Ruggles
>>>>>>> <justin.ruggles at gmail.com> wrote:
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> This patch allows the use of sample rates> 65535 in mov/mp4 (e.g. 96kHz
>>>>>>>> and 192kHz). I don't know where to find this info in the MP4 spec, but
>>>>>>>> this is how the MPEG-4 ALS Reference Software does it.
>>>>>>>>
>>>>>>> It might also be a good idea to look at the AAC 88.2/96 kHz test vectors.
>>>>>> Well, it seems that it shouldn't be 0, but should be the actual sample
>>>>>> rate using more than 16 bits. I guess the reserved value that follows
>>>>>> is no longer reserved. I'll send a new patch soon.
>>>>> Humm, I don't feel confident about this.
>>>>> Can we ask ISO about this ?
>>>> Ok, so after some more research, it looks like the reference samples and
>>>> the specs are in agreement that the sample rate field is 16.16 fixed
>>>> point and that only the low 16 bits of the sample rate are written.
>>> Can you please quote the specs ? Just for reference.
>>
>> ISO 14496-12 3rd Ed. 2008
>> 8.5.2.3 Sample Description Box, Semantics
>> SampleRate is the sampling rate expressed as a 16.16 fixed-point number
>> (hi.lo)
>
> Numbers 0.0 - 65535.65535 can be expressed as 16.16 fixed point.
> Numbers outside this range cannot be expressed as fixed point unless you
> define one of the used concepts like "expressed" differently from common
> sense.
> Thus it follows that in ISO 14496-12 3rd Ed. 2008 the existence of a
> Sample Description Box in a file is incompatible with sampling rates
> beyond 65535.65535.
>
> Of course this conclusion can only be drawn if we take the quoted text
> litterally and assume the spec is written by a person who used exact
> language.
> I tend toward asking ISO as well and also to point out that the spec is
> unclear either way.
The spec is certainly unclear and some ISO references differ:
- The reference samples for 96kHz AAC write a value of 30464.0000, which
is the low 16 bits of 96000.
- The reference encoder for ALS writes 0 if the sample rate is > 65535,
otherwise it writes the actual sample rate. This most recent version of
the ALS reference encoder is only a few months old.
So Who/Where do we ask ISO? Alex, any can you shed any light on this?
-Justin
More information about the ffmpeg-devel
mailing list