[FFmpeg-devel] [PATCH] als in mov
Justin Ruggles
justin.ruggles
Sun Nov 22 19:15:01 CET 2009
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.
>>>>> 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?
-Justin
More information about the ffmpeg-devel
mailing list