Commit 938f6cd1 authored by multrus's avatar multrus
Browse files

[cleanup] accept NONBE_FIX_982_OMASA_DELAY_COMP_5MS

parent 130ba3bc
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -1225,9 +1225,7 @@ enum
#define MASA_BIT_REDUCT_PARAM                   10
#define MASA_MAXIMUM_TWO_DIR_BANDS              24
#define NBITS_HR_COH                            4
#ifdef NONBE_FIX_982_OMASA_DELAY_COMP_5MS
#define OMASA_TDREND_MATCHING_GAIN              0.7943f
#endif

#define MASA_JBM_RINGBUFFER_FRAMES              3

+0 −1
Original line number Diff line number Diff line
@@ -171,7 +171,6 @@
/* all switches in this category should start with "NONBE_" */

#define NONBE_FIX_978_MC_TDREND_REVERB                        /* Eri : activate reverb for TDREND with headtracking */
#define NONBE_FIX_982_OMASA_DELAY_COMP_5MS                    /* FhG : issue #982 : 5ms and 20ms output different for OMASA */

#ifdef SPLIT_REND_WITH_HEAD_ROT
#define SPLIT_REND_LCLD_5MS                                   /* Dlb: LCLD 5ms framing operation  */
+0 −10
Original line number Diff line number Diff line
@@ -523,16 +523,6 @@ void ivas_omasa_separate_object_render_jbm(

    for ( obj = 0; obj < num_objects; obj++ )
    {
#ifndef NONBE_FIX_982_OMASA_DELAY_COMP_5MS
        /* Delay the signal to match CLDFB delay. Delay the whole buffer with the first rendering call of the stretched buffer. */
        if ( slots_rendered == 0 )
        {
            int16_t tcBufferSize;

            tcBufferSize = hSpatParamRendCom->num_slots * hSpatParamRendCom->slot_size;
            delay_signal( input_f[obj], tcBufferSize, st_ivas->hMasaIsmData->delayBuffer[obj], st_ivas->hMasaIsmData->delayBuffer_size );
        }
#endif
        offsetSamples = 0;

        for ( subframe_idx = first_sf; subframe_idx < last_sf; subframe_idx++ )
+0 −2
Original line number Diff line number Diff line
@@ -934,7 +934,6 @@ void ivas_jbm_dec_feed_tc_to_renderer(
                ivas_ism_dec_digest_tc( st_ivas );
            }

#ifdef NONBE_FIX_982_OMASA_DELAY_COMP_5MS
            if ( st_ivas->renderer_type == RENDERER_BINAURAL_PARAMETRIC || st_ivas->renderer_type == RENDERER_DIRAC )
            {
                int16_t num_objects;
@@ -957,7 +956,6 @@ void ivas_jbm_dec_feed_tc_to_renderer(
                    delay_signal( st_ivas->hTcBuffer->tc[CPE_CHANNELS + n], st_ivas->hTcBuffer->n_samples_available, st_ivas->hMasaIsmData->delayBuffer[n], st_ivas->hMasaIsmData->delayBuffer_size );
                }
            }
#endif
#ifdef NONBE_FIX_984_OMASA_EXT_OUTPUT
        }
#endif
+0 −45
Original line number Diff line number Diff line
@@ -45,16 +45,6 @@
#endif
#include "wmc_auto.h"

#ifndef NONBE_FIX_982_OMASA_DELAY_COMP_5MS
/*-------------------------------------------------------------------------
 * Local constants
 *------------------------------------------------------------------------*/

#define OMASA_TDREND_MATCHING_GAIN 0.7943f
#ifdef NONBE_FIX_984_OMASA_EXT_OUTPUT
#define EXT_RENDER_IIR_FAC 0.95f
#endif
#else
#ifdef NONBE_FIX_984_OMASA_EXT_OUTPUT
/*-------------------------------------------------------------------------
 * Local constants
@@ -62,7 +52,6 @@

#define EXT_RENDER_IIR_FAC 0.95f
#endif
#endif

/*-------------------------------------------------------------------*
 * ivas_omasa_data_open()
@@ -747,34 +736,22 @@ void ivas_omasa_dirac_rend_jbm(
    int16_t n;
    float data_separated_objects[MAX_NUM_OBJECTS][L_FRAME48k];

#ifdef NONBE_FIX_982_OMASA_DELAY_COMP_5MS
    if ( !st_ivas->hDecoderConfig->Opt_tsm )
    {
        *nSamplesRendered = min( nSamplesAsked, st_ivas->hTcBuffer->n_samples_available );
#endif

        if ( st_ivas->ism_mode == ISM_MASA_MODE_MASA_ONE_OBJ || st_ivas->ism_mode == ISM_MASA_MODE_PARAM_ONE_OBJ )
        {
#ifdef NONBE_FIX_982_OMASA_DELAY_COMP_5MS
            mvr2r( &output_f[CPE_CHANNELS][st_ivas->hTcBuffer->n_samples_rendered], data_separated_objects[0], *nSamplesRendered );
#else
        mvr2r( output_f[CPE_CHANNELS], data_separated_objects[0], nSamplesAsked );
#endif
        }
        else
        {
            for ( n = 0; n < st_ivas->nchan_ism; n++ )
            {
#ifdef NONBE_FIX_982_OMASA_DELAY_COMP_5MS
                mvr2r( &output_f[n + CPE_CHANNELS][st_ivas->hTcBuffer->n_samples_rendered], data_separated_objects[n], *nSamplesRendered );
#else
            mvr2r( output_f[n + CPE_CHANNELS], data_separated_objects[n], nSamplesAsked );
#endif
            }
        }
#ifdef NONBE_FIX_982_OMASA_DELAY_COMP_5MS
    }
#endif

    subframes_rendered = st_ivas->hSpatParamRendCom->subframes_rendered;
    slots_rendered = st_ivas->hSpatParamRendCom->slots_rendered;
@@ -804,36 +781,14 @@ ivas_error ivas_omasa_dirac_td_binaural_jbm(
{
    int16_t n;
    float data_separated_objects[MAX_NUM_OBJECTS][L_FRAME48k];
#ifndef NONBE_FIX_982_OMASA_DELAY_COMP_5MS
    float gain = OMASA_TDREND_MATCHING_GAIN;
#endif
    ivas_error error;
    float *p_sepobj[MAX_NUM_OBJECTS];
#ifndef NONBE_FIX_982_OMASA_DELAY_COMP_5MS
    float *tc_local[MAX_TRANSPORT_CHANNELS];
#endif

    for ( n = 0; n < MAX_NUM_OBJECTS; n++ )
    {
        p_sepobj[n] = &data_separated_objects[n][0];
    }

#ifndef NONBE_FIX_982_OMASA_DELAY_COMP_5MS
    /* Delay the object signals to match the CLDFB delay. Delay the whole buffer with the first rendering call of the stretched buffer. */
    if ( st_ivas->hSpatParamRendCom->slots_rendered == 0 )
    {
        int16_t tcBufferSize;

        tcBufferSize = st_ivas->hSpatParamRendCom->num_slots * st_ivas->hSpatParamRendCom->slot_size;

        for ( n = 0; n < st_ivas->nchan_ism; n++ )
        {
            tc_local[n] = st_ivas->hTcBuffer->tc[n + 2];
            v_multc( tc_local[n], gain, tc_local[n], tcBufferSize );
            delay_signal( tc_local[n], tcBufferSize, st_ivas->hMasaIsmData->delayBuffer[n], st_ivas->hMasaIsmData->delayBuffer_size );
        }
    }
#endif
    ivas_dirac_dec_binaural_render( st_ivas, nSamplesAsked, nSamplesRendered, nSamplesAvailable, nchan_transport, output_f );

    /* reset combined orientation access index before calling the td renderer */
Loading