comparison motion_est.c @ 1745:fe5e2c14a04c libavcodec

fixing twice added offset bug, was triggered by 4mv + sub_cmp != mb_cmp bug was introduced in version 1.75 (2003-12-30) this may have lead to a small drop in quality of the 4mv mode, but should have only affected the mbd=0 case
author michael
date Wed, 14 Jan 2004 02:21:39 +0000
parents 07a484280a82
children 67949dc3117b
comparison
equal deleted inserted replaced
1744:d01772d1bf55 1745:fe5e2c14a04c
844 int dxy; 844 int dxy;
845 const int offset= ((block&1) + (block>>1)*stride)*8; 845 const int offset= ((block&1) + (block>>1)*stride)*8;
846 uint8_t *dest_y = s->me.scratchpad + offset; 846 uint8_t *dest_y = s->me.scratchpad + offset;
847 847
848 if(s->quarter_sample){ 848 if(s->quarter_sample){
849 uint8_t *ref= ref_data[0] + (mx4>>2) + (my4>>2)*stride + offset; 849 uint8_t *ref= ref_data[0] + (mx4>>2) + (my4>>2)*stride;
850 dxy = ((my4 & 3) << 2) | (mx4 & 3); 850 dxy = ((my4 & 3) << 2) | (mx4 & 3);
851 851
852 if(s->no_rounding) 852 if(s->no_rounding)
853 s->dsp.put_no_rnd_qpel_pixels_tab[1][dxy](dest_y , ref , s->linesize); 853 s->dsp.put_no_rnd_qpel_pixels_tab[1][dxy](dest_y , ref , s->linesize);
854 else 854 else
855 s->dsp.put_qpel_pixels_tab [1][dxy](dest_y , ref , stride); 855 s->dsp.put_qpel_pixels_tab [1][dxy](dest_y , ref , stride);
856 }else{ 856 }else{
857 uint8_t *ref= ref_data[0] + (mx4>>1) + (my4>>1)*stride + offset; 857 uint8_t *ref= ref_data[0] + (mx4>>1) + (my4>>1)*stride;
858 dxy = ((my4 & 1) << 1) | (mx4 & 1); 858 dxy = ((my4 & 1) << 1) | (mx4 & 1);
859 859
860 if(s->no_rounding) 860 if(s->no_rounding)
861 s->dsp.put_no_rnd_pixels_tab[1][dxy](dest_y , ref , stride, h); 861 s->dsp.put_no_rnd_pixels_tab[1][dxy](dest_y , ref , stride, h);
862 else 862 else