Loading apps/isar_post_rend.c +1 −1 Original line number Diff line number Diff line Loading @@ -1047,7 +1047,7 @@ int main( IVAS_QUATERNION headRot; IVAS_VECTOR3 Pos; IF( ( error = HeadRotationFileReading_fx( headRotReader, &headRot, &Pos ) ) != IVAS_ERR_OK ) IF( ( error = HeadRotationFileReading( headRotReader, &headRot, &Pos ) ) != IVAS_ERR_OK ) { fprintf( stderr, "Error in Head Rotation File Reading: %s\n", ivas_error_to_string( error ) ); exit( -1 ); Loading apps/renderer.c +16 −6 Original line number Diff line number Diff line Loading @@ -1373,7 +1373,7 @@ int main( #endif ); if ( IVAS_REND_GetDelay( hIvasRend, &delayNumSamples_temp, &delayTimeScale_temp ) != IVAS_ERR_OK ) if ( IVAS_REND_GetDelay_fx( hIvasRend, &delayNumSamples_temp, &delayTimeScale_temp ) != IVAS_ERR_OK ) { fprintf( stderr, "\nUnable to get delay of renderer!\n" ); exit( -1 ); Loading Loading @@ -1414,7 +1414,7 @@ int main( #endif ); if ( IVAS_REND_GetDelay( hIvasRend, &delayNumSamples_temp, &delayTimeScale_temp ) != IVAS_ERR_OK ) if ( IVAS_REND_GetDelay_fx( hIvasRend, &delayNumSamples_temp, &delayTimeScale_temp ) != IVAS_ERR_OK ) { fprintf( stderr, "\nUnable to get delay of renderer!\n" ); exit( -1 ); Loading Loading @@ -1576,7 +1576,7 @@ int main( #ifdef SPLIT_REND_WITH_HEAD_ROT Word16 Q_out; *outBuffer.pq_fact = 16 - ( gd_bits ); convertInputBuffer_fx( inpInt16Buffer, numSamplesRead, inBuffer.config.numSamplesPerChannel, num_in_channels, inInt32Buffer, inBuffer.config.is_cldfb, cldfbAna, *outBuffer.pq_fact, &Q_out ); convertInputBuffer_fx( inpInt16Buffer, numSamplesRead, inBuffer.config.numSamplesPerChannel, num_in_channels, inInt32Buffer, *outBuffer.pq_fact, inBuffer.config.is_cldfb, cldfbAna, &Q_out ); *outBuffer.pq_fact = Q_out; #else *outBuffer.pq_fact = 16 - ( gd_bits ); Loading Loading @@ -3854,7 +3854,7 @@ static void convertInputBuffer_fx( IVAS_REND_cldfbAnalysis_ts_wrapper( &fIn[chnl][numCldfbBands * slotIdx], &Word32Buffer[( chnl * numFloatSamplesPerChannel ) + ( 2 * slotIdx * numCldfbBands )], &Word32Buffer[numCldfbBands + ( chnl * numFloatSamplesPerChannel ) + ( 2 * slotIdx * numCldfbBands )], numCldfbBands, cldfbAna[chnl], Q11, *out_q_factor ); numCldfbBands, cldfbAna[chnl], Q11, out_q_factor ); } } } Loading Loading @@ -3916,7 +3916,7 @@ static void convertOutputBuffer_fx( #ifdef SPLIT_REND_WITH_HEAD_ROT IF( cldfb_in_flag ) { Word16 slotIdx, numCldfbBands, numPcmSamples, b, temp_out_q; Word16 slotIdx, numCldfbBands, numPcmSamples, b, temp_out_q = 0; Word32 fIn[IVAS_MAX_OUTPUT_CHANNELS][IVAS_MAX_FRAME_SIZE]; Word32 re[IVAS_MAX_OUTPUT_CHANNELS][IVAS_CLDFB_NO_COL_MAX][IVAS_CLDFB_NO_CHANNELS_MAX]; Word32 im[IVAS_MAX_OUTPUT_CHANNELS][IVAS_CLDFB_NO_COL_MAX][IVAS_CLDFB_NO_CHANNELS_MAX]; Loading Loading @@ -3960,7 +3960,17 @@ static void convertOutputBuffer_fx( { FOR( chnl = 0; chnl < numChannels; ++chnl ) { intBuffer[i] = (Word16) L_shl( fIn[chnl][smpl], sub( out_q, temp_out_q ) ); temp_fx = L_add( fIn[chnl][smpl], lshl( 1, ( temp_out_q - 1 ) ) ); temp_fx1 = L_shr( temp_fx, temp_out_q ); IF( GT_32( temp_fx1, IVAS_MAX16B_FX ) ) { temp_fx1 = IVAS_MAX16B_FX; } ELSE IF( LT_32( temp_fx1, IVAS_MIN16B_FX ) ) { temp_fx1 = IVAS_MIN16B_FX; } intBuffer[i] = (Word16) temp_fx1; ++i; } } Loading lib_com/ivas_limiter.c +1 −0 Original line number Diff line number Diff line Loading @@ -36,6 +36,7 @@ #include "prot.h" #include "ivas_prot_rend.h" #include "ivas_rom_rend.h" #include "ivas_rom_com.h" #include "wmc_auto.h" #include <assert.h> #include "ivas_prot_fx.h" Loading lib_com/ivas_prot.h +8 −8 Original line number Diff line number Diff line Loading @@ -3296,26 +3296,26 @@ void ivas_td_decorr_get_ducking_gains( ); #define IVAS_CMULT_FLOAT( in1_re, in1_im, in2_re, in2_im, out1_re, out1_im ) \ out1_re = ( in1_re * in2_re ) - ( in1_im * in2_im ); MAC(1); MULT(1); \ out1_im = ( in1_re * in2_im ) + ( in2_re * in1_im ); MAC(1); MULT(1); out1_re = ( in1_re * in2_re ) - ( in1_im * in2_im ); \ out1_im = ( in1_re * in2_im ) + ( in2_re * in1_im ); #define IVAS_CALCULATE_ABS( re, im, out ) \ out = sqrtf( ( re * re ) + ( im * im ) ); MAC(1); MULT(1); SQRT(1); out = sqrtf( ( re * re ) + ( im * im ) ); #define IVAS_CALCULATE_RABS( re, out ) \ out = sqrtf( re * re ); MULT(1); SQRT(1); out = sqrtf( re * re ); #define IVAS_CALCULATE_SQ_ABS( re, im, out ) \ out = (float) ( ( re * re ) + ( im * im ) ); MAC(1); MULT(1); out = (float) ( ( re * re ) + ( im * im ) ); #define IVAS_RMULT_DOUBLE( in1_re, in2_re, out1_re ) \ out1_re = ( in1_re * in2_re ); DMULT(1); \ out1_re = ( in1_re * in2_re ); \ #define IVAS_CALCULATE_SQ_ABS_N( re, out ) \ out = (float) ( re * re ); MULT(1); out = (float) ( re * re ); #define IVAS_RMULT_FLOAT( in1_re, in2_re, out1_re ) \ out1_re = ( in1_re * in2_re ); MULT(1); out1_re = ( in1_re * in2_re ); /* PCA */ Loading lib_com/ivas_rom_com.c +819 −0 Original line number Diff line number Diff line Loading @@ -2901,3 +2901,822 @@ const Word16 ivas_param_upmx_mx_qmap[33] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 7, 6, 5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 7, 6, 5, 4, 3, 2, 1, 0 }; const Word32 release_cnst_table[4][201] = // Q31 { { 1913946752, 1919716352, 1925351680, 1930855552, 1936230784, 1941479808, 1946605312, 1951609728, 1956495744, 1961265792, 1965922304, 1970467584, 1974904320, 1979234560, 1983460736, 1987585024, 1991609856, 1995537280, 1999369344, 2003108480, 2006756480, 2010315520, 2013787520, 2017174528, 2020478464, 2023701248, 2026844672, 2029910656, 2032900992, 2035817344, 2038661376, 2041435008, 2044139648, 2046777088, 2049348864, 2051856384, 2054301440, 2056685312, 2059009536, 2061275520, 2063484672, 2065638272, 2067737856, 2069784448, 2071779584, 2073724416, 2075620096, 2077467904, 2079268992, 2081024512, 2082735488, 2084403200, 2086028416, 2087612544, 2089156352, 2090660864, 2092127104, 2093555968, 2094948480, 2096305408, 2097627776, 2098916352, 2100172032, 2101395584, 2102587776, 2103749504, 2104881408, 2105984384, 2107059072, 2108106112, 2109126400, 2110120448, 2111088896, 2112032512, 2112951808, 2113847552, 2114720128, 2115570304, 2116398592, 2117205504, 2117991552, 2118757504, 2119503616, 2120230400, 2120938496, 2121628288, 2122300288, 2122954880, 2123592576, 2124213760, 2124818944, 2125408384, 2125982592, 2126541952, 2127086848, 2127617664, 2128134656, 2128638336, 2129128832, 2129606784, 2130072192, 2130525568, 2130967296, 2131397376, 2131816448, 2132224640, 2132622080, 2133009408, 2133386496, 2133753856, 2134111744, 2134460288, 2134799744, 2135130368, 2135452416, 2135766144, 2136071680, 2136369152, 2136659072, 2136941312, 2137216256, 2137484160, 2137744896, 2137998976, 2138246400, 2138487424, 2138722176, 2138950656, 2139173376, 2139390208, 2139601408, 2139807104, 2140007424, 2140202624, 2140392576, 2140577664, 2140758016, 2140933504, 2141104512, 2141271040, 2141433216, 2141591168, 2141745024, 2141894912, 2142040832, 2142182912, 2142321408, 2142456192, 2142587392, 2142715264, 2142839808, 2142961152, 2143079296, 2143194240, 2143306240, 2143415424, 2143521664, 2143625216, 2143725952, 2143824128, 2143919744, 2144012800, 2144103424, 2144191744, 2144277760, 2144361472, 2144443136, 2144522496, 2144599936, 2144675200, 2144748544, 2144820096, 2144889600, 2144957440, 2145023488, 2145087744, 2145150336, 2145211264, 2145270656, 2145328512, 2145384832, 2145439616, 2145493120, 2145545088, 2145595776, 2145645056, 2145693184, 2145739904, 2145785472, 2145829888, 2145873152, 2145915136, 2145956224, 2145996032, 2146034944, 2146072832, 2146109696, 2146145664, 2146180608, 2146214656, 2146247808, }, { 2027355264, 2030408704, 2033386624, 2036290944, 2039123328, 2041885440, 2044578944, 2047205376, 2049766528, 2052263680, 2054698496, 2057072384, 2059387008, 2061643520, 2063843328, 2065987968, 2068078720, 2070116864, 2072103552, 2074040192, 2075927936, 2077767936, 2079561472, 2081309568, 2083013376, 2084673920, 2086292352, 2087869696, 2089406976, 2090905216, 2092365184, 2093788032, 2095174528, 2096525824, 2097842432, 2099125632, 2100375808, 2101594240, 2102781312, 2103938048, 2105065216, 2106163456, 2107233536, 2108276096, 2109292032, 2110281728, 2111246080, 2112185728, 2113101056, 2113992960, 2114861824, 2115708288, 2116532992, 2117336448, 2118119168, 2118881792, 2119624704, 2120348416, 2121053440, 2121740288, 2122409344, 2123061120, 2123696128, 2124314624, 2124917120, 2125504128, 2126075776, 2126632832, 2127175296, 2127703808, 2128218624, 2128720000, 2129208448, 2129684352, 2130147712, 2130599168, 2131038976, 2131467264, 2131884416, 2132290816, 2132686592, 2133072256, 2133447680, 2133813504, 2134169856, 2134516864, 2134854784, 2135184000, 2135504640, 2135816960, 2136121216, 2136417536, 2136706048, 2136987136, 2137260928, 2137527552, 2137787264, 2138040192, 2138286592, 2138526464, 2138760192, 2138987776, 2139209472, 2139425408, 2139635712, 2139840512, 2140039936, 2140234240, 2140423424, 2140607744, 2140787200, 2140962048, 2141132288, 2141298048, 2141459584, 2141616896, 2141769984, 2141919232, 2142064512, 2142205952, 2142343808, 2142478080, 2142608768, 2142736128, 2142860032, 2142980864, 2143098368, 2143212928, 2143324544, 2143433088, 2143538944, 2143641984, 2143742336, 2143840000, 2143935232, 2144027904, 2144118144, 2144206080, 2144291712, 2144375168, 2144456320, 2144535424, 2144612480, 2144687488, 2144760448, 2144831616, 2144900992, 2144968448, 2145034112, 2145098112, 2145160448, 2145221248, 2145280256, 2145337856, 2145393920, 2145448576, 2145501696, 2145553536, 2145603968, 2145653120, 2145700992, 2145747456, 2145792896, 2145837056, 2145880064, 2145922048, 2145962880, 2146002560, 2146041344, 2146078976, 2146115712, 2146151424, 2146186240, 2146220160, 2146253184, 2146285312, 2146316672, 2146347136, 2146376832, 2146405760, 2146433920, 2146461440, 2146488192, 2146514176, 2146539520, 2146564224, 2146588160, 2146611584, 2146634368, 2146656640, 2146678272, 2146699264, 2146719744, 2146739712, 2146759168, 2146778112, 2146796544, 2146814464, 2146832000, 2146849024, 2146865664, }, { 2086555136, 2088125824, 2089656576, 2091148416, 2092602240, 2094018944, 2095399680, 2096745088, 2098056192, 2099333888, 2100578816, 2101792000, 2102974080, 2104125824, 2105248128, 2106341760, 2107407232, 2108445440, 2109456896, 2110442496, 2111402624, 2112338176, 2113249664, 2114137728, 2115002880, 2115845760, 2116666880, 2117466880, 2118246272, 2119005568, 2119745280, 2120465920, 2121167872, 2121851776, 2122517888, 2123166976, 2123799168, 2124414976, 2125014912, 2125599360, 2126168704, 2126723200, 2127263360, 2127789568, 2128302208, 2128801408, 2129287808, 2129761536, 2130222976, 2130672512, 2131110272, 2131536768, 2131952128, 2132356736, 2132750848, 2133134720, 2133508736, 2133872896, 2134227584, 2134573184, 2134909696, 2135237504, 2135556736, 2135867648, 2136170624, 2136465536, 2136752896, 2137032832, 2137305344, 2137570816, 2137829376, 2138081280, 2138326528, 2138565504, 2138798080, 2139024768, 2139245440, 2139460480, 2139669888, 2139873792, 2140072320, 2140265856, 2140454144, 2140637696, 2140816384, 2140990464, 2141159936, 2141325056, 2141485824, 2141642368, 2141794944, 2141943424, 2142088064, 2142228992, 2142366208, 2142499840, 2142630016, 2142756736, 2142880128, 2143000448, 2143117440, 2143231488, 2143342592, 2143450752, 2143556096, 2143658624, 2143758592, 2143855872, 2143950592, 2144043008, 2144132864, 2144220416, 2144305664, 2144388608, 2144469504, 2144548224, 2144624896, 2144699648, 2144772352, 2144843264, 2144912256, 2144979328, 2145044864, 2145108480, 2145170560, 2145231104, 2145289856, 2145347200, 2145403008, 2145457408, 2145510400, 2145561984, 2145612160, 2145661056, 2145708672, 2145755136, 2145800192, 2145844224, 2145887104, 2145928832, 2145969408, 2146008960, 2146047616, 2146085120, 2146121600, 2146157184, 2146191872, 2146225664, 2146258560, 2146290560, 2146321792, 2146352128, 2146381696, 2146410496, 2146438528, 2146465920, 2146492416, 2146518400, 2146543616, 2146568192, 2146592128, 2146615424, 2146638080, 2146660224, 2146681728, 2146702720, 2146723072, 2146743040, 2146762368, 2146781184, 2146799616, 2146817408, 2146834816, 2146851840, 2146868352, 2146884352, 2146900096, 2146915328, 2146930176, 2146944640, 2146958720, 2146972416, 2146985856, 2146998784, 2147011456, 2147023872, 2147035904, 2147047552, 2147058944, 2147070080, 2147080832, 2147091456, 2147101696, 2147111680, 2147121408, 2147130880, 2147140096, 2147149056, 2147157760, 2147166336, 2147174656, }, { 2106670080, 2107727232, 2108757120, 2109760640, 2110738432, 2111691008, 2112619136, 2113523328, 2114404352, 2115262592, 2116098816, 2116913408, 2117707136, 2118480256, 2119233536, 2119967360, 2120682240, 2121378688, 2122057088, 2122717952, 2123361792, 2123988992, 2124599936, 2125195136, 2125774848, 2126339584, 2126889728, 2127425536, 2127947520, 2128456064, 2128951296, 2129433856, 2129903744, 2130361600, 2130807424, 2131241728, 2131664768, 2132076928, 2132478208, 2132869248, 2133250048, 2133620992, 2133982208, 2134334080, 2134676864, 2135010688, 2135335936, 2135652608, 2135961088, 2136261504, 2136554112, 2136839168, 2137116800, 2137387136, 2137650560, 2137907072, 2138156928, 2138400256, 2138637184, 2138867968, 2139092864, 2139311744, 2139524992, 2139732736, 2139934976, 2140131968, 2140323840, 2140510720, 2140692736, 2140870016, 2141042688, 2141210752, 2141374592, 2141534080, 2141689344, 2141840640, 2141987968, 2142131456, 2142271232, 2142407424, 2142539904, 2142669056, 2142794752, 2142917248, 2143036544, 2143152640, 2143265792, 2143375872, 2143483264, 2143587712, 2143689472, 2143788544, 2143885056, 2143979136, 2144070656, 2144159872, 2144246656, 2144331264, 2144413568, 2144493824, 2144571904, 2144647936, 2144722048, 2144794240, 2144864512, 2144932864, 2144999552, 2145064448, 2145127680, 2145189248, 2145249152, 2145307520, 2145364480, 2145419776, 2145473792, 2145526272, 2145577472, 2145627264, 2145675776, 2145723008, 2145768960, 2145813760, 2145857408, 2145899904, 2145941376, 2145981696, 2146020864, 2146059136, 2146096384, 2146132608, 2146167936, 2146202368, 2146235776, 2146268416, 2146300160, 2146331136, 2146361216, 2146390528, 2146419200, 2146446976, 2146474112, 2146500480, 2146526208, 2146551168, 2146575488, 2146599296, 2146622464, 2146644864, 2146666880, 2146688128, 2146708992, 2146729216, 2146748928, 2146768128, 2146786816, 2146805120, 2146822784, 2146840064, 2146856960, 2146873344, 2146889216, 2146904832, 2146919936, 2146934656, 2146948992, 2146962944, 2146976640, 2146989824, 2147002752, 2147015296, 2147027584, 2147039488, 2147051136, 2147062400, 2147073408, 2147084160, 2147094528, 2147104768, 2147114624, 2147124352, 2147133696, 2147142912, 2147151744, 2147160448, 2147168896, 2147177088, 2147185152, 2147192960, 2147200512, 2147207936, 2147215104, 2147222144, 2147229056, 2147235712, 2147242112, 2147248384, 2147254656, 2147260544, 2147266432, 2147272064, 2147277568, }, }; No newline at end of file Loading
apps/isar_post_rend.c +1 −1 Original line number Diff line number Diff line Loading @@ -1047,7 +1047,7 @@ int main( IVAS_QUATERNION headRot; IVAS_VECTOR3 Pos; IF( ( error = HeadRotationFileReading_fx( headRotReader, &headRot, &Pos ) ) != IVAS_ERR_OK ) IF( ( error = HeadRotationFileReading( headRotReader, &headRot, &Pos ) ) != IVAS_ERR_OK ) { fprintf( stderr, "Error in Head Rotation File Reading: %s\n", ivas_error_to_string( error ) ); exit( -1 ); Loading
apps/renderer.c +16 −6 Original line number Diff line number Diff line Loading @@ -1373,7 +1373,7 @@ int main( #endif ); if ( IVAS_REND_GetDelay( hIvasRend, &delayNumSamples_temp, &delayTimeScale_temp ) != IVAS_ERR_OK ) if ( IVAS_REND_GetDelay_fx( hIvasRend, &delayNumSamples_temp, &delayTimeScale_temp ) != IVAS_ERR_OK ) { fprintf( stderr, "\nUnable to get delay of renderer!\n" ); exit( -1 ); Loading Loading @@ -1414,7 +1414,7 @@ int main( #endif ); if ( IVAS_REND_GetDelay( hIvasRend, &delayNumSamples_temp, &delayTimeScale_temp ) != IVAS_ERR_OK ) if ( IVAS_REND_GetDelay_fx( hIvasRend, &delayNumSamples_temp, &delayTimeScale_temp ) != IVAS_ERR_OK ) { fprintf( stderr, "\nUnable to get delay of renderer!\n" ); exit( -1 ); Loading Loading @@ -1576,7 +1576,7 @@ int main( #ifdef SPLIT_REND_WITH_HEAD_ROT Word16 Q_out; *outBuffer.pq_fact = 16 - ( gd_bits ); convertInputBuffer_fx( inpInt16Buffer, numSamplesRead, inBuffer.config.numSamplesPerChannel, num_in_channels, inInt32Buffer, inBuffer.config.is_cldfb, cldfbAna, *outBuffer.pq_fact, &Q_out ); convertInputBuffer_fx( inpInt16Buffer, numSamplesRead, inBuffer.config.numSamplesPerChannel, num_in_channels, inInt32Buffer, *outBuffer.pq_fact, inBuffer.config.is_cldfb, cldfbAna, &Q_out ); *outBuffer.pq_fact = Q_out; #else *outBuffer.pq_fact = 16 - ( gd_bits ); Loading Loading @@ -3854,7 +3854,7 @@ static void convertInputBuffer_fx( IVAS_REND_cldfbAnalysis_ts_wrapper( &fIn[chnl][numCldfbBands * slotIdx], &Word32Buffer[( chnl * numFloatSamplesPerChannel ) + ( 2 * slotIdx * numCldfbBands )], &Word32Buffer[numCldfbBands + ( chnl * numFloatSamplesPerChannel ) + ( 2 * slotIdx * numCldfbBands )], numCldfbBands, cldfbAna[chnl], Q11, *out_q_factor ); numCldfbBands, cldfbAna[chnl], Q11, out_q_factor ); } } } Loading Loading @@ -3916,7 +3916,7 @@ static void convertOutputBuffer_fx( #ifdef SPLIT_REND_WITH_HEAD_ROT IF( cldfb_in_flag ) { Word16 slotIdx, numCldfbBands, numPcmSamples, b, temp_out_q; Word16 slotIdx, numCldfbBands, numPcmSamples, b, temp_out_q = 0; Word32 fIn[IVAS_MAX_OUTPUT_CHANNELS][IVAS_MAX_FRAME_SIZE]; Word32 re[IVAS_MAX_OUTPUT_CHANNELS][IVAS_CLDFB_NO_COL_MAX][IVAS_CLDFB_NO_CHANNELS_MAX]; Word32 im[IVAS_MAX_OUTPUT_CHANNELS][IVAS_CLDFB_NO_COL_MAX][IVAS_CLDFB_NO_CHANNELS_MAX]; Loading Loading @@ -3960,7 +3960,17 @@ static void convertOutputBuffer_fx( { FOR( chnl = 0; chnl < numChannels; ++chnl ) { intBuffer[i] = (Word16) L_shl( fIn[chnl][smpl], sub( out_q, temp_out_q ) ); temp_fx = L_add( fIn[chnl][smpl], lshl( 1, ( temp_out_q - 1 ) ) ); temp_fx1 = L_shr( temp_fx, temp_out_q ); IF( GT_32( temp_fx1, IVAS_MAX16B_FX ) ) { temp_fx1 = IVAS_MAX16B_FX; } ELSE IF( LT_32( temp_fx1, IVAS_MIN16B_FX ) ) { temp_fx1 = IVAS_MIN16B_FX; } intBuffer[i] = (Word16) temp_fx1; ++i; } } Loading
lib_com/ivas_limiter.c +1 −0 Original line number Diff line number Diff line Loading @@ -36,6 +36,7 @@ #include "prot.h" #include "ivas_prot_rend.h" #include "ivas_rom_rend.h" #include "ivas_rom_com.h" #include "wmc_auto.h" #include <assert.h> #include "ivas_prot_fx.h" Loading
lib_com/ivas_prot.h +8 −8 Original line number Diff line number Diff line Loading @@ -3296,26 +3296,26 @@ void ivas_td_decorr_get_ducking_gains( ); #define IVAS_CMULT_FLOAT( in1_re, in1_im, in2_re, in2_im, out1_re, out1_im ) \ out1_re = ( in1_re * in2_re ) - ( in1_im * in2_im ); MAC(1); MULT(1); \ out1_im = ( in1_re * in2_im ) + ( in2_re * in1_im ); MAC(1); MULT(1); out1_re = ( in1_re * in2_re ) - ( in1_im * in2_im ); \ out1_im = ( in1_re * in2_im ) + ( in2_re * in1_im ); #define IVAS_CALCULATE_ABS( re, im, out ) \ out = sqrtf( ( re * re ) + ( im * im ) ); MAC(1); MULT(1); SQRT(1); out = sqrtf( ( re * re ) + ( im * im ) ); #define IVAS_CALCULATE_RABS( re, out ) \ out = sqrtf( re * re ); MULT(1); SQRT(1); out = sqrtf( re * re ); #define IVAS_CALCULATE_SQ_ABS( re, im, out ) \ out = (float) ( ( re * re ) + ( im * im ) ); MAC(1); MULT(1); out = (float) ( ( re * re ) + ( im * im ) ); #define IVAS_RMULT_DOUBLE( in1_re, in2_re, out1_re ) \ out1_re = ( in1_re * in2_re ); DMULT(1); \ out1_re = ( in1_re * in2_re ); \ #define IVAS_CALCULATE_SQ_ABS_N( re, out ) \ out = (float) ( re * re ); MULT(1); out = (float) ( re * re ); #define IVAS_RMULT_FLOAT( in1_re, in2_re, out1_re ) \ out1_re = ( in1_re * in2_re ); MULT(1); out1_re = ( in1_re * in2_re ); /* PCA */ Loading
lib_com/ivas_rom_com.c +819 −0 Original line number Diff line number Diff line Loading @@ -2901,3 +2901,822 @@ const Word16 ivas_param_upmx_mx_qmap[33] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 7, 6, 5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 7, 6, 5, 4, 3, 2, 1, 0 }; const Word32 release_cnst_table[4][201] = // Q31 { { 1913946752, 1919716352, 1925351680, 1930855552, 1936230784, 1941479808, 1946605312, 1951609728, 1956495744, 1961265792, 1965922304, 1970467584, 1974904320, 1979234560, 1983460736, 1987585024, 1991609856, 1995537280, 1999369344, 2003108480, 2006756480, 2010315520, 2013787520, 2017174528, 2020478464, 2023701248, 2026844672, 2029910656, 2032900992, 2035817344, 2038661376, 2041435008, 2044139648, 2046777088, 2049348864, 2051856384, 2054301440, 2056685312, 2059009536, 2061275520, 2063484672, 2065638272, 2067737856, 2069784448, 2071779584, 2073724416, 2075620096, 2077467904, 2079268992, 2081024512, 2082735488, 2084403200, 2086028416, 2087612544, 2089156352, 2090660864, 2092127104, 2093555968, 2094948480, 2096305408, 2097627776, 2098916352, 2100172032, 2101395584, 2102587776, 2103749504, 2104881408, 2105984384, 2107059072, 2108106112, 2109126400, 2110120448, 2111088896, 2112032512, 2112951808, 2113847552, 2114720128, 2115570304, 2116398592, 2117205504, 2117991552, 2118757504, 2119503616, 2120230400, 2120938496, 2121628288, 2122300288, 2122954880, 2123592576, 2124213760, 2124818944, 2125408384, 2125982592, 2126541952, 2127086848, 2127617664, 2128134656, 2128638336, 2129128832, 2129606784, 2130072192, 2130525568, 2130967296, 2131397376, 2131816448, 2132224640, 2132622080, 2133009408, 2133386496, 2133753856, 2134111744, 2134460288, 2134799744, 2135130368, 2135452416, 2135766144, 2136071680, 2136369152, 2136659072, 2136941312, 2137216256, 2137484160, 2137744896, 2137998976, 2138246400, 2138487424, 2138722176, 2138950656, 2139173376, 2139390208, 2139601408, 2139807104, 2140007424, 2140202624, 2140392576, 2140577664, 2140758016, 2140933504, 2141104512, 2141271040, 2141433216, 2141591168, 2141745024, 2141894912, 2142040832, 2142182912, 2142321408, 2142456192, 2142587392, 2142715264, 2142839808, 2142961152, 2143079296, 2143194240, 2143306240, 2143415424, 2143521664, 2143625216, 2143725952, 2143824128, 2143919744, 2144012800, 2144103424, 2144191744, 2144277760, 2144361472, 2144443136, 2144522496, 2144599936, 2144675200, 2144748544, 2144820096, 2144889600, 2144957440, 2145023488, 2145087744, 2145150336, 2145211264, 2145270656, 2145328512, 2145384832, 2145439616, 2145493120, 2145545088, 2145595776, 2145645056, 2145693184, 2145739904, 2145785472, 2145829888, 2145873152, 2145915136, 2145956224, 2145996032, 2146034944, 2146072832, 2146109696, 2146145664, 2146180608, 2146214656, 2146247808, }, { 2027355264, 2030408704, 2033386624, 2036290944, 2039123328, 2041885440, 2044578944, 2047205376, 2049766528, 2052263680, 2054698496, 2057072384, 2059387008, 2061643520, 2063843328, 2065987968, 2068078720, 2070116864, 2072103552, 2074040192, 2075927936, 2077767936, 2079561472, 2081309568, 2083013376, 2084673920, 2086292352, 2087869696, 2089406976, 2090905216, 2092365184, 2093788032, 2095174528, 2096525824, 2097842432, 2099125632, 2100375808, 2101594240, 2102781312, 2103938048, 2105065216, 2106163456, 2107233536, 2108276096, 2109292032, 2110281728, 2111246080, 2112185728, 2113101056, 2113992960, 2114861824, 2115708288, 2116532992, 2117336448, 2118119168, 2118881792, 2119624704, 2120348416, 2121053440, 2121740288, 2122409344, 2123061120, 2123696128, 2124314624, 2124917120, 2125504128, 2126075776, 2126632832, 2127175296, 2127703808, 2128218624, 2128720000, 2129208448, 2129684352, 2130147712, 2130599168, 2131038976, 2131467264, 2131884416, 2132290816, 2132686592, 2133072256, 2133447680, 2133813504, 2134169856, 2134516864, 2134854784, 2135184000, 2135504640, 2135816960, 2136121216, 2136417536, 2136706048, 2136987136, 2137260928, 2137527552, 2137787264, 2138040192, 2138286592, 2138526464, 2138760192, 2138987776, 2139209472, 2139425408, 2139635712, 2139840512, 2140039936, 2140234240, 2140423424, 2140607744, 2140787200, 2140962048, 2141132288, 2141298048, 2141459584, 2141616896, 2141769984, 2141919232, 2142064512, 2142205952, 2142343808, 2142478080, 2142608768, 2142736128, 2142860032, 2142980864, 2143098368, 2143212928, 2143324544, 2143433088, 2143538944, 2143641984, 2143742336, 2143840000, 2143935232, 2144027904, 2144118144, 2144206080, 2144291712, 2144375168, 2144456320, 2144535424, 2144612480, 2144687488, 2144760448, 2144831616, 2144900992, 2144968448, 2145034112, 2145098112, 2145160448, 2145221248, 2145280256, 2145337856, 2145393920, 2145448576, 2145501696, 2145553536, 2145603968, 2145653120, 2145700992, 2145747456, 2145792896, 2145837056, 2145880064, 2145922048, 2145962880, 2146002560, 2146041344, 2146078976, 2146115712, 2146151424, 2146186240, 2146220160, 2146253184, 2146285312, 2146316672, 2146347136, 2146376832, 2146405760, 2146433920, 2146461440, 2146488192, 2146514176, 2146539520, 2146564224, 2146588160, 2146611584, 2146634368, 2146656640, 2146678272, 2146699264, 2146719744, 2146739712, 2146759168, 2146778112, 2146796544, 2146814464, 2146832000, 2146849024, 2146865664, }, { 2086555136, 2088125824, 2089656576, 2091148416, 2092602240, 2094018944, 2095399680, 2096745088, 2098056192, 2099333888, 2100578816, 2101792000, 2102974080, 2104125824, 2105248128, 2106341760, 2107407232, 2108445440, 2109456896, 2110442496, 2111402624, 2112338176, 2113249664, 2114137728, 2115002880, 2115845760, 2116666880, 2117466880, 2118246272, 2119005568, 2119745280, 2120465920, 2121167872, 2121851776, 2122517888, 2123166976, 2123799168, 2124414976, 2125014912, 2125599360, 2126168704, 2126723200, 2127263360, 2127789568, 2128302208, 2128801408, 2129287808, 2129761536, 2130222976, 2130672512, 2131110272, 2131536768, 2131952128, 2132356736, 2132750848, 2133134720, 2133508736, 2133872896, 2134227584, 2134573184, 2134909696, 2135237504, 2135556736, 2135867648, 2136170624, 2136465536, 2136752896, 2137032832, 2137305344, 2137570816, 2137829376, 2138081280, 2138326528, 2138565504, 2138798080, 2139024768, 2139245440, 2139460480, 2139669888, 2139873792, 2140072320, 2140265856, 2140454144, 2140637696, 2140816384, 2140990464, 2141159936, 2141325056, 2141485824, 2141642368, 2141794944, 2141943424, 2142088064, 2142228992, 2142366208, 2142499840, 2142630016, 2142756736, 2142880128, 2143000448, 2143117440, 2143231488, 2143342592, 2143450752, 2143556096, 2143658624, 2143758592, 2143855872, 2143950592, 2144043008, 2144132864, 2144220416, 2144305664, 2144388608, 2144469504, 2144548224, 2144624896, 2144699648, 2144772352, 2144843264, 2144912256, 2144979328, 2145044864, 2145108480, 2145170560, 2145231104, 2145289856, 2145347200, 2145403008, 2145457408, 2145510400, 2145561984, 2145612160, 2145661056, 2145708672, 2145755136, 2145800192, 2145844224, 2145887104, 2145928832, 2145969408, 2146008960, 2146047616, 2146085120, 2146121600, 2146157184, 2146191872, 2146225664, 2146258560, 2146290560, 2146321792, 2146352128, 2146381696, 2146410496, 2146438528, 2146465920, 2146492416, 2146518400, 2146543616, 2146568192, 2146592128, 2146615424, 2146638080, 2146660224, 2146681728, 2146702720, 2146723072, 2146743040, 2146762368, 2146781184, 2146799616, 2146817408, 2146834816, 2146851840, 2146868352, 2146884352, 2146900096, 2146915328, 2146930176, 2146944640, 2146958720, 2146972416, 2146985856, 2146998784, 2147011456, 2147023872, 2147035904, 2147047552, 2147058944, 2147070080, 2147080832, 2147091456, 2147101696, 2147111680, 2147121408, 2147130880, 2147140096, 2147149056, 2147157760, 2147166336, 2147174656, }, { 2106670080, 2107727232, 2108757120, 2109760640, 2110738432, 2111691008, 2112619136, 2113523328, 2114404352, 2115262592, 2116098816, 2116913408, 2117707136, 2118480256, 2119233536, 2119967360, 2120682240, 2121378688, 2122057088, 2122717952, 2123361792, 2123988992, 2124599936, 2125195136, 2125774848, 2126339584, 2126889728, 2127425536, 2127947520, 2128456064, 2128951296, 2129433856, 2129903744, 2130361600, 2130807424, 2131241728, 2131664768, 2132076928, 2132478208, 2132869248, 2133250048, 2133620992, 2133982208, 2134334080, 2134676864, 2135010688, 2135335936, 2135652608, 2135961088, 2136261504, 2136554112, 2136839168, 2137116800, 2137387136, 2137650560, 2137907072, 2138156928, 2138400256, 2138637184, 2138867968, 2139092864, 2139311744, 2139524992, 2139732736, 2139934976, 2140131968, 2140323840, 2140510720, 2140692736, 2140870016, 2141042688, 2141210752, 2141374592, 2141534080, 2141689344, 2141840640, 2141987968, 2142131456, 2142271232, 2142407424, 2142539904, 2142669056, 2142794752, 2142917248, 2143036544, 2143152640, 2143265792, 2143375872, 2143483264, 2143587712, 2143689472, 2143788544, 2143885056, 2143979136, 2144070656, 2144159872, 2144246656, 2144331264, 2144413568, 2144493824, 2144571904, 2144647936, 2144722048, 2144794240, 2144864512, 2144932864, 2144999552, 2145064448, 2145127680, 2145189248, 2145249152, 2145307520, 2145364480, 2145419776, 2145473792, 2145526272, 2145577472, 2145627264, 2145675776, 2145723008, 2145768960, 2145813760, 2145857408, 2145899904, 2145941376, 2145981696, 2146020864, 2146059136, 2146096384, 2146132608, 2146167936, 2146202368, 2146235776, 2146268416, 2146300160, 2146331136, 2146361216, 2146390528, 2146419200, 2146446976, 2146474112, 2146500480, 2146526208, 2146551168, 2146575488, 2146599296, 2146622464, 2146644864, 2146666880, 2146688128, 2146708992, 2146729216, 2146748928, 2146768128, 2146786816, 2146805120, 2146822784, 2146840064, 2146856960, 2146873344, 2146889216, 2146904832, 2146919936, 2146934656, 2146948992, 2146962944, 2146976640, 2146989824, 2147002752, 2147015296, 2147027584, 2147039488, 2147051136, 2147062400, 2147073408, 2147084160, 2147094528, 2147104768, 2147114624, 2147124352, 2147133696, 2147142912, 2147151744, 2147160448, 2147168896, 2147177088, 2147185152, 2147192960, 2147200512, 2147207936, 2147215104, 2147222144, 2147229056, 2147235712, 2147242112, 2147248384, 2147254656, 2147260544, 2147266432, 2147272064, 2147277568, }, }; No newline at end of file