diff --git a/apps/renderer.c b/apps/renderer.c index 7d890c648e34659c0da5ef7536c50f3aed041c6d..7f5af747d530f6f1059e802fcd2e979faf7f6f6c 100644 --- a/apps/renderer.c +++ b/apps/renderer.c @@ -3834,7 +3834,7 @@ static ivas_error parseLfePanMtxFile( /* set default panning matrix to all zeros any subsequent issue in file reading will gracefully exit the function */ - for ( lfe_in = 0; lfe_in < IVAS_MAX_INPUT_LFE_CHANNELS; lfe_in++ ) + for ( lfe_in = 0; lfe_in < RENDERER_MAX_INPUT_LFE_CHANNELS; lfe_in++ ) { for ( i = 0; i < IVAS_MAX_OUTPUT_CHANNELS; i++ ) { @@ -3842,7 +3842,7 @@ static ivas_error parseLfePanMtxFile( } } - for ( lfe_in = 0; lfe_in < IVAS_MAX_INPUT_LFE_CHANNELS; lfe_in++ ) + for ( lfe_in = 0; lfe_in < RENDERER_MAX_INPUT_LFE_CHANNELS; lfe_in++ ) { ch_out = 0; diff --git a/lib_com/common_api_types.h b/lib_com/common_api_types.h index 1ccb94000c0162c2345037fa2c53218ae90d130d..4f1a452c611c84279c0ba33b7bc7c91422f233cf 100644 --- a/lib_com/common_api_types.h +++ b/lib_com/common_api_types.h @@ -46,19 +46,16 @@ #define IVAS_NUM_FRAMES_PER_SEC 50 #define IVAS_MAX_FRAME_SIZE ( 48000 / IVAS_NUM_FRAMES_PER_SEC ) - #define IVAS_MAX_BITS_PER_FRAME ( 512000 / IVAS_NUM_FRAMES_PER_SEC ) -#define IVAS_MAX_NUM_OBJECTS 4 -#define IVAS_MAX_INPUT_CHANNELS 16 -#define IVAS_MAX_OUTPUT_CHANNELS 16 -#define IVAS_CLDFB_NO_COL_MAX 16 -#define IVAS_CLDFB_NO_CHANNELS_MAX 60 -#define IVAS_MAX_INPUT_LFE_CHANNELS 4 +#define IVAS_MAX_NUM_OBJECTS 4 +#define IVAS_MAX_INPUT_CHANNELS 16 +#define IVAS_MAX_OUTPUT_CHANNELS 16 +#define IVAS_CLDFB_NO_COL_MAX 16 +#define IVAS_CLDFB_NO_CHANNELS_MAX 60 #define IVAS_MAX_PARAM_SPATIAL_SUBFRAMES 4 - -#define IVAS_ROOM_ABS_COEFF 6 +#define IVAS_ROOM_ABS_COEFF 6 /*----------------------------------------------------------------------------------* * Common API enum for output audio configurations diff --git a/lib_com/ivas_cnst.h b/lib_com/ivas_cnst.h index 04850edf4e7c77ef92e1dbdac0e2ea618c5dce47..e9173e6e931619f4a1318119829a2dbc9d453bb0 100755 --- a/lib_com/ivas_cnst.h +++ b/lib_com/ivas_cnst.h @@ -1822,29 +1822,11 @@ typedef enum * Early Reflection constants *----------------------------------------------------------------------------------*/ -#define ER_ABS_COEFF 6 -#define ER_MAX_SOURCES 25 -#define ER_REF_ORDER 1 -#define ER_NUM_REF 6 - -#define ER_AIR_COEFF (0.00137f) -#define ER_SOUND_SPEED (343.0f) -#define ER_MIN_WALL_DIST (0.1f) -#define ER_EUCLIDEAN_SCALE (1.29246971E-26f) - -#define ER_DEFAULT_ROOM_L (3.0f) -#define ER_DEFAULT_ROOM_W (4.0f) -#define ER_DEFAULT_ROOM_H (5.0f) #define ER_RADIUS (1.0f) #define ER_LIST_ORIGIN_X (0.0f) #define ER_LIST_ORIGIN_Y (0.0f) #define ER_LIST_HEIGHT (1.6f) -#define ER_MIN_ROOM_DIMENSION (1.0f) -#define ER_MAX_ROOM_DIMENSION (999.0f) -#define ER_MIN_ABS_COEFF (0.0f) -#define ER_MAX_ABS_COEFF (1.0f) - /*----------------------------------------------------------------------------------* * Stereo downmix EVS constants diff --git a/lib_dec/lib_dec.c b/lib_dec/lib_dec.c index 9c5f8b2d789b5e73a439468cda24eda4a6389afb..0a70bab57f1b34bd93f79477f4923475e9d63d7c 100644 --- a/lib_dec/lib_dec.c +++ b/lib_dec/lib_dec.c @@ -2259,7 +2259,7 @@ ivas_error IVAS_DEC_FeedRenderConfig( hRenderConfig->roomAcoustics.dimensions = renderConfig.roomAcoustics.dimensions; hRenderConfig->roomAcoustics.ListenerOrigin = renderConfig.roomAcoustics.ListenerOrigin; - mvr2r( renderConfig.roomAcoustics.AbsCoeff, hRenderConfig->roomAcoustics.AbsCoeff, ER_ABS_COEFF ); + mvr2r( renderConfig.roomAcoustics.AbsCoeff, hRenderConfig->roomAcoustics.AbsCoeff, IVAS_ROOM_ABS_COEFF ); } mvr2r( renderConfig.roomAcoustics.pFc_input, hRenderConfig->roomAcoustics.pFc_input, CLDFB_NO_CHANNELS_MAX ); diff --git a/lib_rend/ivas_crend.c b/lib_rend/ivas_crend.c index 8055ae2ea607ca9435d633badf45e83f46b41a61..582056fb78e639dd5c1758bb9f227decfa0a2c27 100644 --- a/lib_rend/ivas_crend.c +++ b/lib_rend/ivas_crend.c @@ -992,7 +992,7 @@ static ivas_error ivas_shoebox_config_init_params( hShoeboxConfig->room_W = 0.0f; hShoeboxConfig->room_H = 0.0f; - for ( i = 0; i < ER_ABS_COEFF; i++ ) + for ( i = 0; i < IVAS_ROOM_ABS_COEFF; i++ ) { hShoeboxConfig->abs_coeff[i] = 0.0f; } diff --git a/lib_rend/ivas_reflections.c b/lib_rend/ivas_reflections.c index 7d5982b7d4def317fe97efffde1ba5223dfae2dc..47143e20c3e97682454a78dc039a35ce06367344 100644 --- a/lib_rend/ivas_reflections.c +++ b/lib_rend/ivas_reflections.c @@ -51,6 +51,8 @@ * Local constants/tabels *-----------------------------------------------------------------------------------------*/ +#define ER_NUM_REF 6 + static uint16_t LC_mixing_5_1[5] = { 0, 1, 2, 0, 1 }; static uint16_t LC_mixing_7_1[7] = { 0, 1, 2, 3, 4, 3, 4 }; diff --git a/lib_rend/ivas_shoebox.c b/lib_rend/ivas_shoebox.c index 7c0f3c67d55004703bcf8da493b77971b84fd17b..12368f5fde5ae8a4af31a898e1e962ceef9c9336 100644 --- a/lib_rend/ivas_shoebox.c +++ b/lib_rend/ivas_shoebox.c @@ -39,6 +39,19 @@ #include "prot.h" #include "wmc_auto.h" + +/*------------------------------------------------------------------------- + * Local constants + *------------------------------------------------------------------------*/ + +#define ER_MAX_SOURCES 25 +#define ER_REF_ORDER 1 +#define ER_AIR_COEFF ( 0.00137f ) +#define ER_SOUND_SPEED ( 343.0f ) +#define ER_MIN_WALL_DIST ( 0.1f ) +#define ER_EUCLIDEAN_SCALE ( 1.29246971E-26f ) + + /*-----------------------------------------------------------------------------------------* * Function ivas_shoebox_config_init * diff --git a/lib_rend/ivas_stat_rend.h b/lib_rend/ivas_stat_rend.h index 79a7951e531438793d133f52fa5bf0ac692a14fc..1f6dfe5079e26a32c40c177f7d6b315d8cc95a29 100644 --- a/lib_rend/ivas_stat_rend.h +++ b/lib_rend/ivas_stat_rend.h @@ -816,7 +816,7 @@ typedef struct float room_L; float room_W; float room_H; - float abs_coeff[ER_ABS_COEFF]; + float abs_coeff[IVAS_ROOM_ABS_COEFF]; float list_orig[3]; } shoebox_config_t; diff --git a/lib_rend/lib_rend.c b/lib_rend/lib_rend.c index fdc88ddb4a49e52bf7e87e3bcc7e7e864935123b..1b34fbdcde4b470641e70ead71e87de93a6997b9 100644 --- a/lib_rend/lib_rend.c +++ b/lib_rend/lib_rend.c @@ -2333,7 +2333,7 @@ static lfe_routing defaultLfeRouting( /* Set all output gains to zero, then route each input LFE consecutively to the next available output LFE. */ - for ( i = 0; i < IVAS_MAX_INPUT_LFE_CHANNELS; ++i ) + for ( i = 0; i < RENDERER_MAX_INPUT_LFE_CHANNELS; ++i ) { set_zero( routing.lfePanMtx[i], IVAS_MAX_OUTPUT_CHANNELS ); } @@ -4434,7 +4434,7 @@ ivas_error IVAS_REND_SetInputLfeMtx( pInputMc = (input_mc *) pInputBase; /* copy LFE panning matrix */ - for ( i = 0; i < IVAS_MAX_INPUT_LFE_CHANNELS; i++ ) + for ( i = 0; i < RENDERER_MAX_INPUT_LFE_CHANNELS; i++ ) { mvr2r( ( *lfePanMtx )[i], pInputMc->lfeRouting.lfePanMtx[i], IVAS_MAX_OUTPUT_CHANNELS ); } @@ -5073,7 +5073,7 @@ int16_t IVAS_REND_FeedRenderConfig( hRenderConfig->roomAcoustics.dimensions = renderConfig.roomAcoustics.dimensions; hRenderConfig->roomAcoustics.ListenerOrigin = renderConfig.roomAcoustics.ListenerOrigin; - mvr2r( renderConfig.roomAcoustics.AbsCoeff, hRenderConfig->roomAcoustics.AbsCoeff, ER_ABS_COEFF ); + mvr2r( renderConfig.roomAcoustics.AbsCoeff, hRenderConfig->roomAcoustics.AbsCoeff, IVAS_ROOM_ABS_COEFF ); } #ifdef SPLIT_REND_WITH_HEAD_ROT diff --git a/lib_rend/lib_rend.h b/lib_rend/lib_rend.h index 1224ab54626fe4b0190cfb80eb2d2792ccda10b8..6df2ff3f4093ce2962f0a694150ec7235e03a849 100644 --- a/lib_rend/lib_rend.h +++ b/lib_rend/lib_rend.h @@ -40,10 +40,11 @@ * Renderer constants *---------------------------------------------------------------------*/ -#define RENDERER_MAX_ISM_INPUTS 4 -#define RENDERER_MAX_MC_INPUTS 1 -#define RENDERER_MAX_SBA_INPUTS 1 -#define RENDERER_MAX_MASA_INPUTS 1 +#define RENDERER_MAX_ISM_INPUTS 4 +#define RENDERER_MAX_MC_INPUTS 1 +#define RENDERER_MAX_SBA_INPUTS 1 +#define RENDERER_MAX_MASA_INPUTS 1 +#define RENDERER_MAX_INPUT_LFE_CHANNELS 4 #ifdef SPLIT_REND_WITH_HEAD_ROT #define RENDERER_MAX_BIN_INPUTS 1 #endif @@ -53,7 +54,7 @@ * Renderer structures *---------------------------------------------------------------------*/ -typedef float IVAS_REND_LfePanMtx[IVAS_MAX_INPUT_LFE_CHANNELS][IVAS_MAX_OUTPUT_CHANNELS]; +typedef float IVAS_REND_LfePanMtx[RENDERER_MAX_INPUT_LFE_CHANNELS][IVAS_MAX_OUTPUT_CHANNELS]; typedef struct { diff --git a/lib_util/render_config_reader.c b/lib_util/render_config_reader.c index 29027ae99be2a882321aa35d01b0e774ca4ef2ee..a1d778980de2ffde72d8efbffdee697028cca807 100644 --- a/lib_util/render_config_reader.c +++ b/lib_util/render_config_reader.c @@ -64,6 +64,11 @@ #define INPUTPREDELAY_MIN ( 0.0f ) #define INPUTPREDELAY_MAX ( 1.0e+2f ) +#define ER_MIN_ROOM_DIMENSION ( 1.0f ) +#define ER_MAX_ROOM_DIMENSION ( 999.0f ) +#define ER_MIN_ABS_COEFF ( 0.0f ) +#define ER_MAX_ABS_COEFF ( 1.0f ) + /*------------------------------------------------------------------------------------------* * Local Type definitions *------------------------------------------------------------------------------------------*/ @@ -1229,7 +1234,7 @@ ivas_error RenderConfigReader_checkValues( } /* Abs Coeff */ - for ( wall_idx = 0; wall_idx < ER_ABS_COEFF; wall_idx++ ) + for ( wall_idx = 0; wall_idx < IVAS_ROOM_ABS_COEFF; wall_idx++ ) { if ( pRoom_acoustics->AbsCoeff[wall_idx] < ER_MIN_ABS_COEFF ) {