mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
avcodec/mv30: use aandcttables
This commit is contained in:
parent
06dab51e68
commit
1b59f3f844
2
configure
vendored
2
configure
vendored
@ -2790,7 +2790,7 @@ msmpeg4v3_decoder_select="h263_decoder"
|
||||
msmpeg4v3_encoder_select="h263_encoder"
|
||||
mss2_decoder_select="mpegvideo qpeldsp vc1_decoder"
|
||||
mts2_decoder_select="mss34dsp"
|
||||
mv30_decoder_select="blockdsp"
|
||||
mv30_decoder_select="aandcttables blockdsp"
|
||||
mvha_decoder_deps="zlib"
|
||||
mvha_decoder_select="llviddsp"
|
||||
mwsc_decoder_deps="zlib"
|
||||
|
@ -33,6 +33,7 @@
|
||||
#include "blockdsp.h"
|
||||
#include "get_bits.h"
|
||||
#include "internal.h"
|
||||
#include "aandcttab.h"
|
||||
|
||||
typedef struct MV30Context {
|
||||
GetBitContext gb;
|
||||
@ -58,25 +59,6 @@ typedef struct MV30Context {
|
||||
|
||||
static VLC cbp_tab;
|
||||
|
||||
static const int16_t scale_tab[] = {
|
||||
16384, 22725, 21407, 19266,
|
||||
16384, 12873, 8867, 4520,
|
||||
22725, 31521, 29692, 26722,
|
||||
22725, 17855, 12299, 6270,
|
||||
21407, 29692, 27969, 25172,
|
||||
21407, 16819, 11585, 5906,
|
||||
19266, 26722, 25172, 22654,
|
||||
19266, 15137, 10426, 5315,
|
||||
16384, 22725, 21407, 19266,
|
||||
16384, 12873, 8867, 4520,
|
||||
12873, 17855, 16819, 15137,
|
||||
12873, 10114, 6967, 3552,
|
||||
8867, 12299, 11585, 10426,
|
||||
8867, 6967, 4799, 2446,
|
||||
4520, 6270, 5906, 5315,
|
||||
4520, 3552, 2446, 1247,
|
||||
};
|
||||
|
||||
static const uint8_t luma_tab[] = {
|
||||
12, 12, 15, 19, 25, 34, 40, 48,
|
||||
12, 12, 18, 22, 27, 44, 47, 46,
|
||||
@ -116,7 +98,7 @@ static void get_qtable(int16_t *table, int quant, const uint8_t *quant_tab)
|
||||
|
||||
for (int i = 0; i < 64; i++) {
|
||||
table[i] = av_clip((quant_tab[i] * factor + 0x32) / 100, 1, 0x7fff);
|
||||
table[i] = ((int)scale_tab[i] * (int)table[i] + 0x800) >> 12;
|
||||
table[i] = ((int)ff_aanscales[i] * (int)table[i] + 0x800) >> 12;
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user