# HG changeset patch # User reimar # Date 1237067160 0 # Node ID 5de2c153566bed649fb494a34f6bf7f5c479d720 # Parent 430cf07e7203fb0cd3fc89734f4e45e0df35e9f9 Add AVFMT_GENERIC_INDEX support also for formats that do not use a parser. diff -r 430cf07e7203 -r 5de2c153566b utils.c --- a/utils.c Sat Mar 14 20:50:54 2009 +0000 +++ b/utils.c Sat Mar 14 21:46:00 2009 +0000 @@ -954,6 +954,11 @@ *pkt = st->cur_pkt; st->cur_pkt.data= NULL; compute_pkt_fields(s, st, NULL, pkt); s->cur_st = NULL; + if ((s->iformat->flags & AVFMT_GENERIC_INDEX) && + (pkt->flags & PKT_FLAG_KEY) && pkt->dts != AV_NOPTS_VALUE) { + ff_reduce_index(s, st->index); + av_add_index_entry(st, pkt->pos, pkt->dts, 0, 0, AVINDEX_KEYFRAME); + } break; } else if (st->cur_len > 0 && st->discard < AVDISCARD_ALL) { len = av_parser_parse2(st->parser, st->codec, &pkt->data, &pkt->size,