diff options
author | Phil Barrett <philb@filmlight.ltd.uk> | 2012-02-28 19:26:11 +0100 |
---|---|---|
committer | Kostya Shishkov <kostya.shishkov@gmail.com> | 2012-02-29 09:28:45 +0100 |
commit | c7084182e85eaa437899df58fd1ae57426d3c7f7 (patch) | |
tree | 05801bb467d6329bdac7e667b129db71f970515e | |
parent | 235d6932865fcfa686e5614ca609acefa8fed5c1 (diff) | |
download | ffmpeg-c7084182e85eaa437899df58fd1ae57426d3c7f7.tar.gz |
proresenc: correct edge emulation
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
-rw-r--r-- | libavcodec/proresenc.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/libavcodec/proresenc.c b/libavcodec/proresenc.c index 552fa7c14a..c10f599f27 100644 --- a/libavcodec/proresenc.c +++ b/libavcodec/proresenc.c @@ -189,24 +189,24 @@ static void get_slice_data(ProresContext *ctx, const uint16_t *src, elinesize = linesize; } else { int bw, bh, pix; - const int estride = 16 / sizeof(*ctx->emu_buf); esrc = ctx->emu_buf; - elinesize = 16; + elinesize = 16 * sizeof(*ctx->emu_buf); bw = FFMIN(w - x, mb_width); bh = FFMIN(h - y, 16); for (j = 0; j < bh; j++) { - memcpy(ctx->emu_buf + j * estride, src + j * linesize, + memcpy(ctx->emu_buf + j * 16, + (const uint8_t*)src + j * linesize, bw * sizeof(*src)); - pix = ctx->emu_buf[j * estride + bw - 1]; + pix = ctx->emu_buf[j * 16 + bw - 1]; for (k = bw; k < mb_width; k++) - ctx->emu_buf[j * estride + k] = pix; + ctx->emu_buf[j * 16 + k] = pix; } for (; j < 16; j++) - memcpy(ctx->emu_buf + j * estride, - ctx->emu_buf + (bh - 1) * estride, + memcpy(ctx->emu_buf + j * 16, + ctx->emu_buf + (bh - 1) * 16, mb_width * sizeof(*ctx->emu_buf)); } if (!is_chroma) { |