[FFmpeg-devel] [PATCH] als in mov

Baptiste Coudurier baptiste.coudurier
Sun Nov 22 21:04:19 CET 2009


On 11/22/09 10:15 AM, Justin Ruggles wrote:
> Baptiste Coudurier wrote:
>
>> On 11/21/09 8:18 PM, Justin Ruggles wrote:
>>> Justin Ruggles wrote:
>>>
>>>> Justin Ruggles wrote:
>>>>
>>>>> Baptiste Coudurier wrote:
>>>>>
>>>>>> On 11/21/09 7:19 PM, Justin Ruggles wrote:
>>>>>>> Hi,
>>>>>>>
>>>>>>> This patch fixes muxing of MPEG-4 ALS in MOV.
>>>>>>>
>>>>>> Can this be verified with any other decoder than lavc ?
>>>>>> Does reference decoder works ?
>>>>> The reference decoder does not support mov.
>>
>> So what's the use ?
>> If there is no usage, I'm not sure muxing in .mov is worth.
>
> Because mov supports mpeg-4 audio and als is mpeg-4 audio.

Well.

>>>>>> Besides an object type to put in esds is needed, and which fourcc is used ?
>>>>> 'mp4a', same as aac.  and the object type is also the same as aac and is
>>>>> already in ff_mp4_obj_type[].
>>>> oops... it's not in ff_mp4_obj_type[]. i was looking in the wrong tree.
>>> and... patch attached.  now it's time for bed i think.
>>>
>>> -Justin
>>>
>>>
>>>
>>> mp4als_mov_4.patch
>>>
>>>
>>> Index: libavformat/isom.c
>>> ===================================================================
>>> --- libavformat/isom.c	(revision 20571)
>>> +++ libavformat/isom.c	(working copy)
>>> @@ -32,6 +32,7 @@
>>>        { CODEC_ID_MPEG4     , 0x20 },
>>>        { CODEC_ID_H264      , 0x21 },
>>>        { CODEC_ID_AAC       , 0x40 },
>>> +    { CODEC_ID_MP4ALS    , 0x40 },
>>>        { CODEC_ID_MPEG2VIDEO, 0x61 }, /* MPEG2 Main */
>>>        { CODEC_ID_MPEG2VIDEO, 0x60 }, /* MPEG2 Simple */
>>>        { CODEC_ID_MPEG2VIDEO, 0x62 }, /* MPEG2 SNR */
>>
>> This hunk is ok anytime, and it will fix mp4 muxing, which is not
>> working either atm.
>
> Ah, you're right. I was testing with the wrong tree. Applied.
>
>>   >  [...]
>>   >
>>> Index: libavformat/movenc.c
>>> ===================================================================
>>> --- libavformat/movenc.c	(revision 20571)
>>> +++ libavformat/movenc.c	(working copy)
>>> @@ -371,7 +371,8 @@
>>>        put_tag(pb, "frma");
>>>        put_le32(pb, track->tag);
>>>
>>> -    if (track->enc->codec_id == CODEC_ID_AAC) {
>>> +    if (track->enc->codec_id == CODEC_ID_AAC ||
>>> +        track->enc->codec_id == CODEC_ID_MP4ALS) {
>>
>> I think codec_tag == AV_RL32("mp4a") is better here. This fourcc means
>> esds atom is required.
>
> So do you agree or disagree with writing als in mov?

Well, if something ever supports it in mov there a big chance it will be 
muxed this way. So it's fine.

-- 
Baptiste COUDURIER
Key fingerprint                 8D77134D20CC9220201FC5DB0AC9325C5C1ABAAA
FFmpeg maintainer                                  http://www.ffmpeg.org



More information about the ffmpeg-devel mailing list