Namely ScanTable.permutated. Signed-off-by: Andreas Rheinhardt <andreas.rheinha...@outlook.com> --- libavcodec/mjpegdec.c | 16 ++++++++-------- libavcodec/mjpegdec.h | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-)
diff --git a/libavcodec/mjpegdec.c b/libavcodec/mjpegdec.c index 3374ae71bd..d9df138ab5 100644 --- a/libavcodec/mjpegdec.c +++ b/libavcodec/mjpegdec.c @@ -115,8 +115,8 @@ static void init_idct(AVCodecContext *avctx) MJpegDecodeContext *s = avctx->priv_data; ff_idctdsp_init(&s->idsp, avctx); - ff_init_scantable(s->idsp.idct_permutation, &s->scantable, - ff_zigzag_direct); + ff_permute_scantable(s->scantable, ff_zigzag_direct, + s->idsp.idct_permutation); } av_cold int ff_mjpeg_decode_init(AVCodecContext *avctx) @@ -846,7 +846,7 @@ static int decode_block(MJpegDecodeContext *s, int16_t *block, int component, av_log(s->avctx, AV_LOG_ERROR, "error count: %d\n", i); return AVERROR_INVALIDDATA; } - j = s->scantable.permutated[i]; + j = s->scantable[i]; block[j] = level * quant_matrix[i]; } } while (i < 63); @@ -909,14 +909,14 @@ static int decode_block_progressive(MJpegDecodeContext *s, int16_t *block, if (i >= se) { if (i == se) { - j = s->scantable.permutated[se]; + j = s->scantable[se]; block[j] = level * (quant_matrix[se] << Al); break; } av_log(s->avctx, AV_LOG_ERROR, "error count: %d\n", i); return AVERROR_INVALIDDATA; } - j = s->scantable.permutated[i]; + j = s->scantable[i]; block[j] = level * (quant_matrix[i] << Al); } else { if (run == 0xF) {// ZRL - skip 15 coefficients @@ -964,7 +964,7 @@ for (; ; i++) { \ } \ break; \ } \ - j = s->scantable.permutated[i]; \ + j = s->scantable[i]; \ if (block[j]) \ REFINE_BIT(j) \ else if (run-- == 0) \ @@ -994,7 +994,7 @@ static int decode_block_refinement(MJpegDecodeContext *s, int16_t *block, val = SHOW_UBITS(re, &s->gb, 1); LAST_SKIP_BITS(re, &s->gb, 1); ZERO_RUN; - j = s->scantable.permutated[i]; + j = s->scantable[i]; val--; block[j] = ((quant_matrix[i] << Al) ^ val) - val; if (i == se) { @@ -1026,7 +1026,7 @@ static int decode_block_refinement(MJpegDecodeContext *s, int16_t *block, } for (; i <= last; i++) { - j = s->scantable.permutated[i]; + j = s->scantable[i]; if (block[j]) REFINE_BIT(j) } diff --git a/libavcodec/mjpegdec.h b/libavcodec/mjpegdec.h index 648dd714e1..621f329f9f 100644 --- a/libavcodec/mjpegdec.h +++ b/libavcodec/mjpegdec.h @@ -118,7 +118,7 @@ typedef struct MJpegDecodeContext { uint64_t coefs_finished[MAX_COMPONENTS]; ///< bitmask of which coefs have been completely decoded (progressive mode) int palette_index; int force_pal8; - ScanTable scantable; + uint8_t scantable[64]; BlockDSPContext bdsp; HpelDSPContext hdsp; IDCTDSPContext idsp; -- 2.34.1 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".