diff options
author | Ben Jackson <ben@ben.com> | 2012-09-15 21:32:39 +0400 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2012-09-15 22:26:22 +0400 |
commit | 23503cadd15929aeea4a4fc8dde8aad54ecf6846 (patch) | |
tree | 4fea5c248b017ea2a05c1e24b6039f1b5e365163 /libavcodec | |
parent | 47277c41531aa5e6dfcee946882bc35b8e846c6d (diff) |
lavc/vp56: Refactor ff_vp56_init into ff_vp56_init/ff_vp56_init_context
Pave the way for per-thread context initialization.
Signed-off-by: Ben Jackson <ben@ben.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec')
-rw-r--r-- | libavcodec/vp56.c | 12 | ||||
-rw-r--r-- | libavcodec/vp56.h | 3 |
2 files changed, 15 insertions, 0 deletions
diff --git a/libavcodec/vp56.c b/libavcodec/vp56.c index f3f7eca566..b8e183cf05 100644 --- a/libavcodec/vp56.c +++ b/libavcodec/vp56.c @@ -661,6 +661,12 @@ int ff_vp56_decode_frame(AVCodecContext *avctx, void *data, int *data_size, av_cold void ff_vp56_init(AVCodecContext *avctx, int flip, int has_alpha) { VP56Context *s = avctx->priv_data; + ff_vp56_init_context(avctx, s, flip, has_alpha); +} + +av_cold void ff_vp56_init_context(AVCodecContext *avctx, VP56Context *s, + int flip, int has_alpha) +{ int i; s->avctx = avctx; @@ -702,6 +708,12 @@ av_cold void ff_vp56_init(AVCodecContext *avctx, int flip, int has_alpha) av_cold int ff_vp56_free(AVCodecContext *avctx) { VP56Context *s = avctx->priv_data; + return ff_vp56_free_context(s); +} + +av_cold int ff_vp56_free_context(VP56Context *s) +{ + AVCodecContext *avctx = s->avctx; av_freep(&s->qscale_table); av_freep(&s->above_blocks); diff --git a/libavcodec/vp56.h b/libavcodec/vp56.h index d8f7ce654b..8256bee603 100644 --- a/libavcodec/vp56.h +++ b/libavcodec/vp56.h @@ -174,7 +174,10 @@ struct vp56_context { void ff_vp56_init(AVCodecContext *avctx, int flip, int has_alpha); +void ff_vp56_init_context(AVCodecContext *avctx, VP56Context *s, + int flip, int has_alpha); int ff_vp56_free(AVCodecContext *avctx); +int ff_vp56_free_context(VP56Context *s); void ff_vp56_init_dequant(VP56Context *s, int quantizer); int ff_vp56_decode_frame(AVCodecContext *avctx, void *data, int *data_size, AVPacket *avpkt); |