Commit 32825a46 authored by Sandesh Venkatesh's avatar Sandesh Venkatesh
Browse files

Warnings fix for float-build, intermediate cleanup in renderer

parent 4f29a486
Loading
Loading
Loading
Loading
Loading
+14 −0
Original line number Diff line number Diff line
@@ -2561,6 +2561,9 @@ void getMetadataFromFileReader(
#ifdef IVAS_FLOAT_FIXED
    objectMetadataBuffer->positions[objIdx].azimuth_fx = (Word32)(ismMetadata.azimuth * (1<<22));
    objectMetadataBuffer->positions[objIdx].elevation_fx = (Word32)(ismMetadata.elevation * (1 << 22));
    objectMetadataBuffer->positions[objIdx].radius_fx = (Word16)(ismMetadata.radius * (1 << 9));
    objectMetadataBuffer->positions[objIdx].yaw_fx = (Word32)(ismMetadata.yaw * (1 << 22));
    objectMetadataBuffer->positions[objIdx].pitch_fx = (Word32)(ismMetadata.pitch * (1 << 22));
#endif // DEBUG

    objectMetadataBuffer->positions[objIdx].azimuth = ismMetadata.azimuth;
@@ -2626,6 +2629,13 @@ static void IsmPositionProvider_getNextFrame(
            objectMetadataBuffer->positions[objIdx].radius = 1.0f;
            objectMetadataBuffer->positions[objIdx].yaw = 0.0f;
            objectMetadataBuffer->positions[objIdx].pitch = 0.0f;
#ifdef IVAS_FLOAT_FIXED
            objectMetadataBuffer->positions[objIdx].azimuth_fx = 0;
            objectMetadataBuffer->positions[objIdx].elevation_fx = 0;
            objectMetadataBuffer->positions[objIdx].radius_fx = 512;
            objectMetadataBuffer->positions[objIdx].yaw_fx = 0;
            objectMetadataBuffer->positions[objIdx].pitch_fx = 0;
#endif
            objectMetadataBuffer->positions[objIdx].non_diegetic_flag = 0;
        }

@@ -2657,6 +2667,10 @@ static void IsmPositionProvider_getNextFrame(

        /* Clamp pitch to lie within [-90, 90] range (can't be wrapped easily) */
        objectMetadataBuffer->positions[objIdx].pitch = min( max( objectMetadataBuffer->positions[objIdx].pitch, -90 ), 90 );
#ifdef IVAS_FLOAT_FIXED
        objectMetadataBuffer->positions[objIdx].yaw_fx = (Word32)objectMetadataBuffer->positions[objIdx].yaw * (1 << Q22);
        objectMetadataBuffer->positions[objIdx].pitch_fx = (Word32)objectMetadataBuffer->positions[objIdx].pitch * (1 << Q22);
#endif
    }

    ++positionProvider->frameCounter;
+2 −0
Original line number Diff line number Diff line
@@ -437,6 +437,7 @@ void hp20(Word16 signal[], /* i/o: signal to filter any *
}


#ifdef IVAS_FLOAT_FIXED
void hp20_fix32(
	Word32 signal_fx[],
	const Word16 lg,
@@ -580,3 +581,4 @@ void hp20_fix32(

	return;
}
#endif
 No newline at end of file
+4 −0
Original line number Diff line number Diff line
@@ -6830,7 +6830,11 @@ ivas_error ivas_ls_custom_output_init(

void ivas_ls_custom_setup(
    IVAS_OUTPUT_SETUP_HANDLE hOutSetup,                         /* o  : IVAS output setup handle                        */
#ifdef IVAS_FLOAT_FIXED
    LSSETUP_CUSTOM_STRUCT *hLsSetupCustom                 /* i  : Custom loudspeaker setup handle                 */
#else
    const LSSETUP_CUSTOM_STRUCT *hLsSetupCustom                 /* i  : Custom loudspeaker setup handle                 */
#endif // IVAS_FLOAT_FIXED
);
#endif

+9 −7
Original line number Diff line number Diff line
@@ -84,8 +84,8 @@
 * Static functions declaration
 *------------------------------------------------------------------------------------------*/

#ifdef IVAS_FLOAT_FIXED

static void ivas_get_pred_coeffs( float *pppCov_mat_re[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH], float ppPred_coeffs_re[IVAS_SPAR_MAX_CH - 1][IVAS_MAX_NUM_BANDS], float ppDM_Fv_re[IVAS_SPAR_MAX_CH - 1][IVAS_MAX_NUM_BANDS], const int16_t in_chans, const int16_t start_band, const int16_t end_band, const int16_t active_w, const int16_t active_w_vlbr, const int16_t dtx_vad, const int16_t from_dirac, const int16_t dyn_active_w_flag, const int16_t res_ind );
static void ivas_get_pred_coeffs_fx(
    Word32 *cov_real[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH],
    Word32 ppPred_coeffs_re[IVAS_SPAR_MAX_CH - 1][IVAS_MAX_NUM_BANDS],
@@ -101,21 +101,23 @@ static void ivas_get_pred_coeffs_fx(
    const Word16 res_ind,
    Word16 *q_pred_coeffs,
    Word16 *q_dm_fv_re );
static void ivas_reorder_array_fx(Word32 in_re[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH][IVAS_MAX_NUM_BANDS], const Word16 in_chans, const Word16 order[IVAS_SPAR_MAX_CH], Word32 ***mixer_mat, const Word16 start_band, const Word16 end_band);
static void ivas_get_Wscaling_factor_fx(Word32 *cov_real[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH], Word16 q_cov_real, Word32 pred_coeffs_re[IVAS_SPAR_MAX_CH - 1][IVAS_MAX_NUM_BANDS], Word16 q_pred_coeffs_re, Word32 ***mixer_mat, Word16 q_mixer_mat, const Word16 start_band, const Word16 end_band, const Word16 dtx_vad, const Word16 num_ch, const Word16 *pNum_dmx, const Word16 bands_bw, const Word16 active_w, const Word16 active_w_vlbr, Word32 *pWscale, Word16 *q_pWscale, const Word16 dyn_active_w_flag);
static void ivas_calc_post_pred_per_band_fx(Word32 *cov_real[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH], Word16 q_cov_real, Word32 ***mixer_mat, Word16 q_mixer_mat, const Word16 num_ch, const Word16 band_idx, Word32 postpred_cov_re[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH], Word16 *q_postpred_cov_re);
static Word16 ivas_is_mat_inv_fx(Word32 in_re[MAX_MAT_DIM][MAX_MAT_DIM], Word16 q_in_re, const Word16 dim);
static void ivas_calc_mat_inv_fx(Word32 in_re[MAX_MAT_DIM][MAX_MAT_DIM], Word16 q_in_re, const Word16 dim, Word32 out_re[MAX_MAT_DIM][MAX_MAT_DIM], Word16 *q_out_re);
#endif
static void ivas_get_pred_coeffs( float *pppCov_mat_re[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH], float ppPred_coeffs_re[IVAS_SPAR_MAX_CH - 1][IVAS_MAX_NUM_BANDS], float ppDM_Fv_re[IVAS_SPAR_MAX_CH - 1][IVAS_MAX_NUM_BANDS], const int16_t in_chans, const int16_t start_band, const int16_t end_band, const int16_t active_w, const int16_t active_w_vlbr, const int16_t dtx_vad, const int16_t from_dirac, const int16_t dyn_active_w_flag, const int16_t res_ind );

static void ivas_reorder_array( float in_re[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH][IVAS_MAX_NUM_BANDS], const int16_t in_chans, const int16_t order[IVAS_SPAR_MAX_CH], float ***mixer_mat, const int16_t start_band, const int16_t end_band );
static void ivas_reorder_array_fx(Word32 in_re[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH][IVAS_MAX_NUM_BANDS], const Word16 in_chans, const Word16 order[IVAS_SPAR_MAX_CH], Word32 ***mixer_mat, const Word16 start_band, const Word16 end_band);

static void ivas_get_Wscaling_factor( float *pppCov_mat_re[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH], float pred_coeffs_re[IVAS_SPAR_MAX_CH - 1][IVAS_MAX_NUM_BANDS], float ***mixer_mat, const int16_t start_band, const int16_t end_band, const int16_t dtx_vad, const int16_t num_ch, const int16_t *pNum_dmx, const int16_t bands_bw, const int16_t active_w, const int16_t active_w_vlbr, float *pWscale, const int16_t dyn_active_w_flag );
static void ivas_get_Wscaling_factor_fx(Word32 *cov_real[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH], Word16 q_cov_real, Word32 pred_coeffs_re[IVAS_SPAR_MAX_CH - 1][IVAS_MAX_NUM_BANDS], Word16 q_pred_coeffs_re, Word32 ***mixer_mat, Word16 q_mixer_mat, const Word16 start_band, const Word16 end_band, const Word16 dtx_vad, const Word16 num_ch, const Word16 *pNum_dmx, const Word16 bands_bw, const Word16 active_w, const Word16 active_w_vlbr, Word32 *pWscale, Word16 *q_pWscale, const Word16 dyn_active_w_flag );

static void ivas_calc_post_pred_per_band( float *pppCov_mat_re[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH], float ***mixer_mat, const int16_t num_ch, const int16_t band_idx, float postpred_cov_re[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH] );
static void ivas_calc_post_pred_per_band_fx(Word32 *cov_real[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH], Word16 q_cov_real, Word32 ***mixer_mat, Word16 q_mixer_mat, const Word16 num_ch, const Word16 band_idx, Word32 postpred_cov_re[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH], Word16 *q_postpred_cov_re);

static int16_t ivas_is_mat_inv( float in_re[MAX_MAT_DIM][MAX_MAT_DIM], const int16_t dim );
static Word16 ivas_is_mat_inv_fx(Word32 in_re[MAX_MAT_DIM][MAX_MAT_DIM], Word16 q_in_re, const Word16 dim);

static void ivas_calc_mat_inv( float in_re[MAX_MAT_DIM][MAX_MAT_DIM], const int16_t dim, float out_re[MAX_MAT_DIM][MAX_MAT_DIM] );
static void ivas_calc_mat_inv_fx(Word32 in_re[MAX_MAT_DIM][MAX_MAT_DIM], Word16 q_in_re, const Word16 dim, Word32 out_re[MAX_MAT_DIM][MAX_MAT_DIM],	Word16 *q_out_re);

/*-----------------------------------------------------------------------------------------*
 * Function ivas_get_bw_idx_from_sample_rate()
@@ -6604,6 +6606,7 @@ void ivas_spar_set_bitrate_config(
    return;
}

#ifdef IVAS_FLOAT_FIXED
static Word32 ceil32_fx(Word32 var1, Word16 q)
{
  Word32 ans, temp;
@@ -6614,7 +6617,6 @@ static Word32 ceil32_fx(Word32 var1, Word16 q)
  ELSE
    return L_add(ans, 1);
}
#ifdef IVAS_FLOAT_FIXED
void ivas_spar_set_bitrate_config_fx(
  ivas_spar_md_com_cfg *pSpar_md_cfg, /* i/o: SPAR MD config. handle  */
  const Word16 table_idx,            /* i  : config. table index     */
+1 −1
Original line number Diff line number Diff line
@@ -384,6 +384,7 @@ static void lerp_proc(const Word16 *f, Word16 *f_out, Word16 bufferNewSize, Word
}


#ifdef IVAS_FLOAT_FIXED
static void lerp_proc32(Word32 *f, Word32 *f_out, Word16 bufferNewSize, Word16 bufferOldSize)
{

@@ -479,7 +480,6 @@ static void lerp_proc32(Word32 *f, Word32 *f_out, Word16 bufferNewSize, Word16 b

}

#ifdef IVAS_FLOAT_FIXED

static void L_lerp_proc_fx( const Word32 *f_fx, Word32 *f_out_fx, const Word16 bufferNewSize, const Word16 bufferOldSize );

Loading