diff options
author | Uoti Urpala <uau@mplayer2.org> | 2012-02-03 20:09:48 +0200 |
---|---|---|
committer | Uoti Urpala <uau@mplayer2.org> | 2012-02-03 20:15:16 +0200 |
commit | da52c9400defebc3f5840acc1f9eb0ead1a759cb (patch) | |
tree | a17088c843b032d917065ce72852dca75a390aa7 /libmpcodecs/vd_ffmpeg.c | |
parent | b317b928196e984d53440da0cda8e3d3d9f9430c (diff) | |
download | mpv-da52c9400defebc3f5840acc1f9eb0ead1a759cb.tar.bz2 mpv-da52c9400defebc3f5840acc1f9eb0ead1a759cb.tar.xz |
vd_ffmpeg: fix flushing of buffered frames
The vd_ffmpeg decode() function returned without doing anything if the
input packet had size 0. This meant that flushing buffered frames at
EOF did not work. Remove this test. Have the core code skip such
packets coming from the file being played instead (Libav treats
0-sized packets as flush signals anyway, so better assume such packets
do not represent real frames with any codec).
Diffstat (limited to 'libmpcodecs/vd_ffmpeg.c')
-rw-r--r-- | libmpcodecs/vd_ffmpeg.c | 3 |
1 files changed, 0 insertions, 3 deletions
diff --git a/libmpcodecs/vd_ffmpeg.c b/libmpcodecs/vd_ffmpeg.c index 05bc318267..5a45fef6d8 100644 --- a/libmpcodecs/vd_ffmpeg.c +++ b/libmpcodecs/vd_ffmpeg.c @@ -610,9 +610,6 @@ static struct mp_image *decode(struct sh_video *sh, struct demux_packet *packet, int dr1 = ctx->do_dr1; AVPacket pkt; - if (len <= 0) - return NULL; // skipped frame - if (!dr1) avctx->draw_horiz_band = NULL; |