add width and height in context and use them

patch by Vitor: [vitor1001 gmail com]

Originally committed as revision 9438 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Vitor Sessak 2007-06-26 20:10:26 +00:00 committed by Benoit Fouet
parent dad66beeff
commit 9489d2ef3f
2 changed files with 8 additions and 6 deletions

View File

@ -102,10 +102,10 @@ static inline void apply_motion_generic(RoqContext *ri, int x, int y, int deltax
my = y + deltay; my = y + deltay;
/* check MV against frame boundaries */ /* check MV against frame boundaries */
if ((mx < 0) || (mx > ri->avctx->width - sz) || if ((mx < 0) || (mx > ri->width - sz) ||
(my < 0) || (my > ri->avctx->height - sz)) { (my < 0) || (my > ri->height - sz)) {
av_log(ri->avctx, AV_LOG_ERROR, "motion vector out of bounds: MV = (%d, %d), boundaries = (0, 0, %d, %d)\n", av_log(ri->avctx, AV_LOG_ERROR, "motion vector out of bounds: MV = (%d, %d), boundaries = (0, 0, %d, %d)\n",
mx, my, ri->avctx->width, ri->avctx->height); mx, my, ri->width, ri->height);
return; return;
} }

View File

@ -145,11 +145,11 @@ static void roqvideo_decode_frame(RoqContext *ri)
} }
xpos += 16; xpos += 16;
if (xpos >= ri->avctx->width) { if (xpos >= ri->width) {
xpos -= ri->avctx->width; xpos -= ri->width;
ypos += 16; ypos += 16;
} }
if(ypos >= ri->avctx->height) if(ypos >= ri->height)
break; break;
} }
} }
@ -160,6 +160,8 @@ static int roq_decode_init(AVCodecContext *avctx)
RoqContext *s = avctx->priv_data; RoqContext *s = avctx->priv_data;
s->avctx = avctx; s->avctx = avctx;
s->width = avctx->width;
s->height = avctx->height;
s->last_frame = &s->frames[0]; s->last_frame = &s->frames[0];
s->current_frame = &s->frames[1]; s->current_frame = &s->frames[1];
avctx->pix_fmt = PIX_FMT_YUV444P; avctx->pix_fmt = PIX_FMT_YUV444P;