projects
/
platform
/
upstream
/
libav.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
bd36f17
)
Add AVFMT_GENERIC_INDEX support also for formats that do not use a parser.
author
Reimar Döffinger
<Reimar.Doeffinger@gmx.de>
Sat, 14 Mar 2009 21:46:00 +0000
(21:46 +0000)
committer
Reimar Döffinger
<Reimar.Doeffinger@gmx.de>
Sat, 14 Mar 2009 21:46:00 +0000
(21:46 +0000)
Originally committed as revision 17965 to svn://svn.ffmpeg.org/ffmpeg/trunk
libavformat/utils.c
patch
|
blob
|
history
diff --git
a/libavformat/utils.c
b/libavformat/utils.c
index
e371d5d
..
7419cc6
100644
(file)
--- a/
libavformat/utils.c
+++ b/
libavformat/utils.c
@@
-954,6
+954,11
@@
static int av_read_frame_internal(AVFormatContext *s, AVPacket *pkt)
*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,