Loading lib_com/ivas_rom_com.c +224 −14 Original line number Diff line number Diff line Loading @@ -6075,49 +6075,259 @@ const float ivas_sns_means_tcx10[M] = { #ifdef ERI_SNSVQ_ROMOPT /* DCT16 domain segmentwise structured SNS-VQ stage1 tables indexed as tcx20 "0" and tcx10 as "1" */ const float snsSt1_tr_midQ_truncQ_tcx20[M] = { 0 }; const float snsSt1_tr_midQ_truncQ_tcx10[M]={ 0 }; /* v2d TCX20 97.3%, .55 maxmove seg_trunc_lens = 12 14 16(16,16) nElem = 14 16 98(49,49) */ /* v2d tcx10 788 Words . 99.5% , .55 mse_ maxmove seg_trunc_lens = 8 10 12 16 nElem = 13 34 41 40 */ const float snsSt1_tr_midQ_truncQ_tcx20[M] = /* Q13 */ { -6.522216796875000e-01f, -1.426513671875000e+00f, -1.277343750000000e+00f, -9.533691406250000e-01f, +1.857910156250000e-01f, -5.761718750000000e-02f, +8.435058593750000e-01f, -1.645507812500000e-01f, -3.063964843750000e-02f, -1.065673828125000e-01f, +4.514160156250000e-01f, +2.604980468750000e-01f, +3.583984375000000e-01f, +6.871337890625000e-01f, +8.574218750000000e-01f, +1.024780273437500e+00f }; const float snsSt1_tr_midQ_truncQ_tcx10[M]={ }; const float *const snsSt1_tr_midQ_truncQ[2]= {snsSt1_tr_midQ_truncQ_tcx20, snsSt1_tr_midQ_truncQ_tcx10}; const float snsSt1_dct_invScaleF_tcx20[3] = {0 }; const float snsSt1_dct_invScaleF_tcx10[3] = {0 }; /* const float fdcng_dct_scaleF[3] = { 0.420288085937500f , (0.420288085937500f / 16.0f) , (0.420288085937500f * 0.420288085937500f) / (16.0f*16.0f) }; const float fdcng_dct_invScaleF[2] = { 2.379272460937500f ,2.379272460937500f*16.0f }; */ const float snsSt1_dct_invScaleF_tcx20[2] = { 31977.0/2048.0, 31977.0/128.0, (31977.0/128.0)*(31977.0/128.0) }; /* Q11 invScale*/ const float snsSt1_dct_invScaleF_tcx10[2] = { }; const float *const snsSt1_dct_invScaleF[2]= { snsSt1_dct_invScaleF_tcx20, snsSt1_dct_invScaleF_tcx10}; const float snsSt1_dct_scaleF_tcx20[3] = {0 }; const float snsSt1_dct_scaleF_tcx10[3] = {0 }; const float snsSt1_dct_scaleF_tcx20[3] = { 16789.0/262144.0, (16789.0*16.0)/262144.0 }; /* Q18 */ const float snsSt1_dct_scaleF_tcx10[3] = { }; const float *const snsSt1_dct_scaleF[2] = { snsSt1_dct_scaleF_tcx20, snsSt1_dct_scaleF_tcx10}; const int16_t snsSt1_dct_n_segm[2] = { 4, 4 }; const int16_t snsSt1_dct_cols_per_segment_tcx20[4]= { 0 }; const int16_t snsSt1_dct_cols_per_segment_tcx10[4]= { 0 }; const int16_t snsSt1_dct_cols_per_segment_tcx20[4]= { 12, 14, 16, 16 }; const int16_t snsSt1_dct_cols_per_segment_tcx10[4]= { }; const int16_t *const snsSt1_dct_cols_per_segment[2]= { snsSt1_dct_cols_per_segment_tcx20, snsSt1_dct_cols_per_segment_tcx10}; const int16_t snsSt1_trunc_dct_cols_per_segment_tcx20[4]= { 0 }; const int16_t snsSt1_trunc_dct_cols_per_segment_tcx10[4]= { 0 }; const int16_t *const snsSt1_trunc_dct_cols_per_segment[2]= { snsSt1_trunc_dct_cols_per_segment_tcx20, snsSt1_trunc_dct_cols_per_segment_tcx10}; const int16_t snsSt1_cum_entries_per_segment_tcx20[5]={0}; const int16_t snsSt1_cum_entries_per_segment_tcx20[5]={ 0, 14, 30, 30+98/2, 128 }; const int16_t snsSt1_cum_entries_per_segment_tcx10[5]={0}; const int16_t *const snsSt1_cum_entries_per_segment[2]={ snsSt1_cum_entries_per_segment_tcx20 ,snsSt1_cum_entries_per_segment_tcx10}; const int16_t snsSt1_entries_per_segment_tcx20[4]={0}; const int16_t snsSt1_entries_per_segment_tcx20[4]={ 14, 16, 98/2, 98/2 }; const int16_t snsSt1_entries_per_segment_tcx10[4]={0}; const int16_t *const snsSt1_entries_per_segment[2]={ snsSt1_entries_per_segment_tcx20 ,snsSt1_entries_per_segment_tcx10}; const Word8 *const snsSt1_stage1_W8Qx_dct_sections_tcx20[4]={0}; const Word8 /*seg 0, 14 x 12 */ sns_tcx20_dct_s0_W8Qx[168]={ 0, -40, 119, -69, 59, -28, 99, -3, 98, -18, 35, 51, 0, -25, -53, -13, -76, -15, -82, 46, 68, 40, -22, -60, 0, -15, -122, -27, -47, -38, -72, -9, 25, -3, -6, 40, 0, -1, -93, 75, 12, 21, 7, -9, 28, -17, -22, 100, 0, 38, -121, -35, -63, -46, -87, -22, -1, -50, -24, 39, 0, 46, -72, 74, 5, 14, 0, -10, 19, -32, -41, 73, 0, 78, 78, 37, 81, 80, 36, -112, -18, 43, 34, 83, 0, 79, 48, 14, -31, -86, -110, -27, -14, -60, -83, -63, 0, 83, -112, -56, -54, -55, -67, -40, -14, -71, -54, -18, 0, 89, 59, 37, 6, -15, -39, -2, -1, -65, -35, -3, 0, 100, 54, 31, 5, 15, 39, 75, 52, -47, -30, 42, 0, 107, -55, -45, -43, -54, -101, -63, -33, -92, -56, -12, 0, 112, -38, 37, 8, -21, -39, -35, -23, -79, -41, -14, 0, 122, 27, -28, -30, -40, -91, -41, -12, -80, -61, -38 }; const Word8 /*seg 1, 16 x 14 */ sns_tcx20_dct_s1_W8Qx[224]={ 0, -82, -12, 3, -28, -11, -25, -18, -7, -48, -12, 35, 11, 29, 0, -71, 11, 66, 0, 5, -8, -12, 41, -49, 11, 67, 26, 44, 0, -69, 43, 84, -42, 9, -22, -21, -18, -53, -20, 17, 2, 18, 0, -46, 25, 108, 34, 27, 2, 26, 31, -24, 7, 35, 22, 24, 0, -44, -41, -47, -76, 7, 24, 78, -32, 32, -22, 2, 64, 25, 0, -40, -27, 12, 24, 62, 46, 65, 35, 34, 4, 46, 29, 30, 0, -32, -96, 56, 74, 9, -36, -9, -26, 63, 80, 9, -73, 58, 0, -10, -53, -69, -100, 33, 90, -40, 18, -19, 73, 34, -54, -72, 0, 8, -37, -47, -28, 25, 48, 93, 62, -17, -20, 18, 59, 51, 0, 26, -62, -61, -74, -46, -34, 62, 115, 72, 19, 23, -34, -63, 0, 35, 43, 97, 50, 26, 8, 36, 38, 3, 10, 40, 20, 34, 0, 71, -2, 85, 35, -1, -16, 18, 14, -20, 0, 9, 5, 19, 0, 78, 40, 76, 31, 4, -6, 24, 22, -5, 5, 28, 10, 28, 0, 83, -1, 37, -8, -13, -20, -6, 8, -30, -10, 17, 4, 18, 0, 85, 37, 29, 27, 99, 66, -3, -111, -28, -5, 94, 44, 14, 0, 127, -7, -17, -17, -37, -27, -9, -5, -71, -22, 13, 14, 23 }; const Word8 /*seg 2, 98 x 16 */ sns_tcx20_dct_s2_W8Qx[1568]={ 0, -127, 17, 49, -27, -4, -14, -11, -14, -17, -24, 36, 6, 28, -23, -48, 0, -99, -41, 88, 8, -6, -32, -16, 6, -42, -18, 40, 5, 22, -24, -49, 0, -93, 3, 81, -27, -27, -12, -6, -37, -26, -21, 23, 3, 30, -29, -52, 0, -89, 39, 11, -12, -10, -31, -19, -16, -33, -27, 25, 2, 31, -25, -45, 0, -82, 73, -31, 12, 50, -23, 85, 54, -12, 51, -56, 73, -32, 29, -42, 0, -63, -47, 26, -8, -10, -34, -25, -5, -28, -26, 40, 9, 35, -22, -51, 0, -59, -18, 93, 14, -34, -38, 1, -11, -50, -27, 25, 5, 14, -26, -45, 0, -49, -11, -12, -60, -27, -81, 36, 65, 8, 80, 114, -37, 54, 92, -18, 0, -47, -7, -4, -13, -23, -25, -5, -23, -29, -25, 32, 8, 37, -24, -48, 0, -46, 74, 48, 17, 19, -14, 7, 12, -9, -12, 27, 9, 7, -19, -46, 0, -39, 38, 14, -22, -18, -40, -41, -26, -46, -33, 1, -6, 12, -28, -48, 0, -38, 6, 84, -26, -9, -19, -3, -11, -20, -6, 22, 4, 26, -21, -41, 0, -33, 14, 48, 8, -4, -9, 3, 14, -17, -5, 26, 10, 22, -19, -40, 0, -30, -12, 53, 14, -31, -39, -37, -26, -32, -31, 2, 2, 12, -29, -48, 0, -28, 96, 13, 100, 23, 40, -4, 80, -55, 46, 7, 5, 72, -60, -17, 0, -21, 49, 84, -30, 9, -28, -19, -8, -32, -20, 6, 3, 9, -21, -42, 0, -18, -25, -24, -32, -41, -27, -22, -32, -12, -10, -4, 1, 26, -22, -44, 0, -15, -37, 26, -33, -50, -5, -81, -10, -18, -17, -38, 38, 47, -57, -82, 0, -15, 45, 64, 34, 7, 3, 27, 43, 6, 13, 39, 20, 35, -15, -39, 0, -10, 12, 16, -39, -37, -27, 2, 9, -17, -20, 18, 7, 32, -15, -36, 0, -7, 14, 93, 44, -2, -19, 21, 36, 13, 13, 31, 27, 27, -15, -37, 0, -6, 32, 46, 9, -9, -13, 5, 22, -10, -2, 27, 13, 27, -19, -41, 0, -6, -15, 21, -14, -13, -15, 14, 18, -5, -1, 42, 15, 28, -18, -38, 0, -4, 21, 25, -1, -17, -20, -9, 9, -18, -10, 20, 9, 20, -21, -43, 0, 0, 14, 93, 53, 0, -37, -40, -27, -41, -40, -17, -4, 3, -27, -46, 0, 0, -1, -22, -31, -34, -50, -42, -40, -36, -19, -22, -14, 26, -29, -49, 0, 3, 19, 76, -19, -10, -34, -46, -46, -49, -31, 6, 0, 14, -24, -45, 0, 5, -2, 67, 12, -4, -19, 5, 11, -11, -5, 20, 8, 20, -19, -39, 0, 9, -15, 11, -36, -22, -30, -26, 6, -24, -23, 6, -1, 6, -28, -44, 0, 9, 3, 76, 27, -45, -70, -91, -52, -22, -66, -35, 4, -7, -32, -42, 0, 11, -32, -18, -34, -21, -24, -18, -13, -22, -15, -1, 2, 14, -25, -40, 0, 12, -49, 12, 84, 21, -24, -48, 77, 90, -14, -114, 28, 101, -6, -59, 0, 13, 47, 16, -20, -21, -38, -30, -27, -42, -30, -9, -1, 9, -25, -45, 0, 17, 14, 23, -17, -23, -27, -17, -2, -26, -17, 8, 3, 11, -23, -43, 0, 17, 40, 53, 17, -3, -12, 4, 19, -12, -2, 25, 13, 25, -18, -41, 0, 18, 16, 74, 14, 42, 22, 45, 18, -33, 16, 23, 28, 25, -13, -36, 0, 19, 5, 23, 16, -2, -4, 18, 35, 5, 10, 41, 13, 16, -21, -45, 0, 20, 2, 11, -24, -86, -37, -83, -67, 2, -80, 67, -13, -91, -40, -58, 0, 20, -15, 28, 22, -24, -50, -70, -71, -39, -29, -19, -15, 12, -34, -44, 0, 25, -2, 38, -14, -16, -26, 1, -3, -32, -14, 14, 3, 15, -21, -41, 0, 28, -22, -2, -52, -55, -38, -31, -10, -38, -18, -4, 6, 13, -24, -40, 0, 28, 59, 71, 6, -9, -22, -22, -7, -29, -19, -1, 4, 10, -21, -46, 0, 31, -20, 29, -6, -7, -15, 21, 11, -18, -5, 18, 4, 17, -21, -39, 0, 33, 23, 80, 12, -1, -12, 22, 19, -5, 1, 39, 14, 25, -16, -40, 0, 33, 21, 48, 15, 8, -23, -69, -67, -50, -47, -8, 5, 17, -33, -54, 0, 37, -14, 6, -50, -39, -53, -42, -30, -51, -25, -27, 4, -101, -92, -96, 0, 38, 27, 71, 19, -22, -55, -62, -32, -44, -31, -14, 3, 23, -25, -43, 0, 38, -6, 84, 72, -11, -71, -42, -50, -53, -32, -36, -31, 32, -22, -52, 0, 39, 2, 63, 51, -21, -23, 18, 18, 15, 13, 10, 10, 17, -18, -40, 0, 40, 36, 22, -4, -13, -14, 12, 28, 4, 7, 36, 15, 23, -17, -40, 0, 40, -33, 11, -37, -25, -36, -15, -1, -23, -16, 9, -3, -1, -27, -45, 0, 40, -2, 17, -20, -20, -28, -2, -2, -29, -13, 9, 2, 10, -21, -41, 0, 41, 6, 41, 2, -10, -15, 22, 15, -21, -1, 24, 7, 19, -18, -39, 0, 41, 1, -2, -32, -16, -34, -65, -63, -50, -28, 31, 25, 44, -34, -59, 0, 41, 18, 32, -13, -22, -27, -2, -4, -35, -9, 11, 2, 15, -20, -38, 0, 42, 21, -5, -56, -59, -41, -14, 5, -26, -47, -3, -3, 21, -23, -50, 0, 44, 12, 2, 42, -49, -90, -55, -51, -34, -11, -45, 15, 37, -55, -19, 0, 47, 7, 51, -35, -42, -48, -36, -27, -53, -49, -37, -16, -3, -28, -43, 0, 48, -36, -108, -69, 47, 90, 53, 24, 101, 48, -111, -61, -78, 43, 96, 0, 52, -36, -48, -2, -66, -62, 0, -31, -48, -12, 37, 3, 9, -34, -68, 0, 54, 40, 29, -28, -20, -34, -27, -19, -47, -33, -1, -1, 15, -21, -43, 0, 55, 55, 33, -35, -76, -70, -38, -13, -19, -30, -14, -11, 10, -35, -47, 0, 56, 0, 23, 24, -51, 1, 112, -21, 17, 15, 42, 0, 41, -22, -44, 0, 56, -12, 24, -4, -13, -21, 6, 7, -19, -7, 24, 6, 13, -20, -40, 0, 57, 32, -31, 8, -38, -55, -38, -76, -54, -21, -28, 7, 20, -51, -45, 0, 57, -10, -32, -29, -14, -6, 21, 57, 16, -2, -2, 2, 8, -28, -47, 0, 58, -10, 31, 25, -7, -54, -24, -63, -101, -27, 24, -20, 53, -20, -77, 0, 59, 10, 62, -9, -6, -28, -24, -8, -27, -21, 4, -2, 18, -24, -45, 0, 61, 18, 27, -3, -3, -7, 11, 18, -8, 0, 26, 10, 24, -20, -41, 0, 64, -27, 4, -23, -34, -61, -46, -51, -56, -23, -3, -2, 27, -25, -44, 0, 65, 28, 55, 33, -6, -12, -9, 10, -27, -20, -14, -2, 0, -26, -43, 0, 65, -22, 31, 45, -69, -46, -62, -115, -32, -31, 2, -5, 30, -38, -41, 0, 65, 4, 2, -43, -41, -35, 3, -4, -42, -21, 15, 1, -16, -38, -53, 0, 66, 14, 50, 51, 9, -51, -59, -28, -55, -24, 3, -9, 9, -16, -44, 0, 66, 15, 11, -4, -16, -42, -51, -37, -60, -25, 18, 9, 28, -19, -47, 0, 68, 65, 65, 8, -14, -23, -15, -1, -16, -11, 11, 6, 21, -25, -42, 0, 70, 1, -65, -18, -27, -55, -2, -3, -69, 0, -64, 16, -12, -56, -41, 0, 71, 52, 82, -20, -45, -65, -49, 14, -43, -16, 6, -28, -7, -34, -54, 0, 74, -44, -17, -46, -57, -49, -9, -4, -36, -24, -21, -3, 0, -31, -52, 0, 76, 1, -22, 19, -39, -51, -64, -94, -17, -16, 6, 5, 29, -41, -50, 0, 76, 29, 61, -13, -5, -6, -108, -31, -13, -76, -21, -3, -12, -23, -64, 0, 78, -15, -2, -31, -94, -68, 26, 11, -38, -23, 0, -25, 46, -13, -54, 0, 78, 26, -8, -46, -32, -33, -24, -1, -26, -18, 8, 4, 16, -22, -44, 0, 79, -26, 31, -28, -29, -37, -20, -2, -31, -26, -5, -2, 6, -26, -47, 0, 80, -3, -33, -15, -82, -12, -28, -28, -18, -54, 18, -2, 33, -43, -65, 0, 81, -48, -20, -1, -99, -25, -22, -79, -35, -22, 29, 5, 6, -45, -63, 0, 88, 12, 57, 20, -22, -44, -45, -35, -45, -30, -58, -8, 51, -24, -60, 0, 89, 41, 28, 15, -16, -55, -80, -25, -48, -36, -52, -4, 36, -37, -49, 0, 93, 6, -10, -20, -16, -21, -12, 11, -16, -10, 10, 4, 13, -23, -42, 0, 95, -40, 78, 24, -19, -1, -24, 3, -25, -27, 16, 5, 14, -17, -48, 0, 95, 21, 38, -11, -65, -79, -23, 37, -38, -28, 7, -6, 9, -21, -45, 0, 95, -5, 13, 47, -16, -55, -22, -49, -71, -9, 11, 4, 36, -18, -47, 0, 99, -8, 13, -29, -43, -40, -49, -17, -39, -23, 0, -1, 6, -28, -43, 0, 105, 7, 50, 37, -15, -19, 19, 7, -17, -9, -4, -5, 1, -27, -42, 0, 105, 60, 28, -37, -44, -39, -32, -4, -28, -20, -9, -5, 1, -29, -44, 0, 111, -30, -20, -2, -22, -7, 42, 45, 7, -15, -29, -9, -8, -35, -50, 0, 116, 64, 56, 12, 4, -9, -12, -6, -22, -2, 11, -6, -11, -32, -46, 0, 118, 19, 24, 4, -24, -33, -21, -1, -28, -9, 14, -3, 9, -21, -43 }; const Word8 *const snsSt1_stage1_W8Qx_dct_sections_tcx20[4]={ sns_tcx20_dct_s0_W8Qx, sns_tcx20_dct_s1_W8Qx, sns_tcx20_dct_s2_W8Qx, &(sns_tcx20_dct_s2_W8Qx[1568/2]) }; const Word8 *const snsSt1_stage1_W8Qx_dct_sections_tcx10[4]={0}; const Word8 *const* snsSt1_stage1_W8Qx_dct_sections[2]={snsSt1_stage1_W8Qx_dct_sections_tcx20, snsSt1_stage1_W8Qx_dct_sections_tcx10 }; const Word16 *const snsSt1_dct_col_syn_shift_tcx20[4]={0}; const Word16 snsSt1_tcx20_stage1_col_syn_shift_segm0[12]={ 0, 4, 3, 3, 3, 3, 2, 2, 2, 1, 1, 0 }; const Word16 snsSt1_tcx20_stage1_col_syn_shift_segm1[14]={ 0, 4, 4, 3, 3, 3, 3, 2, 2, 1, 2, 1, 2, 1 }; const Word16 snsSt1_tcx20_stage1_col_syn_shift_segm2[16]={ 0, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 1, 2, 1, 2, 2 }; const Word16 *const snsSt1_dct_col_syn_shift_tcx20[4]={snsSt1_tcx20_stage1_col_syn_shift_segm0,snsSt1_tcx20_stage1_col_syn_shift_segm1,snsSt1_tcx20_stage1_col_syn_shift_segm2, snsSt1_tcx20_stage1_col_syn_shift_segm2}; const Word16 *const snsSt1_dct_col_syn_shift_tcx10[4]={0}; const Word16 *const* snsSt1_dct_col_syn_shift[2]={snsSt1_dct_col_syn_shift_tcx20, snsSt1_dct_col_syn_shift_tcx10 }; const Word8 snsSt1_segm_neighbour_fwd_tcx20[128]={0}; const Word8 snsSt1_segm_neighbour_fwd_tcx20[128]= { 44, 37, 23, 61, 60, 3, 28, 120, 108, 100, 26, 8, 121, 29, 15, 17, 33, 45, 21, 18, 19, 88, 1, 4, 6, 97, 126, 116, 10, 125, 32, 35, 31, 30, 39, 38, 20, 41, 14, 16, 43, 42, 48, 36, 34, 40, 2, 52, 65, 53, 54, 50, 57, 64, 59, 46, 49, 66, 55, 56, 68, 47, 51, 79, 71, 73, 63, 58, 77, 72, 80, 76, 81, 24, 78, 70, 74, 25, 5, 90, 93, 83, 69, 75, 82, 67, 94, 84, 22, 111, 110, 62, 95, 102, 85, 106, 104, 98, 92, 113, 103, 115, 122, 86, 87, 107, 112, 91, 99, 101, 117, 114, 7, 119, 11, 89, 96, 9, 0, 118, 127, 109, 13, 27, 105, 12, 124, 123 }; const Word8 snsSt1_segm_neighbour_fwd_tcx10[128]={0}; const Word8 *const snsSt1_segm_neighbour_fwd[2]={snsSt1_segm_neighbour_fwd_tcx20 , snsSt1_segm_neighbour_fwd_tcx10}; const Word8 snsSt1_segm_neighbour_rev_tcx20[128]={0}; const Word8 snsSt1_segm_neighbour_rev_tcx20[128]= { 118, 22, 46, 5, 23, 78, 24, 112, 11, 117, 28, 114, 125, 122, 38, 14, 39, 15, 19, 20, 36, 18, 88, 2, 73, 77, 10, 123, 6, 13, 33, 32, 30, 16, 44, 31, 43, 1, 35, 34, 45, 37, 41, 40, 0, 17, 55, 61, 42, 56, 51, 62, 47, 49, 50, 58, 59, 52, 67, 54, 4, 3, 91, 66, 53, 48, 57, 85, 60, 82, 75, 64, 69, 65, 76, 83, 71, 68, 74, 63, 70, 72, 84, 81, 87, 94, 103, 104, 21, 115, 79, 107, 98, 80, 86, 92, 116, 25, 97, 108, 9, 109, 93, 100, 96, 124, 95, 105, 8, 121, 90, 89, 106, 99, 111, 101, 27, 110, 119, 113, 7, 12, 102, 127, 126, 29, 26, 120 }; const Word8 snsSt1_segm_neighbour_rev_tcx10[128]={0}; const Word8 *const snsSt1_segm_neighbour_rev[2]={snsSt1_segm_neighbour_rev_tcx20 , snsSt1_segm_neighbour_rev_tcx10}; Loading
lib_com/ivas_rom_com.c +224 −14 Original line number Diff line number Diff line Loading @@ -6075,49 +6075,259 @@ const float ivas_sns_means_tcx10[M] = { #ifdef ERI_SNSVQ_ROMOPT /* DCT16 domain segmentwise structured SNS-VQ stage1 tables indexed as tcx20 "0" and tcx10 as "1" */ const float snsSt1_tr_midQ_truncQ_tcx20[M] = { 0 }; const float snsSt1_tr_midQ_truncQ_tcx10[M]={ 0 }; /* v2d TCX20 97.3%, .55 maxmove seg_trunc_lens = 12 14 16(16,16) nElem = 14 16 98(49,49) */ /* v2d tcx10 788 Words . 99.5% , .55 mse_ maxmove seg_trunc_lens = 8 10 12 16 nElem = 13 34 41 40 */ const float snsSt1_tr_midQ_truncQ_tcx20[M] = /* Q13 */ { -6.522216796875000e-01f, -1.426513671875000e+00f, -1.277343750000000e+00f, -9.533691406250000e-01f, +1.857910156250000e-01f, -5.761718750000000e-02f, +8.435058593750000e-01f, -1.645507812500000e-01f, -3.063964843750000e-02f, -1.065673828125000e-01f, +4.514160156250000e-01f, +2.604980468750000e-01f, +3.583984375000000e-01f, +6.871337890625000e-01f, +8.574218750000000e-01f, +1.024780273437500e+00f }; const float snsSt1_tr_midQ_truncQ_tcx10[M]={ }; const float *const snsSt1_tr_midQ_truncQ[2]= {snsSt1_tr_midQ_truncQ_tcx20, snsSt1_tr_midQ_truncQ_tcx10}; const float snsSt1_dct_invScaleF_tcx20[3] = {0 }; const float snsSt1_dct_invScaleF_tcx10[3] = {0 }; /* const float fdcng_dct_scaleF[3] = { 0.420288085937500f , (0.420288085937500f / 16.0f) , (0.420288085937500f * 0.420288085937500f) / (16.0f*16.0f) }; const float fdcng_dct_invScaleF[2] = { 2.379272460937500f ,2.379272460937500f*16.0f }; */ const float snsSt1_dct_invScaleF_tcx20[2] = { 31977.0/2048.0, 31977.0/128.0, (31977.0/128.0)*(31977.0/128.0) }; /* Q11 invScale*/ const float snsSt1_dct_invScaleF_tcx10[2] = { }; const float *const snsSt1_dct_invScaleF[2]= { snsSt1_dct_invScaleF_tcx20, snsSt1_dct_invScaleF_tcx10}; const float snsSt1_dct_scaleF_tcx20[3] = {0 }; const float snsSt1_dct_scaleF_tcx10[3] = {0 }; const float snsSt1_dct_scaleF_tcx20[3] = { 16789.0/262144.0, (16789.0*16.0)/262144.0 }; /* Q18 */ const float snsSt1_dct_scaleF_tcx10[3] = { }; const float *const snsSt1_dct_scaleF[2] = { snsSt1_dct_scaleF_tcx20, snsSt1_dct_scaleF_tcx10}; const int16_t snsSt1_dct_n_segm[2] = { 4, 4 }; const int16_t snsSt1_dct_cols_per_segment_tcx20[4]= { 0 }; const int16_t snsSt1_dct_cols_per_segment_tcx10[4]= { 0 }; const int16_t snsSt1_dct_cols_per_segment_tcx20[4]= { 12, 14, 16, 16 }; const int16_t snsSt1_dct_cols_per_segment_tcx10[4]= { }; const int16_t *const snsSt1_dct_cols_per_segment[2]= { snsSt1_dct_cols_per_segment_tcx20, snsSt1_dct_cols_per_segment_tcx10}; const int16_t snsSt1_trunc_dct_cols_per_segment_tcx20[4]= { 0 }; const int16_t snsSt1_trunc_dct_cols_per_segment_tcx10[4]= { 0 }; const int16_t *const snsSt1_trunc_dct_cols_per_segment[2]= { snsSt1_trunc_dct_cols_per_segment_tcx20, snsSt1_trunc_dct_cols_per_segment_tcx10}; const int16_t snsSt1_cum_entries_per_segment_tcx20[5]={0}; const int16_t snsSt1_cum_entries_per_segment_tcx20[5]={ 0, 14, 30, 30+98/2, 128 }; const int16_t snsSt1_cum_entries_per_segment_tcx10[5]={0}; const int16_t *const snsSt1_cum_entries_per_segment[2]={ snsSt1_cum_entries_per_segment_tcx20 ,snsSt1_cum_entries_per_segment_tcx10}; const int16_t snsSt1_entries_per_segment_tcx20[4]={0}; const int16_t snsSt1_entries_per_segment_tcx20[4]={ 14, 16, 98/2, 98/2 }; const int16_t snsSt1_entries_per_segment_tcx10[4]={0}; const int16_t *const snsSt1_entries_per_segment[2]={ snsSt1_entries_per_segment_tcx20 ,snsSt1_entries_per_segment_tcx10}; const Word8 *const snsSt1_stage1_W8Qx_dct_sections_tcx20[4]={0}; const Word8 /*seg 0, 14 x 12 */ sns_tcx20_dct_s0_W8Qx[168]={ 0, -40, 119, -69, 59, -28, 99, -3, 98, -18, 35, 51, 0, -25, -53, -13, -76, -15, -82, 46, 68, 40, -22, -60, 0, -15, -122, -27, -47, -38, -72, -9, 25, -3, -6, 40, 0, -1, -93, 75, 12, 21, 7, -9, 28, -17, -22, 100, 0, 38, -121, -35, -63, -46, -87, -22, -1, -50, -24, 39, 0, 46, -72, 74, 5, 14, 0, -10, 19, -32, -41, 73, 0, 78, 78, 37, 81, 80, 36, -112, -18, 43, 34, 83, 0, 79, 48, 14, -31, -86, -110, -27, -14, -60, -83, -63, 0, 83, -112, -56, -54, -55, -67, -40, -14, -71, -54, -18, 0, 89, 59, 37, 6, -15, -39, -2, -1, -65, -35, -3, 0, 100, 54, 31, 5, 15, 39, 75, 52, -47, -30, 42, 0, 107, -55, -45, -43, -54, -101, -63, -33, -92, -56, -12, 0, 112, -38, 37, 8, -21, -39, -35, -23, -79, -41, -14, 0, 122, 27, -28, -30, -40, -91, -41, -12, -80, -61, -38 }; const Word8 /*seg 1, 16 x 14 */ sns_tcx20_dct_s1_W8Qx[224]={ 0, -82, -12, 3, -28, -11, -25, -18, -7, -48, -12, 35, 11, 29, 0, -71, 11, 66, 0, 5, -8, -12, 41, -49, 11, 67, 26, 44, 0, -69, 43, 84, -42, 9, -22, -21, -18, -53, -20, 17, 2, 18, 0, -46, 25, 108, 34, 27, 2, 26, 31, -24, 7, 35, 22, 24, 0, -44, -41, -47, -76, 7, 24, 78, -32, 32, -22, 2, 64, 25, 0, -40, -27, 12, 24, 62, 46, 65, 35, 34, 4, 46, 29, 30, 0, -32, -96, 56, 74, 9, -36, -9, -26, 63, 80, 9, -73, 58, 0, -10, -53, -69, -100, 33, 90, -40, 18, -19, 73, 34, -54, -72, 0, 8, -37, -47, -28, 25, 48, 93, 62, -17, -20, 18, 59, 51, 0, 26, -62, -61, -74, -46, -34, 62, 115, 72, 19, 23, -34, -63, 0, 35, 43, 97, 50, 26, 8, 36, 38, 3, 10, 40, 20, 34, 0, 71, -2, 85, 35, -1, -16, 18, 14, -20, 0, 9, 5, 19, 0, 78, 40, 76, 31, 4, -6, 24, 22, -5, 5, 28, 10, 28, 0, 83, -1, 37, -8, -13, -20, -6, 8, -30, -10, 17, 4, 18, 0, 85, 37, 29, 27, 99, 66, -3, -111, -28, -5, 94, 44, 14, 0, 127, -7, -17, -17, -37, -27, -9, -5, -71, -22, 13, 14, 23 }; const Word8 /*seg 2, 98 x 16 */ sns_tcx20_dct_s2_W8Qx[1568]={ 0, -127, 17, 49, -27, -4, -14, -11, -14, -17, -24, 36, 6, 28, -23, -48, 0, -99, -41, 88, 8, -6, -32, -16, 6, -42, -18, 40, 5, 22, -24, -49, 0, -93, 3, 81, -27, -27, -12, -6, -37, -26, -21, 23, 3, 30, -29, -52, 0, -89, 39, 11, -12, -10, -31, -19, -16, -33, -27, 25, 2, 31, -25, -45, 0, -82, 73, -31, 12, 50, -23, 85, 54, -12, 51, -56, 73, -32, 29, -42, 0, -63, -47, 26, -8, -10, -34, -25, -5, -28, -26, 40, 9, 35, -22, -51, 0, -59, -18, 93, 14, -34, -38, 1, -11, -50, -27, 25, 5, 14, -26, -45, 0, -49, -11, -12, -60, -27, -81, 36, 65, 8, 80, 114, -37, 54, 92, -18, 0, -47, -7, -4, -13, -23, -25, -5, -23, -29, -25, 32, 8, 37, -24, -48, 0, -46, 74, 48, 17, 19, -14, 7, 12, -9, -12, 27, 9, 7, -19, -46, 0, -39, 38, 14, -22, -18, -40, -41, -26, -46, -33, 1, -6, 12, -28, -48, 0, -38, 6, 84, -26, -9, -19, -3, -11, -20, -6, 22, 4, 26, -21, -41, 0, -33, 14, 48, 8, -4, -9, 3, 14, -17, -5, 26, 10, 22, -19, -40, 0, -30, -12, 53, 14, -31, -39, -37, -26, -32, -31, 2, 2, 12, -29, -48, 0, -28, 96, 13, 100, 23, 40, -4, 80, -55, 46, 7, 5, 72, -60, -17, 0, -21, 49, 84, -30, 9, -28, -19, -8, -32, -20, 6, 3, 9, -21, -42, 0, -18, -25, -24, -32, -41, -27, -22, -32, -12, -10, -4, 1, 26, -22, -44, 0, -15, -37, 26, -33, -50, -5, -81, -10, -18, -17, -38, 38, 47, -57, -82, 0, -15, 45, 64, 34, 7, 3, 27, 43, 6, 13, 39, 20, 35, -15, -39, 0, -10, 12, 16, -39, -37, -27, 2, 9, -17, -20, 18, 7, 32, -15, -36, 0, -7, 14, 93, 44, -2, -19, 21, 36, 13, 13, 31, 27, 27, -15, -37, 0, -6, 32, 46, 9, -9, -13, 5, 22, -10, -2, 27, 13, 27, -19, -41, 0, -6, -15, 21, -14, -13, -15, 14, 18, -5, -1, 42, 15, 28, -18, -38, 0, -4, 21, 25, -1, -17, -20, -9, 9, -18, -10, 20, 9, 20, -21, -43, 0, 0, 14, 93, 53, 0, -37, -40, -27, -41, -40, -17, -4, 3, -27, -46, 0, 0, -1, -22, -31, -34, -50, -42, -40, -36, -19, -22, -14, 26, -29, -49, 0, 3, 19, 76, -19, -10, -34, -46, -46, -49, -31, 6, 0, 14, -24, -45, 0, 5, -2, 67, 12, -4, -19, 5, 11, -11, -5, 20, 8, 20, -19, -39, 0, 9, -15, 11, -36, -22, -30, -26, 6, -24, -23, 6, -1, 6, -28, -44, 0, 9, 3, 76, 27, -45, -70, -91, -52, -22, -66, -35, 4, -7, -32, -42, 0, 11, -32, -18, -34, -21, -24, -18, -13, -22, -15, -1, 2, 14, -25, -40, 0, 12, -49, 12, 84, 21, -24, -48, 77, 90, -14, -114, 28, 101, -6, -59, 0, 13, 47, 16, -20, -21, -38, -30, -27, -42, -30, -9, -1, 9, -25, -45, 0, 17, 14, 23, -17, -23, -27, -17, -2, -26, -17, 8, 3, 11, -23, -43, 0, 17, 40, 53, 17, -3, -12, 4, 19, -12, -2, 25, 13, 25, -18, -41, 0, 18, 16, 74, 14, 42, 22, 45, 18, -33, 16, 23, 28, 25, -13, -36, 0, 19, 5, 23, 16, -2, -4, 18, 35, 5, 10, 41, 13, 16, -21, -45, 0, 20, 2, 11, -24, -86, -37, -83, -67, 2, -80, 67, -13, -91, -40, -58, 0, 20, -15, 28, 22, -24, -50, -70, -71, -39, -29, -19, -15, 12, -34, -44, 0, 25, -2, 38, -14, -16, -26, 1, -3, -32, -14, 14, 3, 15, -21, -41, 0, 28, -22, -2, -52, -55, -38, -31, -10, -38, -18, -4, 6, 13, -24, -40, 0, 28, 59, 71, 6, -9, -22, -22, -7, -29, -19, -1, 4, 10, -21, -46, 0, 31, -20, 29, -6, -7, -15, 21, 11, -18, -5, 18, 4, 17, -21, -39, 0, 33, 23, 80, 12, -1, -12, 22, 19, -5, 1, 39, 14, 25, -16, -40, 0, 33, 21, 48, 15, 8, -23, -69, -67, -50, -47, -8, 5, 17, -33, -54, 0, 37, -14, 6, -50, -39, -53, -42, -30, -51, -25, -27, 4, -101, -92, -96, 0, 38, 27, 71, 19, -22, -55, -62, -32, -44, -31, -14, 3, 23, -25, -43, 0, 38, -6, 84, 72, -11, -71, -42, -50, -53, -32, -36, -31, 32, -22, -52, 0, 39, 2, 63, 51, -21, -23, 18, 18, 15, 13, 10, 10, 17, -18, -40, 0, 40, 36, 22, -4, -13, -14, 12, 28, 4, 7, 36, 15, 23, -17, -40, 0, 40, -33, 11, -37, -25, -36, -15, -1, -23, -16, 9, -3, -1, -27, -45, 0, 40, -2, 17, -20, -20, -28, -2, -2, -29, -13, 9, 2, 10, -21, -41, 0, 41, 6, 41, 2, -10, -15, 22, 15, -21, -1, 24, 7, 19, -18, -39, 0, 41, 1, -2, -32, -16, -34, -65, -63, -50, -28, 31, 25, 44, -34, -59, 0, 41, 18, 32, -13, -22, -27, -2, -4, -35, -9, 11, 2, 15, -20, -38, 0, 42, 21, -5, -56, -59, -41, -14, 5, -26, -47, -3, -3, 21, -23, -50, 0, 44, 12, 2, 42, -49, -90, -55, -51, -34, -11, -45, 15, 37, -55, -19, 0, 47, 7, 51, -35, -42, -48, -36, -27, -53, -49, -37, -16, -3, -28, -43, 0, 48, -36, -108, -69, 47, 90, 53, 24, 101, 48, -111, -61, -78, 43, 96, 0, 52, -36, -48, -2, -66, -62, 0, -31, -48, -12, 37, 3, 9, -34, -68, 0, 54, 40, 29, -28, -20, -34, -27, -19, -47, -33, -1, -1, 15, -21, -43, 0, 55, 55, 33, -35, -76, -70, -38, -13, -19, -30, -14, -11, 10, -35, -47, 0, 56, 0, 23, 24, -51, 1, 112, -21, 17, 15, 42, 0, 41, -22, -44, 0, 56, -12, 24, -4, -13, -21, 6, 7, -19, -7, 24, 6, 13, -20, -40, 0, 57, 32, -31, 8, -38, -55, -38, -76, -54, -21, -28, 7, 20, -51, -45, 0, 57, -10, -32, -29, -14, -6, 21, 57, 16, -2, -2, 2, 8, -28, -47, 0, 58, -10, 31, 25, -7, -54, -24, -63, -101, -27, 24, -20, 53, -20, -77, 0, 59, 10, 62, -9, -6, -28, -24, -8, -27, -21, 4, -2, 18, -24, -45, 0, 61, 18, 27, -3, -3, -7, 11, 18, -8, 0, 26, 10, 24, -20, -41, 0, 64, -27, 4, -23, -34, -61, -46, -51, -56, -23, -3, -2, 27, -25, -44, 0, 65, 28, 55, 33, -6, -12, -9, 10, -27, -20, -14, -2, 0, -26, -43, 0, 65, -22, 31, 45, -69, -46, -62, -115, -32, -31, 2, -5, 30, -38, -41, 0, 65, 4, 2, -43, -41, -35, 3, -4, -42, -21, 15, 1, -16, -38, -53, 0, 66, 14, 50, 51, 9, -51, -59, -28, -55, -24, 3, -9, 9, -16, -44, 0, 66, 15, 11, -4, -16, -42, -51, -37, -60, -25, 18, 9, 28, -19, -47, 0, 68, 65, 65, 8, -14, -23, -15, -1, -16, -11, 11, 6, 21, -25, -42, 0, 70, 1, -65, -18, -27, -55, -2, -3, -69, 0, -64, 16, -12, -56, -41, 0, 71, 52, 82, -20, -45, -65, -49, 14, -43, -16, 6, -28, -7, -34, -54, 0, 74, -44, -17, -46, -57, -49, -9, -4, -36, -24, -21, -3, 0, -31, -52, 0, 76, 1, -22, 19, -39, -51, -64, -94, -17, -16, 6, 5, 29, -41, -50, 0, 76, 29, 61, -13, -5, -6, -108, -31, -13, -76, -21, -3, -12, -23, -64, 0, 78, -15, -2, -31, -94, -68, 26, 11, -38, -23, 0, -25, 46, -13, -54, 0, 78, 26, -8, -46, -32, -33, -24, -1, -26, -18, 8, 4, 16, -22, -44, 0, 79, -26, 31, -28, -29, -37, -20, -2, -31, -26, -5, -2, 6, -26, -47, 0, 80, -3, -33, -15, -82, -12, -28, -28, -18, -54, 18, -2, 33, -43, -65, 0, 81, -48, -20, -1, -99, -25, -22, -79, -35, -22, 29, 5, 6, -45, -63, 0, 88, 12, 57, 20, -22, -44, -45, -35, -45, -30, -58, -8, 51, -24, -60, 0, 89, 41, 28, 15, -16, -55, -80, -25, -48, -36, -52, -4, 36, -37, -49, 0, 93, 6, -10, -20, -16, -21, -12, 11, -16, -10, 10, 4, 13, -23, -42, 0, 95, -40, 78, 24, -19, -1, -24, 3, -25, -27, 16, 5, 14, -17, -48, 0, 95, 21, 38, -11, -65, -79, -23, 37, -38, -28, 7, -6, 9, -21, -45, 0, 95, -5, 13, 47, -16, -55, -22, -49, -71, -9, 11, 4, 36, -18, -47, 0, 99, -8, 13, -29, -43, -40, -49, -17, -39, -23, 0, -1, 6, -28, -43, 0, 105, 7, 50, 37, -15, -19, 19, 7, -17, -9, -4, -5, 1, -27, -42, 0, 105, 60, 28, -37, -44, -39, -32, -4, -28, -20, -9, -5, 1, -29, -44, 0, 111, -30, -20, -2, -22, -7, 42, 45, 7, -15, -29, -9, -8, -35, -50, 0, 116, 64, 56, 12, 4, -9, -12, -6, -22, -2, 11, -6, -11, -32, -46, 0, 118, 19, 24, 4, -24, -33, -21, -1, -28, -9, 14, -3, 9, -21, -43 }; const Word8 *const snsSt1_stage1_W8Qx_dct_sections_tcx20[4]={ sns_tcx20_dct_s0_W8Qx, sns_tcx20_dct_s1_W8Qx, sns_tcx20_dct_s2_W8Qx, &(sns_tcx20_dct_s2_W8Qx[1568/2]) }; const Word8 *const snsSt1_stage1_W8Qx_dct_sections_tcx10[4]={0}; const Word8 *const* snsSt1_stage1_W8Qx_dct_sections[2]={snsSt1_stage1_W8Qx_dct_sections_tcx20, snsSt1_stage1_W8Qx_dct_sections_tcx10 }; const Word16 *const snsSt1_dct_col_syn_shift_tcx20[4]={0}; const Word16 snsSt1_tcx20_stage1_col_syn_shift_segm0[12]={ 0, 4, 3, 3, 3, 3, 2, 2, 2, 1, 1, 0 }; const Word16 snsSt1_tcx20_stage1_col_syn_shift_segm1[14]={ 0, 4, 4, 3, 3, 3, 3, 2, 2, 1, 2, 1, 2, 1 }; const Word16 snsSt1_tcx20_stage1_col_syn_shift_segm2[16]={ 0, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 1, 2, 1, 2, 2 }; const Word16 *const snsSt1_dct_col_syn_shift_tcx20[4]={snsSt1_tcx20_stage1_col_syn_shift_segm0,snsSt1_tcx20_stage1_col_syn_shift_segm1,snsSt1_tcx20_stage1_col_syn_shift_segm2, snsSt1_tcx20_stage1_col_syn_shift_segm2}; const Word16 *const snsSt1_dct_col_syn_shift_tcx10[4]={0}; const Word16 *const* snsSt1_dct_col_syn_shift[2]={snsSt1_dct_col_syn_shift_tcx20, snsSt1_dct_col_syn_shift_tcx10 }; const Word8 snsSt1_segm_neighbour_fwd_tcx20[128]={0}; const Word8 snsSt1_segm_neighbour_fwd_tcx20[128]= { 44, 37, 23, 61, 60, 3, 28, 120, 108, 100, 26, 8, 121, 29, 15, 17, 33, 45, 21, 18, 19, 88, 1, 4, 6, 97, 126, 116, 10, 125, 32, 35, 31, 30, 39, 38, 20, 41, 14, 16, 43, 42, 48, 36, 34, 40, 2, 52, 65, 53, 54, 50, 57, 64, 59, 46, 49, 66, 55, 56, 68, 47, 51, 79, 71, 73, 63, 58, 77, 72, 80, 76, 81, 24, 78, 70, 74, 25, 5, 90, 93, 83, 69, 75, 82, 67, 94, 84, 22, 111, 110, 62, 95, 102, 85, 106, 104, 98, 92, 113, 103, 115, 122, 86, 87, 107, 112, 91, 99, 101, 117, 114, 7, 119, 11, 89, 96, 9, 0, 118, 127, 109, 13, 27, 105, 12, 124, 123 }; const Word8 snsSt1_segm_neighbour_fwd_tcx10[128]={0}; const Word8 *const snsSt1_segm_neighbour_fwd[2]={snsSt1_segm_neighbour_fwd_tcx20 , snsSt1_segm_neighbour_fwd_tcx10}; const Word8 snsSt1_segm_neighbour_rev_tcx20[128]={0}; const Word8 snsSt1_segm_neighbour_rev_tcx20[128]= { 118, 22, 46, 5, 23, 78, 24, 112, 11, 117, 28, 114, 125, 122, 38, 14, 39, 15, 19, 20, 36, 18, 88, 2, 73, 77, 10, 123, 6, 13, 33, 32, 30, 16, 44, 31, 43, 1, 35, 34, 45, 37, 41, 40, 0, 17, 55, 61, 42, 56, 51, 62, 47, 49, 50, 58, 59, 52, 67, 54, 4, 3, 91, 66, 53, 48, 57, 85, 60, 82, 75, 64, 69, 65, 76, 83, 71, 68, 74, 63, 70, 72, 84, 81, 87, 94, 103, 104, 21, 115, 79, 107, 98, 80, 86, 92, 116, 25, 97, 108, 9, 109, 93, 100, 96, 124, 95, 105, 8, 121, 90, 89, 106, 99, 111, 101, 27, 110, 119, 113, 7, 12, 102, 127, 126, 29, 26, 120 }; const Word8 snsSt1_segm_neighbour_rev_tcx10[128]={0}; const Word8 *const snsSt1_segm_neighbour_rev[2]={snsSt1_segm_neighbour_rev_tcx20 , snsSt1_segm_neighbour_rev_tcx10};