2.5% faster vlc decoding Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc> --- libavcodec/utvideodec.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/libavcodec/utvideodec.c b/libavcodec/utvideodec.c index 815b71cfb6..411df47730 100644 --- a/libavcodec/utvideodec.c +++ b/libavcodec/utvideodec.c @@ -73,8 +73,8 @@ static int build_huff10(const uint8_t *src, VLC *vlc, int *fsym) syms[i] = he[i].sym; code += 0x80000000u >> (he[i].len - 1); } - - return ff_init_vlc_sparse(vlc, FFMIN(he[last].len, 11), last + 1, +#define VLC_BITS 11 + return ff_init_vlc_sparse(vlc, VLC_BITS, last + 1, bits, sizeof(*bits), sizeof(*bits), codes, sizeof(*codes), sizeof(*codes), syms, sizeof(*syms), sizeof(*syms), 0); @@ -117,7 +117,8 @@ static int build_huff(const uint8_t *src, VLC *vlc, int *fsym) code += 0x80000000u >> (he[i].len - 1); } - return ff_init_vlc_sparse(vlc, FFMIN(he[last].len, 11), last + 1, +#define VLC_BITS 11 + return ff_init_vlc_sparse(vlc, VLC_BITS, last + 1, bits, sizeof(*bits), sizeof(*bits), codes, sizeof(*codes), sizeof(*codes), syms, sizeof(*syms), sizeof(*syms), 0); @@ -196,7 +197,7 @@ static int decode_plane10(UtvideoContext *c, int plane_no, prev = 0x200; for (j = sstart; j < send; j++) { for (i = 0; i < width * step; i += step) { - pix = get_vlc2(&gb, vlc.table, vlc.bits, 3); + pix = get_vlc2(&gb, vlc.table, VLC_BITS, 3); if (pix < 0) { av_log(c->avctx, AV_LOG_ERROR, "Decoding error\n"); goto fail; @@ -302,7 +303,7 @@ static int decode_plane(UtvideoContext *c, int plane_no, prev = 0x80; for (j = sstart; j < send; j++) { for (i = 0; i < width * step; i += step) { - pix = get_vlc2(&gb, vlc.table, vlc.bits, 3); + pix = get_vlc2(&gb, vlc.table, VLC_BITS, 3); if (pix < 0) { av_log(c->avctx, AV_LOG_ERROR, "Decoding error\n"); goto fail; -- 2.13.0 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel