Commit 20a0d424 authored by emerit's avatar emerit
Browse files

Merge branch '1785-10ms_Rendering_Assert_in_ivas_jbm_dec_render_fx()_scale_sig32' into 'main'

Resolve issue 1785 "10ms Rendering: Assert in ivas_jbm_dec_render_fx() -> scale_sig32"

Closes #1785

See merge request !2350
parents 32bdeedf 5cb6587d
Loading
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -76,6 +76,7 @@
#define FIX_1990_SANITIZER_IN_REVERB_LOAD                    /* Nokia: Fix issue part of issue 1990 by introducing missing free of structure - keep until #2059 is addressed */
#define FIX_1999_TEMPORARY_DISABLE_DIST_ATT_CHECK            /* Eri: Issue 1999: Range check on float values of distance attenuation, while the float values are not propagated to this function. The test is not correct, but configurable distance attenuation is not used in Characterization.*/
#define OPT_IGF_GET_WHITE_SPEC_DATA                          /* FhG: optimized version of IGF_getWhiteSpectralData_ivas() */
#define FIX_1785_ASSERT_IN_IVAS_JBM_DEC_RENDER_FX            /* Orange: 10ms Rendering: Assert in ivas_jbm_dec_render_fx() -> scale_sig32 */
#define FIX_2081_REVISE_H1_SCALING                           /* VA: accommodate for H1 overshoot that was causing assert in set_impule. Not BE with MASA on LTV with bitrate switching for only 2 instances */
#define TEMP_FIX_2088_MSAN_INIT_ERROR                        /* Eri: Temporary fix for Issue 2088 - MSAN error. Will come with later port of JBM+Split rendering update */

+49 −0
Original line number Diff line number Diff line
@@ -2370,6 +2370,26 @@ ivas_error ivas_jbm_dec_render_fx(
                *st_ivas->hCrendWrapper->p_io_qfactor = exp;
                move16();

#ifdef FIX_1785_ASSERT_IN_IVAS_JBM_DEC_RENDER_FX
                IF( crendInPlaceRotation )
                {
                    FOR( i = 0; i < nchan_in; i++ )
                    {
                        scale_sig32( p_output_fx[i], *nSamplesRendered, negate( sub( Q11, *st_ivas->hCrendWrapper->p_io_qfactor ) ) ); // Q = *st_ivas->hCrendWrapper->p_io_qfactor
                        IF( st_ivas->hDecoderConfig->Opt_tsm )
                        {
                            scale_sig32( p_tc_fx[i], *nSamplesRendered, negate( sub( Q11, *st_ivas->hCrendWrapper->p_io_qfactor ) ) ); // Q = *st_ivas->hCrendWrapper->p_io_qfactor
                        }
                    }
                }
                ELSE
                {
                    FOR( i = 0; i < nchan_in; i++ )
                    {
                        scale_sig32( p_tc_fx[i], *nSamplesRendered, negate( sub( Q11, *st_ivas->hCrendWrapper->p_io_qfactor ) ) ); // Q = *st_ivas->hCrendWrapper->p_io_qfactor
                    }
                }
#else
                FOR( i = 0; i < nchan_in; i++ )
                {
                    scale_sig32( p_output_fx[i], *nSamplesRendered, negate( sub( Q11, *st_ivas->hCrendWrapper->p_io_qfactor ) ) ); // Q = *st_ivas->hCrendWrapper->p_io_qfactor
@@ -2378,6 +2398,7 @@ ivas_error ivas_jbm_dec_render_fx(
                        scale_sig32( p_tc_fx[i], *nSamplesRendered, negate( sub( Q11, *st_ivas->hCrendWrapper->p_io_qfactor ) ) ); // Q = *st_ivas->hCrendWrapper->p_io_qfactor
                    }
                }
#endif

                IF( EQ_32( output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED ) || EQ_32( output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) )
                {
@@ -2411,6 +2432,33 @@ ivas_error ivas_jbm_dec_render_fx(
                    ivas_binaural_add_LFE_fx( st_ivas, *nSamplesRendered, p_tc_fx, p_output_fx );
                }

#ifdef FIX_1785_ASSERT_IN_IVAS_JBM_DEC_RENDER_FX
                IF( crendInPlaceRotation )
                {
                    n = nchan_in;
                }
                ELSE
                {
                    n = nchan_out;
                }
                move16();

                FOR( i = 0; i < n; i++ )
                {
                    scale_sig32( p_output_fx[i], *nSamplesRendered, sub( Q11, *st_ivas->hCrendWrapper->p_io_qfactor ) ); // Q11
                }

                IF( st_ivas->hDecoderConfig->Opt_tsm && crendInPlaceRotation )
                {
                    n = 0;
                    move16();
                }

                FOR( i = n; i < nchan_in; i++ )
                {
                    scale_sig32( p_tc_fx[i], *nSamplesRendered, sub( Q11, *st_ivas->hCrendWrapper->p_io_qfactor ) ); // Q11
                }
#else
                FOR( i = 0; i < nchan_in; i++ )
                {
                    scale_sig32( p_output_fx[i], *nSamplesRendered, sub( Q11, *st_ivas->hCrendWrapper->p_io_qfactor ) ); // Q11
@@ -2419,6 +2467,7 @@ ivas_error ivas_jbm_dec_render_fx(
                        scale_sig32( p_tc_fx[i], *nSamplesRendered, sub( Q11, *st_ivas->hCrendWrapper->p_io_qfactor ) ); // Q11
                    }
                }
#endif
            }
            ELSE IF( EQ_32( st_ivas->renderer_type, RENDERER_MC ) )
            {
+0 −7457

File deleted.

Preview size limit exceeded, changes collapsed.

+0 −350

File deleted.

Preview size limit exceeded, changes collapsed.

+0 −59840

File deleted.

Preview size limit exceeded, changes collapsed.

Loading