From 83bf9fb6eca8cb9afd2a507ea20bec7f2cb429d2 Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Wed, 25 Apr 2012 18:02:43 +0200 Subject: ffv1: move clear_state() to clear_slice_state() in encoding threads Signed-off-by: Michael Niedermayer --- libavcodec/ffv1.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libavcodec/ffv1.c b/libavcodec/ffv1.c index e03778e764..4df005f06c 100644 --- a/libavcodec/ffv1.c +++ b/libavcodec/ffv1.c @@ -1196,6 +1196,8 @@ static int encode_slice(AVCodecContext *c, void *arg){ AVFrame * const p= &f->picture; const int ps= (f->bits_per_raw_sample>8)+1; + if(p->key_frame) + clear_slice_state(f, fs); if(f->version > 2){ encode_slice_header(f, fs); } @@ -1252,7 +1254,6 @@ static int encode_frame(AVCodecContext *avctx, AVPacket *pkt, p->key_frame= 1; f->gob_count++; write_header(f); - clear_state(f); }else{ put_rac(c, &keystate, 0); p->key_frame= 0; -- cgit v1.2.3