diff --git a/libavcodec/interplayvideo.c b/libavcodec/interplayvideo.c index 967bb51955dfd08b79a7e052cc8efe9d9cc7a865..d1dbc1a89d706acc8764c6cbe13c1064ca0b31b6 100644 --- a/libavcodec/interplayvideo.c +++ b/libavcodec/interplayvideo.c @@ -87,7 +87,7 @@ typedef struct IpvideoContext { static int copy_from(IpvideoContext *s, AVFrame *src, int delta_x, int delta_y) { int current_offset = s->pixel_ptr - s->current_frame.data[0]; - int motion_offset = current_offset + delta_y * s->stride + delta_x; + int motion_offset = current_offset + delta_y * s->current_frame.linesize[0] + delta_x; if (motion_offset < 0) { av_log(s->avctx, AV_LOG_ERROR, " Interplay video: motion offset < 0 (%d)\n", motion_offset); return -1; @@ -96,7 +96,7 @@ static int copy_from(IpvideoContext *s, AVFrame *src, int delta_x, int delta_y) motion_offset, s->upper_motion_limit_offset); return -1; } - s->dsp.put_pixels_tab[1][0](s->pixel_ptr, src->data[0] + motion_offset, s->stride, 8); + s->dsp.put_pixels_tab[1][0](s->pixel_ptr, src->data[0] + motion_offset, s->current_frame.linesize[0], 8); return 0; }