Commit 006afa87 authored by Archit Tamarapu's avatar Archit Tamarapu
Browse files

rename switch to FIX_I54_LS_CONVERSION and also fix a bug in the 7_1 to

7_1_4 upmix matrix
parent 5b669784
Loading
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -155,7 +155,7 @@

#define REFACTOR_REVERB_INIT_ADD_CFG_CHECKS             /* Simplify and improve reverb initialization + add range checks on config parameter values */ 

#define FIX_I54_LS_DMX                                  /* FhG: fix incorrect downmix matrix for 5_1_4 to 5_1_2 */
#define FIX_I54_LS_CONVERSION                           /* FhG: fix incorrect downmix matrix for 5_1_4 to 5_1_2 and upmix matrix for 7_1 to 7_1_4 */

/* ################## End DEVELOPMENT switches ######################### */
/* clang-format on */
+22 −1
Original line number Diff line number Diff line
@@ -620,7 +620,7 @@ const LS_CONVERSION_MATRIX ls_conversion_cicp16_cicp14[] =
    /* First row indicates the number of non-zero elements */
    {10, 0.0f},
    /* Index of non-zero element, value of non-zero element*/
#ifdef FIX_I54_LS_DMX
#ifdef FIX_I54_LS_CONVERSION
    {0,  1.000000000f},
    {9,  1.000000000f},
    {18, 1.000000000f},
@@ -760,6 +760,23 @@ const LS_CONVERSION_MATRIX ls_conversion_cicp12_cicp16[] =
    {75, 1.0f}
};

#define FIX_I54_LS_CONVERSION
const LS_CONVERSION_MATRIX ls_conversion_cicp12_cicp19[] =
{
    /* First row indicates the number of non-zero elements */
    {8,  0.0f},
    /* Index of non-zero element, value of non-zero element*/
    {0,  1.0f},
    {13, 1.0f},
    {26, 1.0f},
    {39, 1.0f},
    {54, 1.0f},
    {67, 1.0f},
    {76, 1.0f},
    {89, 1.0f}
};
#endif

const LS_CONVERSION_MATRIX ls_conversion_cicp14_cicp19[] =
{
    /* First row indicates the number of non-zero elements */
@@ -840,7 +857,11 @@ const LS_CONVERSION_MAPPING ls_conversion_mapping[LS_SETUP_CONVERSION_NUM_MAPPIN

    {AUDIO_CONFIG_7_1, AUDIO_CONFIG_5_1_2, ls_conversion_cicp12_cicp14},
    {AUDIO_CONFIG_7_1, AUDIO_CONFIG_5_1_4, ls_conversion_cicp12_cicp16},
#ifdef FIX_I54_LS_CONVERSION
    {AUDIO_CONFIG_7_1, AUDIO_CONFIG_7_1_4, ls_conversion_cicp12_cicp19},
#else
    {AUDIO_CONFIG_7_1, AUDIO_CONFIG_7_1_4, NULL},
#endif

    {AUDIO_CONFIG_5_1_2, AUDIO_CONFIG_5_1_4, NULL},
    {AUDIO_CONFIG_5_1_2, AUDIO_CONFIG_7_1_4, ls_conversion_cicp14_cicp19},
+3 −0
Original line number Diff line number Diff line
@@ -130,6 +130,9 @@ extern const LS_CONVERSION_MATRIX ls_conversion_cicp19_cicp16[];
/* Upmix matrices */
extern const LS_CONVERSION_MATRIX ls_conversion_cicp12_cicp14[];
extern const LS_CONVERSION_MATRIX ls_conversion_cicp12_cicp16[];
#ifdef FIX_I54_LS_CONVERSION
extern const LS_CONVERSION_MATRIX ls_conversion_cicp12_cicp19[];
#endif
extern const LS_CONVERSION_MATRIX ls_conversion_cicp14_cicp19[];
extern const LS_CONVERSION_MATRIX ls_conversion_cicp16_cicp19[];

+5 −1
Original line number Diff line number Diff line
@@ -134,6 +134,10 @@ IVAS_CICP12_TO_16 = np.zeros(8 * 10)
IVAS_CICP12_TO_16[[0, 11, 22, 33, 44, 55, 64, 75]] = 1
IVAS_CICP12_TO_16 = IVAS_CICP12_TO_16.reshape(8, 10)

IVAS_CICP12_TO_19 = np.zeros(8 * 12)
IVAS_CICP12_TO_19[[0, 13, 26, 39, 54, 67, 76, 89]] = 1
IVAS_CICP12_TO_19 = IVAS_CICP12_TO_19.reshape(8, 12)

IVAS_CICP14_TO_19 = np.zeros(8 * 12)
IVAS_CICP14_TO_19[[0, 13, 26, 39, 52, 65, 80, 93]] = 1
IVAS_CICP14_TO_19 = IVAS_CICP14_TO_19.reshape(8, 12)
@@ -178,7 +182,7 @@ IVAS_MC_CONVERSION = {
        # upmix
        "5_1_2": IVAS_CICP12_TO_14,
        "5_1_4": IVAS_CICP12_TO_16,
        "7_1_4": np.pad(np.eye(8), [[0, 0], [0, 4]]),
        "7_1_4": IVAS_CICP12_TO_19,
    },
    "5_1_2": {
        # downmix