[FFmpeg-soc] [soc]: r1065 - rv40/rv40.c
kostya
subversion at mplayerhq.hu
Mon Aug 20 18:08:53 CEST 2007
Author: kostya
Date: Mon Aug 20 18:08:52 2007
New Revision: 1065
Log:
For interpolated blocks add half of the next picture motion vector before MC
Modified:
rv40/rv40.c
Modified: rv40/rv40.c
==============================================================================
--- rv40/rv40.c (original)
+++ rv40/rv40.c Mon Aug 20 18:08:52 2007
@@ -1136,6 +1136,10 @@ static inline void rv40_mc_b(RV40DecCont
srcU = s->next_picture_ptr->data[1];
srcV = s->next_picture_ptr->data[2];
}
+ if(block_type == RV40_MB_B_INTERP){
+ mx += (s->next_picture_ptr->motion_val[0][mv_pos][0] + 1) >> 1;
+ my += (s->next_picture_ptr->motion_val[0][mv_pos][1] + 1) >> 1;
+ }
src_x = s->mb_x * 16 + (mx >> 2);
src_y = s->mb_y * 16 + (my >> 2);
uvsrc_x = s->mb_x * 8 + (mx >> 3);
@@ -1181,6 +1185,10 @@ static inline void rv40_mc_b_interp(RV40
mx = s->current_picture_ptr->motion_val[1][mv_pos][0];
my = s->current_picture_ptr->motion_val[1][mv_pos][1];
+ if(block_type == RV40_MB_B_INTERP){
+ mx -= s->next_picture_ptr->motion_val[0][mv_pos][0] >> 1;
+ my -= s->next_picture_ptr->motion_val[0][mv_pos][1] >> 1;
+ }
srcY = s->next_picture_ptr->data[0];
srcU = s->next_picture_ptr->data[1];
srcV = s->next_picture_ptr->data[2];
More information about the FFmpeg-soc
mailing list