Commit 23bb5e7a authored by vaclav's avatar vaclav
Browse files

fix OMASA encoder

parent e4eea225
Loading
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -5618,6 +5618,12 @@ ivas_error ivas_omasa_enc_config(
    Encoder_Struct *st_ivas                                     /* i/o: IVAS encoder structure                  */
);

#ifdef MEM_ALLOC_APP
ivas_error ivas_omasa_enc_reconfigure(
Encoder_Struct *st_ivas                                         /* i/o: IVAS encoder structure                  */
);

#endif
ivas_error ivas_omasa_dec_config(
    Decoder_Struct *st_ivas                                     /* i/o: IVAS decoder structure                  */
);
+6 −3
Original line number Diff line number Diff line
@@ -1255,7 +1255,8 @@ ivas_error ivas_reconfig_enc(

    if ( ivas_format == STEREO_FORMAT )
    {
        /* stereo_memory_enc() is called from ivas_cpe_enc() */
        /* no large memory reallocation happens */
        /* only stereo_memory_enc() is called from ivas_cpe_enc() */
        return IVAS_ERR_OK;
    }
    else if ( ivas_format == ISM_FORMAT )
@@ -1270,7 +1271,8 @@ ivas_error ivas_reconfig_enc(
    }
    else if ( ivas_format == MASA_FORMAT )
    {
        /* no reallocation is needed */
        /* no large memory reallocation happens */
        /* only stereo_memory_enc() is called from ivas_cpe_enc() */
        return IVAS_ERR_OK;
    }
    else if ( ivas_format == SBA_ISM_FORMAT )
@@ -1281,7 +1283,8 @@ ivas_error ivas_reconfig_enc(
    else if ( ivas_format == MASA_ISM_FORMAT )
    {
        /* select ISM format mode; reconfigure the OMASA format encoder */
        error = ivas_omasa_enc_config( st_ivas );
        error = ivas_omasa_enc_reconfigure( st_ivas );
        return IVAS_ERR_OK;
    }
    else if ( ivas_format == MC_FORMAT )
    {
+1 −0
Original line number Diff line number Diff line
@@ -727,6 +727,7 @@ ivas_error ivas_masa_enc_config(
    int32_t masa_total_brate;

    error = IVAS_ERR_OK;

    hMasa = st_ivas->hMasa;
    hQMetaData = st_ivas->hQMetaData;
    ivas_format = st_ivas->hEncoderConfig->ivas_format;
+1 −0
Original line number Diff line number Diff line
@@ -133,6 +133,7 @@ ivas_error ivas_mcmasa_enc_open(
        return error;
    }


    /* Determine the number of bands */
    hMcMasa->nbands = st_ivas->hMasa->config.numCodingBands;
    hMcMasa->nCodingBands = st_ivas->hMasa->config.numCodingBands;
+30 −2
Original line number Diff line number Diff line
@@ -204,13 +204,23 @@ void ivas_omasa_enc_close(
}


#ifdef MEM_ALLOC_APP
/*--------------------------------------------------------------------------*
 * ivas_omasa_enc_config()
 * ivas_omasa_enc_reconfigure()
 *
 * OMASA encoder reconfiguration
 *--------------------------------------------------------------------------*/

ivas_error ivas_omasa_enc_reconfigure(
#else
/*--------------------------------------------------------------------------*
 * ivas_omasa_enc_configu()
 *
 * oMASA encoder configuration
 *--------------------------------------------------------------------------*/

ivas_error ivas_omasa_enc_config(
#endif
    Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
)
{
@@ -264,6 +274,7 @@ ivas_error ivas_omasa_enc_config(
            return error;
        }

#ifndef MEM_ALLOC_APP
        /* re-write IVAS format signalling - actual 'ism_mode' was not known before */
        if ( st_ivas->nSCE > 0 )
        {
@@ -275,7 +286,7 @@ ivas_error ivas_omasa_enc_config(
        }

        ivas_write_format( st_ivas );

#endif
        /* OMASA encoder handle */
        if ( st_ivas->ism_mode != ISM_MASA_MODE_DISC && st_ivas->hOMasa == NULL )
        {
@@ -316,6 +327,23 @@ ivas_error ivas_omasa_enc_config(
        }
    }

#ifdef MEM_ALLOC_APP
    return IVAS_ERR_OK;
}


/*--------------------------------------------------------------------------*
 * ivas_omasa_enc_config()
 *
 * OMASA encoder configuration
 *--------------------------------------------------------------------------*/

ivas_error ivas_omasa_enc_config(
Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
)
{
    ivas_error error;
#endif
    /* Configure MASA encoder based on frame parameters */
    if ( ( error = ivas_masa_enc_config( st_ivas ) ) != IVAS_ERR_OK )
    {