Commit 8b6bd6f8 authored by vaclav's avatar vaclav
Browse files

HARM_CORE_SW, decoder step 1

parent a0051869
Loading
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -117,6 +117,8 @@
#define CLEANUP_ACELP_ENC                               /* VA: basop issue 2304: Remove duplicated code in excitation encoding in the ACELP core */
#define CLEANUP_VBR_CAM_ENC                             /* VA: basop issue 2299: Remove unused core-encoder VBR and CAM code */

#define HARM_CORE_SW

/* #################### End BE switches ################################## */

/* #################### Start NON-BE switches ############################ */
+29 −5
Original line number Diff line number Diff line
@@ -7794,19 +7794,41 @@ void hq_configure_bfi_fx(
void bandwidth_switching_detect_fx(
    Decoder_State *st_fx /* i/o: encoder state structure */
);
#ifndef HARM_CORE_SW
void bandwidth_switching_detect_ivas_fx(
    Decoder_State *st_fx /* i/o: encoder state structure */
);
#endif
void bw_switching_pre_proc_fx(
#ifdef HARM_CORE_SW
    Decoder_State *st_fx,            /* i/o: decoder state structure                  */
    const Word32 last_element_brate, /* i  : last element bitrate                     */
    const Word16 nchan_out,          /* i  : number of output channels                */
    Word16 *old_syn_12k8_16k_fx16,
    Word32 *old_syn_12k8_16k_fx32,
    Word16 Q
#else
    const Word16 *old_syn_12k8_16k_fx, /* i  : ACELP core synthesis at 12.8kHz or 16kHz        Qx*/
    Decoder_State *st_fx               /* i/o: decoder state structure     */
#endif
);
ivas_error core_switching_pre_dec_fx(
#ifdef HARM_CORE_SWaa
    Decoder_State *st,                /* i/o: decoder state structure      */
    const Word16 output_frame,        /* i  : frame length                 */
    const Word32 last_core_brate_st0, /* i  : channel 0 last core bitrate  */
    const Word16 nchan_out,           /* i  : number of output channels    */
    const Word16 last_element_mode,   /* i  : last_element_mode            */
    const Word32 last_element_brate,  /* i  : last element bitrate         */
    const Word16 Q_old_synthFB,
    Word16 *Q_olapBufferSynth,
    Word16 *Q_olapBufferSynth2
#else
    Decoder_State *st_fx,              /* i/o: decoder state structure     */
    const Word16 output_frame          /* i  : frame length              Q0*/
#endif
);
ivas_error core_switching_post_dec_fx(
@@ -9548,6 +9570,7 @@ void stereo_dft_dec_open(
    const Word16 nchan_transport           /* i  : number of transport channels */
);
#ifndef HARM_CORE_SW
void ivas_bw_switching_pre_proc_fx(
    Decoder_State *st,               /* i/o: decoder state structure                  */
    const Word32 last_element_brate, /* i  : last element bitrate                     */
@@ -9555,7 +9578,7 @@ void ivas_bw_switching_pre_proc_fx(
    Word32 *old_syn_12k8_16k_fx,
    Word16 Q,
    Word16 Q_audio );
#endif
UWord32 mvl2s_r(
    const Word32 x[], /* i  : input vector  */
    const Word16 q,
@@ -10411,6 +10434,7 @@ void wtda_fx32(
    const Word16 L           /* i  : length                              */
);
#ifndef HARM_CORE_SWaa
ivas_error core_switching_pre_dec_ivas_fx(
    Decoder_State *st,                /* i/o: decoder state structure      */
    const Word16 output_frame,        /* i  : frame length                 */
@@ -10421,7 +10445,7 @@ ivas_error core_switching_pre_dec_ivas_fx(
    Word16 Q_old_synthFB,
    Word16 *Q_olapBufferSynth,
    Word16 *Q_olapBufferSynth2 );
#endif
void hp20_fx_32(
    Word32 signal_fx[],
    const Word16 lg,
+4 −0
Original line number Diff line number Diff line
@@ -172,7 +172,11 @@ ivas_error amr_wb_dec_fx(
    }

    /* Updates in case of EVS -> AMR-WB IO switching */
#ifdef HARM_CORE_SWaa
    IF( NE_32( ( error = core_switching_pre_dec_fx( st_fx, output_frame, -1, 1, EVS_MONO, EVS_MONO,  -1, &tmp16, &tmp16) ), IVAS_ERR_OK ) )
#else
    IF( NE_32( ( error = core_switching_pre_dec_fx( st_fx, output_frame ) ), IVAS_ERR_OK ) )
#endif
    {
        return error;
    }
+428 −160

File changed.

Preview size limit exceeded, changes collapsed.

+8 −0
Original line number Diff line number Diff line
@@ -315,7 +315,11 @@ ivas_error evs_dec_fx(
         * Preprocessing (preparing) for ACELP/HQ core switching
         *---------------------------------------------------------------------*/

#ifdef HARM_CORE_SWaa
        IF( ( error = core_switching_pre_dec_fx( st_fx, output_frame, -1, 1, EVS_MONO, EVS_MONO, -1, &tmp16, &tmp16 ) ) != IVAS_ERR_OK )
#else
        IF( ( error = core_switching_pre_dec_fx( st_fx, output_frame ) ) != IVAS_ERR_OK )
#endif
        {
            return error;
        }
@@ -355,7 +359,11 @@ ivas_error evs_dec_fx(
         * Pre-processing for bandwidth switching
         *---------------------------------------------------------------------*/

#ifdef HARM_CORE_SW
        bw_switching_pre_proc_fx( st_fx, -1, 1, old_syn_12k8_16k_fx, NULL, 0 );
#else
        bw_switching_pre_proc_fx( old_syn_12k8_16k_fx, st_fx );
#endif

        /*---------------------------------------------------------------------*
         * WB TBE decoding
Loading