Commit a5992c0d authored by vaillancour's avatar vaillancour Committed by Manuel Jander
Browse files

fix BE issue, still crashed mid-file

parent e8635700
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
@@ -1212,13 +1212,19 @@ ivas_error ivas_init_encoder_fx(
        move16();
        sce_id = 0;
        move16();

#ifndef HARM_SCE_INIT
        test();
        IF( NE_32( ( error = create_evs_sce_enc_fx( st_ivas, sce_id, ivas_total_brate ) ), IVAS_ERR_OK ) )
        {
            return error;
        }
#else
        test();
        IF( NE_32( ( error = create_sce_enc_fx( st_ivas, sce_id, ivas_total_brate ) ), IVAS_ERR_OK ) )
        {
            return error;
        }

#endif
        /* prepare stereo downmix for EVS */
        IF( EQ_16( hEncoderConfig->stereo_dmx_evs, 1 ) )
        {
+23 −18
Original line number Diff line number Diff line
@@ -469,27 +469,11 @@ ivas_error create_sce_enc_fx(
    st->max_bwidth = st_ivas->hEncoderConfig->max_bwidth;
    st->input_Fs = st_ivas->hEncoderConfig->input_Fs;
    st->input_frame_fx = extract_l( Mult_32_16( st->input_Fs, 0x0290 ) );
#if 0
    IF( NE_32( ( error = init_encoder_ivas_fx( st, st_ivas, 0, st_ivas->hEncoderConfig->var_SID_rate_flag, st_ivas->hEncoderConfig->interval_SID, 0, st_ivas->ism_mode, hSCE->element_brate ) ), IVAS_ERR_OK ) )
    //IF( NE_32( ( error = init_encoder_ivas_fx( st, st_ivas, 0, st_ivas->hEncoderConfig->var_SID_rate_flag, st_ivas->hEncoderConfig->interval_SID, 0, st_ivas->ism_mode, hSCE->element_brate ) ), IVAS_ERR_OK ) )
    {
        return error;
    }
#else

    IF( NE_32( ( error = init_encoder_ivas_fx( st, st_ivas, 0, st_ivas->hEncoderConfig->var_SID_rate_flag, st_ivas->hEncoderConfig->interval_SID, 0, st_ivas->ism_mode, hSCE->element_brate ) ), IVAS_ERR_OK ) )
    //IF( NE_32( ( error = init_encoder_ivas_fx( st, st_ivas, 0, st_ivas->hEncoderConfig->var_SID_rate_flag, st_ivas->hEncoderConfig->interval_SID, 0, st_ivas->ism_mode, hSCE->element_brate ) ), IVAS_ERR_OK ) )
    {
        return error;
    }
    //IF( NE_32( ( error = init_encoder_fx( st) ), IVAS_ERR_OK ) )
    //{
    //    return error;
    //}

    //st->hBstr->ind_list = ind_list;
    // st_fx->hBstr->ind_list_fx = st->hBstr->ind_list;
    //reset_indices_enc_fx( st->hBstr, MAX_NUM_INDICES );
#endif
     hSCE->hCoreCoder[0] = st;

    st_ivas->hSCE[sce_id] = hSCE;
@@ -502,7 +486,7 @@ ivas_error create_sce_enc_fx(
 *
 * Create, allocate and initialize EVS encoder SCE handle
 *-------------------------------------------------------------------------*/
#if 0
#ifndef HARM_SCE_INIT
ivas_error create_evs_sce_enc_fx(
    Encoder_Struct *st_ivas,   /* i/o: IVAS encoder structure      */
    const Word16 sce_id,       /* i  : SCE # identifier            */
@@ -624,9 +608,30 @@ ivas_error create_evs_sce_enc_fx(
    {
        return error;
    }
#ifdef HARM_PUSH_BIT
    /*-----------------------------------------------------------------*
     * Bitstream
     *-----------------------------------------------------------------*/
    IF( ( st_fx->hBstr = (BSTR_ENC_HANDLE) malloc( sizeof( BSTR_ENC_DATA ) ) ) == NULL )
    {
        return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for Bitstream structure\n" ) );
    }

    /* set pointer to the buffer of indices */
    st_fx->hBstr->ind_list = st_ivas->ind_list;
    st_fx->hBstr->ivas_ind_list_zero = &st_ivas->ind_list;
    st_fx->hBstr->ivas_max_num_indices = &st_ivas->ivas_max_num_indices;
    st_fx->hBstr->nb_ind_tot = 0;
    move16();
    st_fx->hBstr->nb_bits_tot = 0;
    move16();
    st_fx->hBstr->st_ivas = st_ivas;
#else
    st_fx->hBstr->ind_list = ind_list;
    // st_fx->hBstr->ind_list_fx = st->hBstr->ind_list;
    reset_indices_enc_fx( st_fx->hBstr, MAX_NUM_INDICES );
#endif

    hSCE->hCoreCoder[0] = st_fx;

    st_ivas->hSCE[sce_id] = hSCE;