On Mon, Aug 03, 2015 at 11:16:12PM +0200, Carl Eugen Hoyos wrote: > Hi! > > Attached patch fixes ticket #4747 and should not introduce any > theoretical regressions. > > Please review, Carl Eugen
> mov.c | 22 ++++++++++++++++++++++
> 1 file changed, 22 insertions(+)
> ffe1a030382f6bc11a5a58ab3cd5e89f8a354529 patchalacwave2.diff
> diff --git a/libavformat/mov.c b/libavformat/mov.c
> index 154d2f8..f3cb71f 100644
> --- a/libavformat/mov.c
> +++ b/libavformat/mov.c
> @@ -1435,6 +1435,28 @@ static int mov_read_wave(MOVContext *c, AVIOContext
> *pb, MOVAtom atom)
> if (ret < 0)
> return ret;
> } else if (atom.size > 8) { /* to read frma, esds atoms */
> + if (st->codec->codec_id == AV_CODEC_ID_ALAC && atom.size >= 24) {
> + uint64_t buffer = avio_rb64(pb);
> + atom.size -= 8;
> + if ( (buffer & 0xFFFFFFFF) == MKBETAG('f','r','m','a')
> + && buffer >> 32 <= atom.size
> + && buffer >> 32 >= 8) {
> + avio_skip(pb, (buffer >> 32) - 8);
> + atom.size -= (buffer >> 32) - 8;
skiping the frma atom instead of passing it to mov_read_default()
(which might at some point in the future do somehing with it)
does not feel completely ideal
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
Everything should be made as simple as possible, but not simpler.
-- Albert Einstein
signature.asc
Description: Digital signature
_______________________________________________ ffmpeg-devel mailing list [email protected] http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
