X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavcodec%2Fspeedhqenc.c;h=a5bedd5301c3ba4b05b49abdbf5621cecca21635;hb=d6cb7bf5995fe8af6ad79cf38a7aaa3b4fda6628;hp=3bda2a8453768708cb01a4ff5334c1d16ebe9a00;hpb=052a5993adfc749b4283aac4ca0dec3087b7091a;p=ffmpeg diff --git a/libavcodec/speedhqenc.c b/libavcodec/speedhqenc.c index 3bda2a84537..a5bedd5301c 100644 --- a/libavcodec/speedhqenc.c +++ b/libavcodec/speedhqenc.c @@ -46,9 +46,6 @@ static uint16_t mpeg12_vlc_dc_chroma_code_reversed[12]; static uint32_t speedhq_lum_dc_uni[512]; static uint32_t speedhq_chr_dc_uni[512]; -static uint8_t speedhq_index_run[2][64]; -static int8_t speedhq_max_level[2][64]; - static uint8_t uni_speedhq_ac_vlc_len[64 * 64 * 2]; static uint32_t reverse(uint32_t num, int bits) @@ -77,11 +74,6 @@ static av_cold void speedhq_init_static_data(void) ff_rl_init(&ff_rl_speedhq, speedhq_static_rl_table_store); - for (int i = 0; i < 64; i++) { - speedhq_max_level[0][i] = ff_rl_speedhq.max_level[0][i]; - speedhq_index_run[0][i] = ff_rl_speedhq.index_run[0][i]; - } - /* build unified dc encoding tables */ for (int i = -255; i < 256; i++) { int adiff, index; @@ -104,7 +96,7 @@ static av_cold void speedhq_init_static_data(void) speedhq_chr_dc_uni[i + 255] = bits + (code << 8); } - ff_init_uni_ac_vlc(&ff_rl_speedhq, uni_speedhq_ac_vlc_len); + ff_mpeg1_init_uni_ac_vlc(&ff_rl_speedhq, uni_speedhq_ac_vlc_len); } av_cold int ff_speedhq_encode_init(MpegEncContext *s) @@ -231,8 +223,8 @@ static void encode_block(MpegEncContext *s, int16_t *block, int n) MASK_ABS(sign, alevel); sign &= 1; - if (alevel <= speedhq_max_level[0][run]) { - code = speedhq_index_run[0][run] + alevel - 1; + if (alevel <= ff_rl_speedhq.max_level[0][run]) { + code = ff_rl_speedhq.index_run[0][run] + alevel - 1; /* store the VLC & sign at once */ put_bits_le(&s->pb, ff_rl_speedhq.table_vlc[code][1] + 1, ff_rl_speedhq.table_vlc[code][0] + (sign << ff_rl_speedhq.table_vlc[code][1]));