Loading lib_com/options.h +2 −1 Original line number Diff line number Diff line Loading @@ -170,7 +170,8 @@ #define FLOAT_INTERFACE_DEC_REND #ifdef FLOAT_INTERFACE_DEC_REND #define FLOAT_INTERFACE_DEC_REND_MCT_TMP_FIX // #define FLOAT_INTERFACE_DEC_REND_MCT_TMP_FIX #define FLOAT_INTERFACE_DEC_REND_DBG_OOB_WRITES #endif /* ################## End DEVELOPMENT switches ######################### */ Loading lib_dec/ivas_dec.c +19 −0 Original line number Diff line number Diff line Loading @@ -124,6 +124,16 @@ ivas_error ivas_dec( * copying from `outputMemory` to `data` at the end of this function. */ save_channel_pointers( outputMemory, MAX_OUTPUT_CHANNELS, output_frame, output ); #ifdef FLOAT_INTERFACE_DEC_REND_DBG_OOB_WRITES /* Overwrite channel pointers with a newly allocated buffer for each channel, * so that ASAN is triggered when writing out of bounds occurs */ for (n = 0; n < MAX_OUTPUT_CHANNELS; ++n) { output[n] = malloc(output_frame * sizeof(float)); } #endif #endif /*----------------------------------------------------------------* Loading Loading @@ -622,6 +632,15 @@ ivas_error ivas_dec( ivas_limiter_dec( st_ivas->hLimiter, output, nchan_out, output_frame, st_ivas->BER_detect ); #ifdef FLOAT_INTERFACE_DEC_REND #ifdef FLOAT_INTERFACE_DEC_REND_DBG_OOB_WRITES /* Copy audio from separate channel buffers to packed buffer */ for (n = 0; n < MAX_OUTPUT_CHANNELS; ++n) { mvr2r(output[n], outputMemory + n * output_frame, output_frame); free(output[n]); } #endif mvr2r( outputMemory, data, output_frame * nchan_out ); #else /* float to integer conversion moved to IVAS_DEC_GetSamples() */ Loading Loading
lib_com/options.h +2 −1 Original line number Diff line number Diff line Loading @@ -170,7 +170,8 @@ #define FLOAT_INTERFACE_DEC_REND #ifdef FLOAT_INTERFACE_DEC_REND #define FLOAT_INTERFACE_DEC_REND_MCT_TMP_FIX // #define FLOAT_INTERFACE_DEC_REND_MCT_TMP_FIX #define FLOAT_INTERFACE_DEC_REND_DBG_OOB_WRITES #endif /* ################## End DEVELOPMENT switches ######################### */ Loading
lib_dec/ivas_dec.c +19 −0 Original line number Diff line number Diff line Loading @@ -124,6 +124,16 @@ ivas_error ivas_dec( * copying from `outputMemory` to `data` at the end of this function. */ save_channel_pointers( outputMemory, MAX_OUTPUT_CHANNELS, output_frame, output ); #ifdef FLOAT_INTERFACE_DEC_REND_DBG_OOB_WRITES /* Overwrite channel pointers with a newly allocated buffer for each channel, * so that ASAN is triggered when writing out of bounds occurs */ for (n = 0; n < MAX_OUTPUT_CHANNELS; ++n) { output[n] = malloc(output_frame * sizeof(float)); } #endif #endif /*----------------------------------------------------------------* Loading Loading @@ -622,6 +632,15 @@ ivas_error ivas_dec( ivas_limiter_dec( st_ivas->hLimiter, output, nchan_out, output_frame, st_ivas->BER_detect ); #ifdef FLOAT_INTERFACE_DEC_REND #ifdef FLOAT_INTERFACE_DEC_REND_DBG_OOB_WRITES /* Copy audio from separate channel buffers to packed buffer */ for (n = 0; n < MAX_OUTPUT_CHANNELS; ++n) { mvr2r(output[n], outputMemory + n * output_frame, output_frame); free(output[n]); } #endif mvr2r( outputMemory, data, output_frame * nchan_out ); #else /* float to integer conversion moved to IVAS_DEC_GetSamples() */ Loading