Commit ff5314ab authored by vaclav's avatar vaclav
Browse files

fixes for bitrate switching and MC output config.

parent 21b862b5
Loading
Loading
Loading
Loading
+15 −8
Original line number Diff line number Diff line
@@ -1541,6 +1541,8 @@ ivas_error ivas_init_decoder(
    }

#ifdef OMASA_UPDATES
    if ( st_ivas->ivas_format == MASA_ISM_FORMAT )
    {
        // VE: introduce a new renderer_type for this case
        if ( st_ivas->ivas_format == MASA_ISM_FORMAT && st_ivas->ism_mode == ISM_MASA_MODE_DISC && st_ivas->hDecoderConfig->output_config == AUDIO_CONFIG_BINAURAL )
        {
@@ -1549,13 +1551,18 @@ ivas_error ivas_init_decoder(
            {
                return error;
            }
        }

        // VE: introduce a new renderer_type for this case
        if ( st_ivas->renderer_type == RENDERER_DIRAC && ( st_ivas->ism_mode == ISM_MASA_MODE_MASA_ONE_OBJ || st_ivas->ism_mode == ISM_MASA_MODE_PARAM_ONE_OBJ || st_ivas->ism_mode == ISM_MASA_MODE_DISC ) )
        {
            /* Allocate 'hIsmRendererData' handle and memory for delay buffer within 'hMasaIsmData' */
            if ( ( error = ivas_masa_ism_separate_object_renderer_open( st_ivas ) ) != IVAS_ERR_OK )
            {
                return error;
            }
        }
    }
#endif

    if ( st_ivas->ivas_format == ISM_FORMAT &&
+48 −20
Original line number Diff line number Diff line
@@ -271,8 +271,9 @@ ivas_error ivas_omasa_dec_config(
        }

#ifdef OMASA_UPDATES
        // VE: introduce a new renderer_type for this case
        if ( st_ivas->ism_mode == ISM_MASA_MODE_DISC && st_ivas->renderer_type == RENDERER_BINAURAL_PARAMETRIC )
        if ( st_ivas->renderer_type == RENDERER_BINAURAL_PARAMETRIC )
        {
            if ( st_ivas->ism_mode == ISM_MASA_MODE_DISC )
            {
                /* Allocate TD renderer for the objects in DISC mode */
                if ( ( error = ivas_td_binaural_open( st_ivas ) ) != IVAS_ERR_OK )
@@ -306,6 +307,33 @@ ivas_error ivas_omasa_dec_config(
                    st_ivas->hIsmRendererData = NULL;
                }
            }
        }

        if ( st_ivas->renderer_type == RENDERER_DIRAC )
        {
            if ( ( error = ivas_dirac_dec_config( st_ivas, DIRAC_RECONFIGURE ) ) != IVAS_ERR_OK )
            {
                return error;
            }

            if ( st_ivas->ism_mode == ISM_MASA_MODE_MASA_ONE_OBJ || st_ivas->ism_mode == ISM_MASA_MODE_PARAM_ONE_OBJ || st_ivas->ism_mode == ISM_MASA_MODE_DISC )
            {
                /* Allocate 'hIsmRendererData' handle and memory for delay buffer within 'hMasaIsmData' */
                if ( ( error = ivas_masa_ism_separate_object_renderer_open( st_ivas ) ) != IVAS_ERR_OK )
                {
                    return error;
                }
            }
            else
            {
                /* ISM renderer handle */
                if ( st_ivas->hIsmRendererData != NULL )
                {
                    free( st_ivas->hIsmRendererData );
                    st_ivas->hIsmRendererData = NULL;
                }
            }
        }
#endif
    }

+1 −1

File changed.

Contains only whitespace changes.