Commit 776bdf35 authored by Dominik Weckbecker's avatar Dominik Weckbecker 💬
Browse files

do not count LFE index in the MC chennels for fastconv rendering

parent c149df77
Loading
Loading
Loading
Loading
Loading
+16 −2
Original line number Diff line number Diff line
@@ -2229,7 +2229,10 @@ void ivas_dirac_dec_render_sf(
            for ( in_ch = 0; in_ch < st_ivas->nchan_ism; in_ch++ )
            {
#endif
                int16_t j, k, j2, l;
                int16_t j, k, l;
#ifndef NONBE_FIX_1141_OSBA_ROOM_RENDERING
				int16_t j2;
#endif
                int16_t num_objects, nchan_out_woLFE, lfe_index;
                int16_t az1, el1;
                int16_t n_slots_to_render;
@@ -2270,12 +2273,18 @@ void ivas_dirac_dec_render_sf(
                    }

                    lfe_index = 0;
#ifdef NONBE_FIX_1141_OSBA_ROOM_RENDERING
					for (j = 0; j < nchan_out_woLFE; j++)
#else
                    for ( j = 0, j2 = 0; j < nchan_out_woLFE; j++, j2++ )
#endif
                    {
#ifndef NONBE_FIX_1141_OSBA_ROOM_RENDERING
                        if ( ( st_ivas->hIntSetup.num_lfe > 0 ) && ( st_ivas->hIntSetup.index_lfe[lfe_index] == j ) )
                        {
                            ( lfe_index < ( st_ivas->hIntSetup.num_lfe - 1 ) ) ? ( lfe_index++, j2++ ) : j2++;
                        }
#endif

                        gain = st_ivas->hIsmRendererData->gains[i][j];
                        prev_gain = st_ivas->hIsmRendererData->prev_gains[i][j];
@@ -2302,8 +2311,13 @@ void ivas_dirac_dec_render_sf(

                                for ( l = 0; l < hSpatParamRendCom->num_freq_bands; l++ )
                                {
#ifdef NONBE_FIX_1141_OSBA_ROOM_RENDERING
									Cldfb_RealBuffer[j][k][l] += g * *(tc_re++);
									Cldfb_ImagBuffer[j][k][l] += g * *(tc_im++);
#else
                                    Cldfb_RealBuffer[j2][k][l] += g * *( tc_re++ );
                                    Cldfb_ImagBuffer[j2][k][l] += g * *( tc_im++ );
#endif
                                }
                                w1 += hSpatParamRendCom->num_freq_bands;
                            }
+1 −1
Original line number Diff line number Diff line
@@ -774,7 +774,7 @@ void ivas_ism_dec_digest_tc(
#ifdef NONBE_FIX_1141_OSBA_ROOM_RENDERING
                        if ( st_ivas->renderer_type == RENDERER_BINAURAL_FASTCONV_ROOM && st_ivas->ivas_format == SBA_ISM_FORMAT && st_ivas->ism_mode == ISM_SBA_MODE_DISC )
                        {
                            efap_determine_gains( st_ivas->hEFAPdata, st_ivas->hIsmRendererData->gains[i], st_ivas->hIsmMetaData[i]->azimuth + 180.0f, st_ivas->hIsmMetaData[i]->elevation, EFAP_MODE_EFAP );
                            efap_determine_gains( st_ivas->hEFAPdata, st_ivas->hIsmRendererData->gains[i], st_ivas->hIsmMetaData[i]->azimuth, st_ivas->hIsmMetaData[i]->elevation, EFAP_MODE_EFAP );
                        }
                        else
#endif