- if (keyframe && c->pic.data[0])
- avctx->release_buffer(avctx, &c->pic);
- c->pic.reference = 3;
- c->pic.buffer_hints = FF_BUFFER_HINTS_VALID | FF_BUFFER_HINTS_READABLE |
- FF_BUFFER_HINTS_PRESERVE | FF_BUFFER_HINTS_REUSABLE;
- result = avctx->reget_buffer(avctx, &c->pic);
+ if (keyframe) {
+ av_frame_unref(c->pic);
+ init_frame = 1;
+ }
+
+ result = ff_reget_buffer(avctx, c->pic);