Commit 5efcdf4e authored by emerit's avatar emerit
Browse files

ok for left hrir

parent c90d43db
Loading
Loading
Loading
Loading
+5 −13
Original line number Diff line number Diff line
@@ -1123,7 +1123,7 @@ static ivas_error ivas_rend_crendConvolver(
    i = 0;
    for ( idx_in = 0; idx_in < nchan_in; idx_in++ )
    {
#ifndef
#ifndef USE_SYMETRIC_HRIR_FILTERS
        pIn = &pcm_in[idx_in][i_ts * subframe_length];
#endif
        if ( idx_in != lfe_idx_in )
@@ -1220,11 +1220,7 @@ static ivas_error ivas_rend_crendConvolver(
                            tmp_out_re[k] += pFreq_buf_re[k] * pFreq_filt_re[k] - pFreq_buf_im[k] * pFreq_filt_im[k];
                            tmp_out_im[k] += pFreq_buf_re[k] * pFreq_filt_im[k] + pFreq_buf_im[k] * pFreq_filt_re[k];
                        }
                        /*       for ( k = 0; k < pCrend->hHrtfCrend->pIndex_frequency_max[i][idx_j][m]; k++ )
                               {
                                   tmp_out_re[k] += pFreq_buf_re[k];
                                   tmp_out_im[k] += pFreq_buf_im[k];
                               }*/

                        offset = offset + k;
                    }
#else
@@ -1243,11 +1239,7 @@ static ivas_error ivas_rend_crendConvolver(
                        tmp_out_re[k] += pFreq_buf_re[k] * pFreq_filt_re[k] - pFreq_buf_im[k] * pFreq_filt_im[k];
                        tmp_out_im[k] += pFreq_buf_re[k] * pFreq_filt_im[k] + pFreq_buf_im[k] * pFreq_filt_re[k];
                    }
                    /*       for ( k = 0; k < pCrend->hHrtfCrend->pIndex_frequency_max[i][idx_j][m]; k++ )
                           {
                               tmp_out_re[k] += pFreq_buf_re[k];
                               tmp_out_im[k] += pFreq_buf_im[k];
                           }*/

                    offset = offset + k;
                }

@@ -1296,8 +1288,8 @@ static ivas_error ivas_rend_crendConvolver(
        for ( k = 0; k < subframe_length; k++ )
        {
            tmp_out_re[0] = pFreq_buf_re[k];
            pFreq_buf_re[k] = ( pFreq_buf_re[k] - pFreq_buf_im[k] );
            pFreq_buf_im[k] = ( tmp_out_re[0] + pFreq_buf_im[k] );
            pFreq_buf_re[k] = ( pFreq_buf_re[k] + pFreq_buf_im[k] );
            pFreq_buf_im[k] = ( tmp_out_re[0] - pFreq_buf_im[k] );
        }
    }
#endif
+216 −216

File changed.

Preview size limit exceeded, changes collapsed.

+9 −7
Original line number Diff line number Diff line
@@ -1523,7 +1523,7 @@ ivas_error ivas_crend_binaural_filter_design_convert_filters_to_sum_diff(
    struct ivas_layout_config lscfg,
    HRTFS_DATA **ppParamSumDiff )
{
    int32_t i_chan, i_tap, i_num, i_pair, i_offset_in, i_offset;
    int32_t i_chan, i_tap, i_num, i_pair, i_index, i_offset_in, i_offset;
    float data_ir_flt[L_FRAME48k] = { 0.0f };
    int32_t *pTotalNumFreqSampPerIterations;
    int32_t totalNumFreqSampPerIterationsDiffuse;
@@ -1628,31 +1628,33 @@ ivas_error ivas_crend_binaural_filter_design_convert_filters_to_sum_diff(
        i_pair = lscfg.sum_diff_pair[i_chan];
        i_offset = 0;
        i_offset_in = 0;
        i_index = sym_hrir == 0 ? i_chan : i_pair;
        for ( i_num = 0; i_num < ( *ppParamSumDiff )->num_iterations[i_chan][sym_hrir]; i_num++ )
        {
            for ( i_tap = 0; i_tap < pParamIn->pIndex_frequency_max[i_chan][sym_hrir][i_num]; i_tap++ )
            {
                ( *ppParamSumDiff )->pOut_to_bin_re[i_chan][sym_hrir][i_offset + i_tap] = 0.5f * pParamIn->pOut_to_bin_re[i_chan][sym_hrir][i_offset_in + i_tap];
                ( *ppParamSumDiff )->pOut_to_bin_im[i_chan][sym_hrir][i_offset + i_tap] = 0.5f * pParamIn->pOut_to_bin_im[i_chan][sym_hrir][i_offset_in + i_tap];
                ( *ppParamSumDiff )->pOut_to_bin_re[i_chan][sym_hrir][i_offset + i_tap] = 0.5f * pParamIn->pOut_to_bin_re[i_index][sym_hrir][i_offset_in + i_tap];
                ( *ppParamSumDiff )->pOut_to_bin_im[i_chan][sym_hrir][i_offset + i_tap] = 0.5f * pParamIn->pOut_to_bin_im[i_index][sym_hrir][i_offset_in + i_tap];
            }
            i_offset += ( *ppParamSumDiff )->pIndex_frequency_max[i_chan][sym_hrir][i_num];
            i_offset_in += pParamIn->pIndex_frequency_max[i_chan][sym_hrir][i_num];
        }
        i_offset = 0;
        i_offset_in = 0;
        i_index = sym_hrir == 0 ? i_pair : i_chan;
        for ( i_num = 0; i_num < ( *ppParamSumDiff )->num_iterations[i_chan][sym_hrir]; i_num++ )
        {
            for ( i_tap = 0; i_tap < pParamIn->pIndex_frequency_max[i_pair][sym_hrir][i_num]; i_tap++ )
            {
                if ( lscfg.sum_diff[i_chan] )
                {
                    ( *ppParamSumDiff )->pOut_to_bin_re[i_chan][sym_hrir][i_offset + i_tap] -= 0.5f * pParamIn->pOut_to_bin_re[i_pair][sym_hrir][i_offset_in + i_tap];
                    ( *ppParamSumDiff )->pOut_to_bin_im[i_chan][sym_hrir][i_offset + i_tap] -= 0.5f * pParamIn->pOut_to_bin_im[i_pair][sym_hrir][i_offset_in + i_tap];
                    ( *ppParamSumDiff )->pOut_to_bin_re[i_chan][sym_hrir][i_offset + i_tap] = 0.5f * pParamIn->pOut_to_bin_re[i_index][sym_hrir][i_offset_in + i_tap] - ( *ppParamSumDiff )->pOut_to_bin_re[i_chan][sym_hrir][i_offset + i_tap];
                    ( *ppParamSumDiff )->pOut_to_bin_im[i_chan][sym_hrir][i_offset + i_tap] = 0.5f * pParamIn->pOut_to_bin_im[i_pair][sym_hrir][i_offset_in + i_tap] - ( *ppParamSumDiff )->pOut_to_bin_im[i_chan][sym_hrir][i_offset + i_tap];
                }
                else
                {
                    ( *ppParamSumDiff )->pOut_to_bin_re[i_chan][sym_hrir][i_offset + i_tap] += 0.5f * pParamIn->pOut_to_bin_re[i_pair][sym_hrir][i_offset_in + i_tap];
                    ( *ppParamSumDiff )->pOut_to_bin_im[i_chan][sym_hrir][i_offset + i_tap] += 0.5f * pParamIn->pOut_to_bin_im[i_pair][sym_hrir][i_offset_in + i_tap];
                    ( *ppParamSumDiff )->pOut_to_bin_re[i_chan][sym_hrir][i_offset + i_tap] += 0.5f * pParamIn->pOut_to_bin_re[i_index][sym_hrir][i_offset_in + i_tap];
                    ( *ppParamSumDiff )->pOut_to_bin_im[i_chan][sym_hrir][i_offset + i_tap] += 0.5f * pParamIn->pOut_to_bin_im[i_index][sym_hrir][i_offset_in + i_tap];
                }
            }
            i_offset += ( *ppParamSumDiff )->pIndex_frequency_max[i_chan][sym_hrir][i_num];