From 97c73ba56505e180f6ab8f49b7b5642e0c09fa09 Mon Sep 17 00:00:00 2001 From: Paul B Mahol Date: Mon, 31 Aug 2020 23:25:22 +0200 Subject: avcodec/qpeg: speed-up copy of bytes --- libavcodec/qpeg.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/libavcodec/qpeg.c b/libavcodec/qpeg.c index 40931e3bdc..8bc710acfd 100644 --- a/libavcodec/qpeg.c +++ b/libavcodec/qpeg.c @@ -101,8 +101,11 @@ static void qpeg_decode_intra(QpegContext *qctx, uint8_t *dst, } else { if (bytestream2_get_bytes_left(&qctx->buffer) < copy) copy = bytestream2_get_bytes_left(&qctx->buffer); - for(i = 0; i < copy; i++) { - dst[filled++] = bytestream2_get_byte(&qctx->buffer); + while (copy > 0) { + int step = FFMIN(copy, width - filled); + bytestream2_get_bufferu(&qctx->buffer, dst + filled, step); + filled += step; + copy -= step; if (filled >= width) { filled = 0; dst -= stride; -- cgit v1.2.3