Commit f3700669 authored by Jan Kiene's avatar Jan Kiene
Browse files

add allocation handling for FD-CNG handle in MC bitrate switching

parent 9bf05375
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -2605,6 +2605,10 @@ ivas_error stereo_memory_dec(
    const int16_t nb_bits_metadata,                             /* i  : number of metadata bits                 */
    const int32_t output_Fs,                                    /* i  : output sampling rate                    */
    const IVAS_FORMAT ivas_format,                              /* i  : IVAS format                             */
#ifdef FIX_MC_BR_SW_TCX_PLC_FADEOUT
    const MC_MODE mc_mode,
    const MC_MODE last_mc_mode,
#endif
    const int16_t nchan_transport                               /* i  : number of transport channels            */
);

+4 −0
Original line number Diff line number Diff line
@@ -161,6 +161,10 @@
#define CORECODER_BITRATE_SWITCHING                     /* Issue 133: support bitrate switching in core-coder */
#define MC_BITRATE_SWITCHING                            /* Issue 116: support bitrate switching in MC format  */

#ifdef MC_BITRATE_SWITCHING
#define MCMASA_BITRATE_SWITCHING                        /* Issue 116: support bitrate switching in MC format: sub-part of McMASA modes */
#endif
#define FIX_MC_BR_SW_TCX_PLC_FADEOUT

/* ################## End DEVELOPMENT switches ######################### */
/* clang-format on */
+4 −0
Original line number Diff line number Diff line
@@ -103,7 +103,11 @@ ivas_error ivas_cpe_dec(
     * dynamically allocate data structures depending on the actual stereo mode
     *----------------------------------------------------------------*/

#ifdef FIX_MC_BR_SW_TCX_PLC_FADEOUT
    if ( ( error = stereo_memory_dec( ivas_total_brate, hCPE, nb_bits_metadata, st_ivas->hDecoderConfig->output_Fs, st_ivas->ivas_format, st_ivas->mc_mode, st_ivas->last_mc_mode, st_ivas->nchan_transport ) ) != IVAS_ERR_OK )
#else
    if ( ( error = stereo_memory_dec( ivas_total_brate, hCPE, nb_bits_metadata, st_ivas->hDecoderConfig->output_Fs, st_ivas->ivas_format, st_ivas->nchan_transport ) ) != IVAS_ERR_OK )
#endif
    {
        return error;
    }
+3 −0
Original line number Diff line number Diff line
@@ -606,6 +606,9 @@ ivas_error ivas_mc_dec_config(

    /* store last frame MC mode */
    last_mc_mode = st_ivas->mc_mode;
#ifdef FIX_MC_BR_SW_TCX_PLC_FADEOUT
    st_ivas->last_mc_mode = last_mc_mode;
#endif

    if ( !st_ivas->bfi )
    {
+3 −0
Original line number Diff line number Diff line
@@ -1946,6 +1946,9 @@ typedef struct Decoder_Struct
    ISM_MODE ism_mode;                                      /* ISM format mode */
    SBA_MODE sba_mode;                                      /* SBA format mode */
    MC_MODE mc_mode;                                        /* MC format mode */
#ifdef FIX_MC_BR_SW_TCX_PLC_FADEOUT
    MC_MODE last_mc_mode;
#endif
    int16_t sba_order;                                      /* Ambisonic (SBA) order */
    int16_t sba_planar;                                     /* Ambisonic (SBA) planar flag */
    int16_t sba_analysis_order;                             /* Ambisonic (SBA) order used for analysis and coding */
Loading