diff options
author | Luca Barbato <lu_zero@gentoo.org> | 2013-07-27 15:48:41 +0200 |
---|---|---|
committer | Carl Eugen Hoyos <cehoyos@ag.or.at> | 2014-03-09 14:05:17 +0100 |
commit | 78197501572abbad33d7458f5009c5f53ecf021a (patch) | |
tree | 3c3851732d96f2d76bd0712019b6889335f803b6 | |
parent | e63346f7e8d36f99ec85733823de6d1a0fd31f4f (diff) | |
download | ffmpeg-78197501572abbad33d7458f5009c5f53ecf021a.tar.gz |
avidec: Let the inner dv demuxer take care of discarding
Fixes ticket #1796.
(cherry picked from commit c8f0b20b4a6bb6691928789d83e4b02896969848)
Conflicts:
libavformat/avidec.c
-rw-r--r-- | libavformat/avidec.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/libavformat/avidec.c b/libavformat/avidec.c index d2f0152735..6bd644601c 100644 --- a/libavformat/avidec.c +++ b/libavformat/avidec.c @@ -1002,10 +1002,12 @@ start_sync: } } - - if( (st->discard >= AVDISCARD_DEFAULT && size==0) - /*|| (st->discard >= AVDISCARD_NONKEY && !(pkt->flags & AV_PKT_FLAG_KEY))*/ //FIXME needs a little reordering - || st->discard >= AVDISCARD_ALL){ + if (!avi->dv_demux && + ((st->discard >= AVDISCARD_DEFAULT && size == 0) /* || + // FIXME: needs a little reordering + (st->discard >= AVDISCARD_NONKEY && + !(pkt->flags & AV_PKT_FLAG_KEY)) */ + || st->discard >= AVDISCARD_ALL)) { if (!exit_early) { ast->frame_offset += get_duration(ast, size); avio_skip(pb, size); |