@ -1256,6 +1256,51 @@ static const uint16_t dv_place_411[1350] = {
0x0834 , 0x2320 , 0x2f44 , 0x3810 , 0x1658 ,
} ;
/* DV25/50 DCT coefficient weights and inverse weights */
/* created by dvtables.py */
static const int dv_weight_bits = 18 ;
static const int dv_weight_88 [ 64 ] = {
131072 , 257107 , 257107 , 242189 , 252167 , 242189 , 235923 , 237536 ,
237536 , 235923 , 229376 , 231390 , 223754 , 231390 , 229376 , 222935 ,
224969 , 217965 , 217965 , 224969 , 222935 , 200636 , 218652 , 211916 ,
212325 , 211916 , 218652 , 200636 , 188995 , 196781 , 205965 , 206433 ,
206433 , 205965 , 196781 , 188995 , 185364 , 185364 , 200636 , 200704 ,
200636 , 185364 , 185364 , 174609 , 180568 , 195068 , 195068 , 180568 ,
174609 , 170091 , 175557 , 189591 , 175557 , 170091 , 165371 , 170627 ,
170627 , 165371 , 160727 , 153560 , 160727 , 144651 , 144651 , 136258 ,
} ;
static const int dv_weight_248 [ 64 ] = {
131072 , 242189 , 257107 , 237536 , 229376 , 200636 , 242189 , 223754 ,
224969 , 196781 , 262144 , 242189 , 229376 , 200636 , 257107 , 237536 ,
211916 , 185364 , 235923 , 217965 , 229376 , 211916 , 206433 , 180568 ,
242189 , 223754 , 224969 , 196781 , 211916 , 185364 , 235923 , 217965 ,
200704 , 175557 , 222935 , 205965 , 200636 , 185364 , 195068 , 170627 ,
229376 , 211916 , 206433 , 180568 , 200704 , 175557 , 222935 , 205965 ,
175557 , 153560 , 188995 , 174609 , 165371 , 144651 , 200636 , 185364 ,
195068 , 170627 , 175557 , 153560 , 188995 , 174609 , 165371 , 144651 ,
} ;
static const int dv_iweight_bits = 14 ;
static const int dv_iweight_88 [ 64 ] = {
32768 , 16710 , 16710 , 17735 , 17015 , 17735 , 18197 , 18079 ,
18079 , 18197 , 18725 , 18559 , 19196 , 18559 , 18725 , 19284 ,
19108 , 19692 , 19692 , 19108 , 19284 , 21400 , 19645 , 20262 ,
20214 , 20262 , 19645 , 21400 , 22733 , 21845 , 20867 , 20815 ,
20815 , 20867 , 21845 , 22733 , 23173 , 23173 , 21400 , 21400 ,
21400 , 23173 , 23173 , 24600 , 23764 , 22017 , 22017 , 23764 ,
24600 , 25267 , 24457 , 22672 , 24457 , 25267 , 25971 , 25191 ,
25191 , 25971 , 26715 , 27962 , 26715 , 29642 , 29642 , 31536 ,
} ;
static const int dv_iweight_248 [ 64 ] = {
32768 , 17735 , 16710 , 18079 , 18725 , 21400 , 17735 , 19196 ,
19108 , 21845 , 16384 , 17735 , 18725 , 21400 , 16710 , 18079 ,
20262 , 23173 , 18197 , 19692 , 18725 , 20262 , 20815 , 23764 ,
17735 , 19196 , 19108 , 21845 , 20262 , 23173 , 18197 , 19692 ,
21400 , 24457 , 19284 , 20867 , 21400 , 23173 , 22017 , 25191 ,
18725 , 20262 , 20815 , 23764 , 21400 , 24457 , 19284 , 20867 ,
24457 , 27962 , 22733 , 24600 , 25971 , 29642 , 21400 , 23173 ,
22017 , 25191 , 24457 , 27962 , 22733 , 24600 , 25971 , 29642 ,
} ;
static const uint16_t dv_audio_shuffle525 [ 10 ] [ 9 ] = {
{ 0 , 30 , 60 , 20 , 50 , 80 , 10 , 40 , 70 } , /* 1st channel */
{ 6 , 36 , 66 , 26 , 56 , 86 , 16 , 46 , 76 } ,