On Wed, Jan 25, 2012 at 7:14 AM, Justin Ruggles <justin.rugg...@gmail.com> wrote: > On 01/25/2012 05:37 AM, Martin Storsjö wrote: > >> --- >> libavformat/movenc.c | 19 +++++++++++++++++-- >> 1 files changed, 17 insertions(+), 2 deletions(-) >> >> diff --git a/libavformat/movenc.c b/libavformat/movenc.c >> index dc0c040..6896519 100644 >> --- a/libavformat/movenc.c >> +++ b/libavformat/movenc.c >> @@ -349,6 +349,15 @@ static int mov_write_ms_tag(AVIOContext *pb, MOVTrack >> *track) >> return updateSize(pb, pos); >> } >> >> +static int mov_write_wfex_tag(AVIOContext *pb, MOVTrack *track) >> +{ >> + int64_t pos = avio_tell(pb); >> + avio_wb32(pb, 0); >> + ffio_wfourcc(pb, "wfex"); >> + ff_put_wav_header(pb, track->enc); >> + return updateSize(pb, pos); >> +} >> + >> static int mov_write_chan_tag(AVIOContext *pb, MOVTrack *track) >> { >> uint32_t layout_tag, bitmap; >> @@ -513,6 +522,8 @@ static int mov_write_audio_tag(AVIOContext *pb, MOVTrack >> *track) >> mov_write_ac3_tag(pb, track); >> else if(track->enc->codec_id == CODEC_ID_ALAC) >> mov_write_extradata_tag(pb, track); >> + else if(track->enc->codec_id == CODEC_ID_WMAPRO) >> + mov_write_wfex_tag(pb, track); >> else if(track->vosLen > 0) >> mov_write_glbl_tag(pb, track); >> >> @@ -762,9 +773,13 @@ static int mov_find_codec_tag(AVFormatContext *s, >> MOVTrack *track) >> { >> int tag = track->enc->codec_tag; >> >> - if (track->mode == MODE_MP4 || track->mode == MODE_PSP || track->mode >> == MODE_ISM) >> + if (track->mode == MODE_MP4 || track->mode == MODE_PSP) >> + tag = mp4_get_codec_tag(s, track); >> + else if (track->mode == MODE_ISM) { >> tag = mp4_get_codec_tag(s, track); >> - else if (track->mode == MODE_IPOD) >> + if (!tag && track->enc->codec_id == CODEC_ID_WMAPRO) >> + tag = MKTAG('w', 'm', 'a', ' '); > > > why is this separate fallback needed? does wmapro in mp4 not have an > object type that could be added to ff_mp4_obj_type? >
WMAPro does not have an assigned objectTypeIndication. Probably because objectTypeIndication is only relevant inside an elementary stream descriptor. _______________________________________________ libav-devel mailing list libav-devel@libav.org https://lists.libav.org/mailman/listinfo/libav-devel