Commit 9197219a authored by emerit's avatar emerit
Browse files

fix issue 1229

parent 7b212b76
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -127,4 +127,6 @@
#define FIX_ISSUE_1185                          /* Ittiam: Fix for issue 1185: Assertion in ivas_dirac_dec_binaural_internal_fx() for crash in decoder in fft30_with_cmplx_data()*/
#define FIX_ISSUE_1209                          /* Ittiam: Fix for issue 1209: Assertion exit in BASOP encoder (stereo_dmx_evs)*/
#define IVAS_ISSUE_1188_EVS_CRASH               /* Ittiam: Fix for issue 1188: Issue due to ASAN */
#define FIX_ISSUE_1229                          /* Orange : FIX_ISSUE_1209: Fx Decoder output differs between HRTF from ROM and from file */

#endif
+20 −0
Original line number Diff line number Diff line
@@ -37,6 +37,10 @@
#include "prot_fx.h"
#include "ivas_prot.h"
#include "ivas_prot_fx.h"
#ifdef FIX_ISSUE_1229
#include <math.h>
#endif


/*---------------------------------------------------------------------*
 * Local structures
@@ -958,7 +962,11 @@ static ivas_error create_HRTF_from_rawdata(
                    float *tmp, temp_buf[1];
                    tmp = temp_buf;
                    memcpy( tmp, hrtf_data_rptr, sizeof( float ) );
#ifdef FIX_ISSUE_1229
                    pOut_to_bin_wptr_fx[l] = (Word32) roundf( *tmp * ONE_IN_Q29 );
#else
                    pOut_to_bin_wptr_fx[l] = (Word32) ( *tmp * ONE_IN_Q29 );
#endif
                    hrtf_data_rptr += sizeof( float );
                }
                // hrtf_data_rptr += mem_size;
@@ -990,7 +998,11 @@ static ivas_error create_HRTF_from_rawdata(
                    float *tmp, temp_buf[1];
                    tmp = temp_buf;
                    memcpy( tmp, hrtf_data_rptr, sizeof( float ) );
#ifdef FIX_ISSUE_1229
                    pOut_to_bin_wptr_fx[l] = (Word32) roundf( *tmp * ONE_IN_Q29 );
#else
                    pOut_to_bin_wptr_fx[l] = (Word32) ( *tmp * ONE_IN_Q29 );
#endif
                    hrtf_data_rptr += sizeof( float );
                }
                // hrtf_data_rptr += mem_size;
@@ -1027,7 +1039,11 @@ static ivas_error create_HRTF_from_rawdata(
                    float *tmp, temp_buf[1];
                    tmp = temp_buf;
                    memcpy( tmp, hrtf_data_rptr, sizeof( float ) );
#ifdef FIX_ISSUE_1229
                    pOut_to_bin_wptr_fx[l] = (Word32) roundf( *tmp * ONE_IN_Q31 );
#else
                    pOut_to_bin_wptr_fx[l] = (Word32) ( *tmp * ONE_IN_Q29 );
#endif
                    hrtf_data_rptr += sizeof( float );
                }
                // hrtf_data_rptr += mem_size;
@@ -1057,7 +1073,11 @@ static ivas_error create_HRTF_from_rawdata(
                    float *tmp, temp_buf[1];
                    tmp = temp_buf;
                    memcpy( tmp, hrtf_data_rptr, sizeof( float ) );
#ifdef FIX_ISSUE_1229
                    pOut_to_bin_wptr_fx[l] = (Word32) roundf( *tmp * ONE_IN_Q31 );
#else
                    pOut_to_bin_wptr_fx[l] = (Word32) ( *tmp * ONE_IN_Q29 );
#endif
                    hrtf_data_rptr += sizeof( float );
                }
                // hrtf_data_rptr += mem_size;