From b85bf991f63db00cbe9dc56d0a99a298018cd596 Mon Sep 17 00:00:00 2001
From: Michael Niedermayer <michaelni@gmx.at>
Date: Sun, 9 Sep 2007 16:54:00 +0000
Subject: [PATCH] do not force the halfpel filter coeffs to be retransmitted on
 every frame if always_reset is set

Originally committed as revision 10460 to svn://svn.ffmpeg.org/ffmpeg/trunk
---
 doc/snow.txt      | 5 ++---
 libavcodec/snow.c | 5 ++---
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/doc/snow.txt b/doc/snow.txt
index 688dbd836f4..ba6a5f46242 100644
--- a/doc/snow.txt
+++ b/doc/snow.txt
@@ -56,9 +56,8 @@ header:
         qlogs
     }
     if(!keyframe){
-        if(!always_reset)
-            update_mc                   b   header_state
-        if(always_reset || update_mc){
+        update_mc                       b   header_state
+        if(update_mc){
             for(plane=0; plane<2; plane++){
                 diag_mc                 b   header_state
                 htaps/2-1               u   header_state
diff --git a/libavcodec/snow.c b/libavcodec/snow.c
index 7ccedfabab2..a52cffcdce0 100644
--- a/libavcodec/snow.c
+++ b/libavcodec/snow.c
@@ -3574,8 +3574,7 @@ static void encode_header(SnowContext *s){
             update_mc |= p->last_diag_mc != p->diag_mc;
             update_mc |= !!memcmp(p->last_hcoeff, p->hcoeff, sizeof(p->hcoeff));
         }
-        if(!s->always_reset)
-            put_rac(&s->c, s->header_state, update_mc);
+        put_rac(&s->c, s->header_state, update_mc);
         if(update_mc){
             for(plane_index=0; plane_index<2; plane_index++){
                 Plane *p= &s->plane[plane_index];
@@ -3661,7 +3660,7 @@ static int decode_header(SnowContext *s){
     }
 
     if(!s->keyframe){
-        if(s->always_reset || get_rac(&s->c, s->header_state)){
+        if(get_rac(&s->c, s->header_state)){
             for(plane_index=0; plane_index<2; plane_index++){
                 int htaps, i, sum=0, absum=0;
                 Plane *p= &s->plane[plane_index];
-- 
GitLab