From c69b4bdf5895ecbf07e5412d1e4e3dd859a292af Mon Sep 17 00:00:00 2001 From: Luca Barbato Date: Sat, 27 Jul 2013 15:48:41 +0200 Subject: [PATCH] avidec: Let the inner dv demuxer take care of discarding (cherry picked from commit c8f0b20b4a6bb6691928789d83e4b) CC: libav-stable@libav.org --- libavformat/avidec.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/libavformat/avidec.c b/libavformat/avidec.c index af6ee8ed0f..ac6e85f78c 100644 --- a/libavformat/avidec.c +++ b/libavformat/avidec.c @@ -917,9 +917,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); }