avcodec/vp9_raw_reorder: reset state when flushing

Signed-off-by: James Almer <jamrial@gmail.com>
pull/310/head
James Almer 6 years ago
parent d88193c219
commit fec4212d8e
  1. 11
      libavcodec/vp9_raw_reorder_bsf.c

@ -385,6 +385,16 @@ fail:
return err;
}
static void vp9_raw_reorder_flush(AVBSFContext *bsf)
{
VP9RawReorderContext *ctx = bsf->priv_data;
for (int s = 0; s < FRAME_SLOTS; s++)
vp9_raw_reorder_clear_slot(ctx, s);
ctx->next_frame = NULL;
ctx->sequence = 0;
}
static void vp9_raw_reorder_close(AVBSFContext *bsf)
{
VP9RawReorderContext *ctx = bsf->priv_data;
@ -402,6 +412,7 @@ const AVBitStreamFilter ff_vp9_raw_reorder_bsf = {
.name = "vp9_raw_reorder",
.priv_data_size = sizeof(VP9RawReorderContext),
.close = &vp9_raw_reorder_close,
.flush = &vp9_raw_reorder_flush,
.filter = &vp9_raw_reorder_filter,
.codec_ids = vp9_raw_reorder_codec_ids,
};

Loading…
Cancel
Save