mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2025-01-27 01:33:20 +00:00
mov: move stsd finalization to an appropriate place
mov_finalize_stsd_codec() parses stream information from the ALAC extradata, so run it after the extradata processing is completed in mov_read_stsd(). Fixes playback of 96kHz ALAC streams muxed by qaac or the reference alac encoder. Adapted from an FFmpeg patch by Hendrik Leppkes <h.leppkes@gmail.com> Bug-Id: 1072
This commit is contained in:
parent
3050dabaa9
commit
defe307fb2
@ -1857,7 +1857,7 @@ int ff_mov_read_stsd_entries(MOVContext *c, AVIOContext *pb, int entries)
|
||||
if (pb->eof_reached)
|
||||
return AVERROR_EOF;
|
||||
|
||||
return mov_finalize_stsd_codec(c, pb, st, sc);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int mov_read_stsd(MOVContext *c, AVIOContext *pb, MOVAtom atom)
|
||||
@ -1913,7 +1913,7 @@ static int mov_read_stsd(MOVContext *c, AVIOContext *pb, MOVAtom atom)
|
||||
}
|
||||
memcpy(st->codecpar->extradata, sc->extradata[0], sc->extradata_size[0]);
|
||||
|
||||
return 0;
|
||||
return mov_finalize_stsd_codec(c, pb, st, sc);
|
||||
fail:
|
||||
av_freep(&sc->extradata);
|
||||
av_freep(&sc->extradata_size);
|
||||
|
Loading…
Reference in New Issue
Block a user