summaryrefslogtreecommitdiff
path: root/libavcodec/h263.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2003-12-01 20:04:14 +0000
committerMichael Niedermayer <michaelni@gmx.at>2003-12-01 20:04:14 +0000
commite1f03acc420383cf39310c9089627c52838f8334 (patch)
treec07b6191dfd379156fa72bae2ed3826a7e22a336 /libavcodec/h263.c
parent5b5404e32fc6d7a7b390eecfd4f106fdbe2c8a03 (diff)
h263 MV prediction doesnt match mpeg4, for some slices configurations (fixes RV20 MVs)
Originally committed as revision 2551 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/h263.c')
-rw-r--r--libavcodec/h263.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libavcodec/h263.c b/libavcodec/h263.c
index 9cf883fc27..6b0f87bff5 100644
--- a/libavcodec/h263.c
+++ b/libavcodec/h263.c
@@ -1473,7 +1473,7 @@ int16_t *h263_pred_motion(MpegEncContext * s, int block,
if(block==0){ //most common case
if(s->mb_x == s->resync_mb_x){ //rare
*px= *py = 0;
- }else if(s->mb_x + 1 == s->resync_mb_x){ //rare
+ }else if(s->mb_x + 1 == s->resync_mb_x && s->h263_pred){ //rare
C = s->motion_val[xy + off[block] - wrap];
if(s->mb_x==0){
*px = C[0];
@@ -1487,7 +1487,7 @@ int16_t *h263_pred_motion(MpegEncContext * s, int block,
*py = A[1];
}
}else if(block==1){
- if(s->mb_x + 1 == s->resync_mb_x){ //rare
+ if(s->mb_x + 1 == s->resync_mb_x && s->h263_pred){ //rare
C = s->motion_val[xy + off[block] - wrap];
*px = mid_pred(A[0], 0, C[0]);
*py = mid_pred(A[1], 0, C[1]);