Commit 51c71ef0 authored by Jan Kiene's avatar Jan Kiene
Browse files

Merge branch...

Merge branch '1057-segfault-in-mc-decoding-to-binaural_room_reverb-when-using-either-t-or-exof-with-ltv' into 'main'

[Non-BE] Resolve "Segfault in MC decoding to BINAURAL_ROOM_REVERB when using either -t or -exof with LTV testvectors and bitrate switching"

See merge request !1503
parents 77b02f16 cff493b5
Loading
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -169,6 +169,7 @@
/* any switch which is non-be wrt selection floating point code */
/* all switches in this category should start with "NONBE_" */

#define NONBE_FIX_1075                                  /* FhG: fix segfault for bitrate switching + BINAURAL_ROOM_REVERB output in MC */
#define NON_BE_FIX_EVS_USAN_ERR_IN_WAVEADJUST           /* FhG: address issue 1037 */
#define NON_BE_1055_RESET_LP_MEMORIES                   /* VA: issue 1055: Correctly reset LP filter MA and AR memories in bitrate switching */
#define NONBE_FIX_1058_DECODER_ERROR_WITH_REVERB_ROOM   /* FhG: issue 1058: do not initialize EFAP when IntSetup is HOA3 */
+18 −0
Original line number Diff line number Diff line
@@ -2086,6 +2086,15 @@ ivas_error ivas_init_decoder(
            {
                return error;
            }
#ifdef NONBE_FIX_1075
            if ( st_ivas->hOutSetup.output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB )
            {
                if ( ( error = ivas_reverb_open( &st_ivas->hReverb, st_ivas->hHrtfStatistics, st_ivas->hRenderConfig, st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK )
                {
                    return error;
                }
            }
#endif

            /* Allocate 'hIsmRendererData' handle and memory for delay buffer within 'hMasaIsmData' */
            if ( ( error = ivas_omasa_separate_object_renderer_open( st_ivas ) ) != IVAS_ERR_OK )
@@ -2155,6 +2164,15 @@ ivas_error ivas_init_decoder(
            {
                return error;
            }
#ifdef NONBE_FIX_1075
            if ( st_ivas->hOutSetup.output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB )
            {
                if ( ( error = ivas_reverb_open( &st_ivas->hReverb, st_ivas->hHrtfStatistics, st_ivas->hRenderConfig, st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK )
                {
                    return error;
                }
            }
#endif
        }
    }

+9 −0
Original line number Diff line number Diff line
@@ -1251,6 +1251,15 @@ static ivas_error ivas_mc_dec_reconfig(
                {
                    return error;
                }
#ifdef NONBE_FIX_1075
                if ( st_ivas->hOutSetup.output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB )
                {
                    if ( ( error = ivas_reverb_open( &st_ivas->hReverb, st_ivas->hHrtfStatistics, st_ivas->hRenderConfig, st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK )
                    {
                        return error;
                    }
                }
#endif

                if ( st_ivas->hIntSetup.output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB )
                {
+9 −0
Original line number Diff line number Diff line
@@ -386,6 +386,15 @@ ivas_error ivas_omasa_dec_config(
                    {
                        return error;
                    }
#ifdef NONBE_FIX_1075
                    if ( st_ivas->hOutSetup.output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB )
                    {
                        if ( ( error = ivas_reverb_open( &st_ivas->hReverb, st_ivas->hHrtfStatistics, st_ivas->hRenderConfig, st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK )
                        {
                            return error;
                        }
                    }
#endif
#ifdef FIX_1033_MEMORY_LEAK_OMASA
                }
#endif
+9 −0
Original line number Diff line number Diff line
@@ -503,6 +503,15 @@ ivas_error ivas_sba_dec_reconfigure(
                        return error;
                    }
                }
#ifdef NONBE_FIX_1075
                if ( st_ivas->hOutSetup.output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB )
                {
                    if ( ( error = ivas_reverb_open( &st_ivas->hReverb, st_ivas->hHrtfStatistics, st_ivas->hRenderConfig, st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK )
                    {
                        return error;
                    }
                }
#endif
            }

            /* Allocate memory for OSBA delay buffer */