avcodec/pdvdec: honor the requested avctx->skip_frame value

The decoder is tagged as being FF_CODEC_CAP_SKIP_FRAME_FILL_PARAM, so might as
well make use of it.

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
pull/389/head
James Almer 2 years ago
parent 0dceda12e7
commit adeb5b6c67
  1. 5
      libavcodec/pdvdec.c

@ -64,6 +64,11 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *frame,
uint8_t *dst, *prev = prev_frame->data[0]; uint8_t *dst, *prev = prev_frame->data[0];
int ret, zret; int ret, zret;
if (avctx->skip_frame >= AVDISCARD_ALL ||
(avctx->skip_frame >= AVDISCARD_NONINTRA &&
!(avpkt->flags & AV_PKT_FLAG_KEY)))
return avpkt->size;
zret = inflateReset(zstream); zret = inflateReset(zstream);
if (zret != Z_OK) { if (zret != Z_OK) {
av_log(avctx, AV_LOG_ERROR, "Could not reset inflate: %d.\n", zret); av_log(avctx, AV_LOG_ERROR, "Could not reset inflate: %d.\n", zret);

Loading…
Cancel
Save