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
This commit is contained in:
Michael Niedermayer 2007-09-09 16:54:00 +00:00
parent bc66275b06
commit b85bf991f6
2 changed files with 4 additions and 6 deletions

View File

@ -56,9 +56,8 @@ header:
qlogs qlogs
} }
if(!keyframe){ if(!keyframe){
if(!always_reset)
update_mc b header_state update_mc b header_state
if(always_reset || update_mc){ if(update_mc){
for(plane=0; plane<2; plane++){ for(plane=0; plane<2; plane++){
diag_mc b header_state diag_mc b header_state
htaps/2-1 u header_state htaps/2-1 u header_state

View File

@ -3574,7 +3574,6 @@ static void encode_header(SnowContext *s){
update_mc |= p->last_diag_mc != p->diag_mc; update_mc |= p->last_diag_mc != p->diag_mc;
update_mc |= !!memcmp(p->last_hcoeff, p->hcoeff, sizeof(p->hcoeff)); 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){ if(update_mc){
for(plane_index=0; plane_index<2; plane_index++){ for(plane_index=0; plane_index<2; plane_index++){
@ -3661,7 +3660,7 @@ static int decode_header(SnowContext *s){
} }
if(!s->keyframe){ 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++){ for(plane_index=0; plane_index<2; plane_index++){
int htaps, i, sum=0, absum=0; int htaps, i, sum=0, absum=0;
Plane *p= &s->plane[plane_index]; Plane *p= &s->plane[plane_index];