avcodec/vp9: Inline function with only one caller into it

The split into vp9_decode_init() and init_frames() is a remnant
of using init_thread_copy() for frame-threading; the latter has
been removed, so there is no reason for init_frames() not be part
of vp9_decode_init().

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
pull/362/head
Andreas Rheinhardt 4 years ago
parent 7aa8c95f47
commit 4818ea69d2
  1. 21
      libavcodec/vp9.c

@ -1790,36 +1790,27 @@ static void vp9_decode_flush(AVCodecContext *avctx)
ff_thread_release_buffer(avctx, &s->s.refs[i]); ff_thread_release_buffer(avctx, &s->s.refs[i]);
} }
static int init_frames(AVCodecContext *avctx) static av_cold int vp9_decode_init(AVCodecContext *avctx)
{ {
VP9Context *s = avctx->priv_data; VP9Context *s = avctx->priv_data;
int i;
for (i = 0; i < 3; i++) { s->last_bpp = 0;
s->s.h.filter.sharpness = -1;
for (int i = 0; i < 3; i++) {
s->s.frames[i].tf.f = av_frame_alloc(); s->s.frames[i].tf.f = av_frame_alloc();
if (!s->s.frames[i].tf.f) if (!s->s.frames[i].tf.f)
return AVERROR(ENOMEM); return AVERROR(ENOMEM);
} }
for (i = 0; i < 8; i++) { for (int i = 0; i < 8; i++) {
s->s.refs[i].f = av_frame_alloc(); s->s.refs[i].f = av_frame_alloc();
s->next_refs[i].f = av_frame_alloc(); s->next_refs[i].f = av_frame_alloc();
if (!s->s.refs[i].f || !s->next_refs[i].f) if (!s->s.refs[i].f || !s->next_refs[i].f)
return AVERROR(ENOMEM); return AVERROR(ENOMEM);
} }
return 0; return 0;
} }
static av_cold int vp9_decode_init(AVCodecContext *avctx)
{
VP9Context *s = avctx->priv_data;
s->last_bpp = 0;
s->s.h.filter.sharpness = -1;
return init_frames(avctx);
}
#if HAVE_THREADS #if HAVE_THREADS
static int vp9_decode_update_thread_context(AVCodecContext *dst, const AVCodecContext *src) static int vp9_decode_update_thread_context(AVCodecContext *dst, const AVCodecContext *src)
{ {

Loading…
Cancel
Save