From 58e555d4baa43eb0ee60fe62650faed676fd823b Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Sat, 17 Jul 2004 21:01:03 +0000 Subject: [PATCH] mov_read_elst fix, based upon a patch by (Sebastien Bechet ) Originally committed as revision 3327 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavformat/mov.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/libavformat/mov.c b/libavformat/mov.c index c085088..b4676df 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -1431,11 +1431,18 @@ static int mov_read_cmov(MOVContext *c, ByteIOContext *pb, MOV_atom_t atom) /* edit list atom */ static int mov_read_elst(MOVContext *c, ByteIOContext *pb, MOV_atom_t atom) { + int i, edit_count; print_atom("elst", atom); get_byte(pb); /* version */ get_byte(pb); get_byte(pb); get_byte(pb); /* flags */ - c->streams[c->fc->nb_streams-1]->edit_count = get_be32(pb); /* entries */ + edit_count= c->streams[c->fc->nb_streams-1]->edit_count = get_be32(pb); /* entries */ + + for(i=0; ifc->nb_streams-1, c->streams[c->fc->nb_streams-1]->edit_count); #endif @@ -1452,7 +1459,7 @@ static const MOVParseTableEntry mov_default_parse_table[] = { { MKTAG( 'd', 'p', 'n', 'd' ), mov_read_leaf }, { MKTAG( 'd', 'r', 'e', 'f' ), mov_read_leaf }, { MKTAG( 'e', 'd', 't', 's' ), mov_read_default }, -//{ MKTAG( 'e', 'l', 's', 't' ), mov_read_elst }, //broken, try some movs from http://videos.av7.net/ +{ MKTAG( 'e', 'l', 's', 't' ), mov_read_elst }, { MKTAG( 'f', 'r', 'e', 'e' ), mov_read_leaf }, { MKTAG( 'h', 'd', 'l', 'r' ), mov_read_hdlr }, { MKTAG( 'h', 'i', 'n', 't' ), mov_read_leaf }, -- 2.7.4