Commit 2aafebd9 authored by malenov's avatar malenov
Browse files

merge main to branch

parents 412af0f4 7e298182
Loading
Loading
Loading
Loading
Loading
+40 −0
Original line number Diff line number Diff line
@@ -10,6 +10,7 @@ variables:
  OUT_FORMATS_BINAURAL: "BINAURAL BINAURAL_ROOM_IR BINAURAL_ROOM_REVERB"
  EXIT_CODE_NON_BE: 123
  EXIT_CODE_FAIL: 1
  PROCESSING_SCRIPTS_BIN_DIR: "/test-bin"

default:
  interruptible: true # Make all jobs by default interruptible
@@ -692,6 +693,45 @@ check-first-frame-is-sid:
    expose_as: "logs-sidstart"
    expire_in: "5 days"

selection-test-processing:
  extends:
    - .test-job-linux-needs-testv-dir
    - .rules-merge-request
  tags:
    - processing-scripts-linux
  stage: test
  needs: ["build-codec-linux-make"]
  script:
    # get processing script code
    - git clone https://forge.3gpp.org/rep/ivas-codec-pc/ivas-processing-scripts.git --single-branch -b main

    - mkdir -p ivas-processing-scripts/tests/data/testv
    - cp -r scripts/testv/* ivas-processing-scripts/tests/data/testv/

    # copy binaries into local bin dir, those should take precendence over PATH
    - cp $PROCESSING_SCRIPTS_BIN_DIR/* ivas-processing-scripts/ivas_processing_scripts/bin/
    # for testing with native binaries
    - rm ivas-processing-scripts/ivas_processing_scripts/bin/IVAS*.exe
    - rm ivas-processing-scripts/ivas_processing_scripts/bin/EVS*.exe

    # build codec and put into bin dir
    - make -j
    - cp ./IVAS_* ivas-processing-scripts/ivas_processing_scripts/bin/

    # patch the use_windows_codec_binaries key (weird folding is needed so colons are accepted)
    - >
      sed -i "s/use_windows_codec_binaries: true/use_windows_codec_binaries: false/" ivas-processing-scripts/experiments/selection/*/config/*.yml

    # run experiments test
    - cd ivas-processing-scripts
    - python3 -m pytest tests/test_experiments.py::test_generate_test_items -n auto | tee log.txt
  artifacts:
    paths:
      - ivas-processing-scripts/experiments/selection/*/proc_output/*.log
      - log.txt
    when: on_failure
    expire_in: 1 week

# ---------------------------------------------------------------
# Test jobs for main branch
# ---------------------------------------------------------------
+20 −0
Original line number Diff line number Diff line
@@ -5447,6 +5447,26 @@ void ivas_lfe_synth_with_filters(
    const int16_t lfeChannelIndex                               /* i  : LFE channel index                               */
);

#ifdef FIX_572_LFE_LPF_ENC
/*----------------------------------------------------------------------------------*
 * LFE encoder low pass filter prototypes
 *----------------------------------------------------------------------------------*/

ivas_error ivas_create_lfe_lpf_enc(
    ivas_filters_process_state_t **ph_lfe_lpf_filter_state, /* o  : IVAS LFE encoder structure   */
    const int32_t input_Fs                                  /* i  : input sampling rate          */
);

void ivas_lfe_lpf_enc_close(
    ivas_filters_process_state_t **ph_lfe_lpf_filter_state /* i/o: LFE encoder handle */
);

void ivas_lfe_lpf_enc_apply(
    ivas_filters_process_state_t *h_lfe_lpf_filter_state, /* i/o: LFE encoder handle */
    float data_lfe_ch[],       /* i  : input LFE signal                         */
    const int16_t input_frame  /* i  : input frame length per channel           */
);
#endif

/*----------------------------------------------------------------------------------*
 * LFE Coding prototypes

lib_com/options.h

100755 → 100644
+4 −2
Original line number Diff line number Diff line
@@ -148,12 +148,14 @@
#define FIX_558_PLC_DISCONT                             /* FhG: issue 558: fix discontinuities in DFT Stereo when switching from TCX concealment to ACELP */
#define FIX_564                                         /* Nokia: Issue 564: Fix gains in JBM path for SBA with parametric binaural renderer */
#define FIX_566_2DIR_MASA_384K                          /* Nokia: Issued 566:  Bugfix in 384k MASA metadata encoding of second direction */
#define FIX_568_ISM_BITRATE_SWITCHING                   /* Philips: Issue 568: Bugfix for renderer re-initialization by ISM and bitrate switching */
#define FIX_565_SBA_BURST_IN_FEC                        /* VA: Issue 565: Fix noise burst during FEC, due to wrong total_brate initialization */
#define FIX_562_ISM2_64KBPS                             /* VA: issue 562: fix ISM2 at 64kbps issue */
#define FIX_559_EXTL_IGF_MISMATCH                       /* VA: issue 559: fix mismatch between st->extl and st->igf observed as crash in PlanarSBA bitrate switching */
#define FIX_UNCLR_ISSUE                                 /* VoiceAge: issue 574: Fix UNCLR mis-classifications in noisy speech stereo */

#define FIX_572_LFE_LPF_ENC                             /* FhG: issue 572: always apply the low pass filter to the LFE channel */

#define FIX_QMETA_SID_5k2                               /* Nokia: Issue 137: enable using full 5.2k bitrate in MASA SID */
#define FIX_UNCLR_ISSUE                                 /* VoiceAge: issue 574: Fix UNCLR mis-classifications in noisy speech stereo */

/* ################## End DEVELOPMENT switches ######################### */
/* clang-format on */
+1 −5
Original line number Diff line number Diff line
@@ -422,11 +422,7 @@ ivas_error ivas_dirac_dec_config(
    }


    if ( nchan_transport_orig > 2 && hDirAC->hOutSetup.is_loudspeaker_setup && st_ivas->renderer_type == RENDERER_DIRAC
#ifdef FIX_DIRAC_LS_SYNTHESIS_CONFIG
         && !hodirac_flag
#endif
    )
    if ( nchan_transport_orig > 2 && hDirAC->hOutSetup.is_loudspeaker_setup && st_ivas->renderer_type == RENDERER_DIRAC && !hodirac_flag )
    {
        hDirAC->synthesisConf = DIRAC_SYNTHESIS_PSD_LS;
        hDirAC->panningConf = DIRAC_PANNING_VBAP;
+16 −1
Original line number Diff line number Diff line
@@ -168,7 +168,11 @@ static ivas_error ivas_ism_bitrate_switching(
        /* Deallocate the ParamISM struct */
        ivas_param_ism_dec_close( &( st_ivas->hDirAC ), st_ivas->hDecoderConfig->output_config );

#ifdef FIX_568_ISM_BITRATE_SWITCHING
        if ( st_ivas->hOutSetup.output_config == AUDIO_CONFIG_BINAURAL || st_ivas->hOutSetup.output_config == AUDIO_CONFIG_BINAURAL_ROOM_REVERB )
#else
        if ( st_ivas->hOutSetup.output_config == AUDIO_CONFIG_BINAURAL )
#endif
        {
            /* close the parametric binaural renderer */
            ivas_dirac_dec_close_binaural_data( &st_ivas->hDiracDecBin );
@@ -198,7 +202,11 @@ static ivas_error ivas_ism_bitrate_switching(
            }
        }

#ifdef FIX_568_ISM_BITRATE_SWITCHING
        if ( st_ivas->hOutSetup.output_config == AUDIO_CONFIG_BINAURAL_ROOM_IR )
#else
        if ( st_ivas->hOutSetup.output_config == AUDIO_CONFIG_BINAURAL_ROOM_IR || st_ivas->hOutSetup.output_config == AUDIO_CONFIG_BINAURAL_ROOM_REVERB )
#endif
        {
            /* close the parametric binaural renderer */
            ivas_dirac_dec_close_binaural_data( &st_ivas->hDiracDecBin );
@@ -221,8 +229,11 @@ static ivas_error ivas_ism_bitrate_switching(
        {
            return error;
        }

#ifdef FIX_568_ISM_BITRATE_SWITCHING
        if ( st_ivas->hOutSetup.output_config == AUDIO_CONFIG_BINAURAL || st_ivas->hOutSetup.output_config == AUDIO_CONFIG_BINAURAL_ROOM_REVERB )
#else
        if ( st_ivas->hOutSetup.output_config == AUDIO_CONFIG_BINAURAL )
#endif
        {
            /* open the parametric binaural renderer */
            if ( ( error = ivas_dirac_dec_binaural_copy_hrtfs( &st_ivas->hHrtfParambin ) ) != IVAS_ERR_OK )
@@ -260,7 +271,11 @@ static ivas_error ivas_ism_bitrate_switching(
            }
        }

#ifdef FIX_568_ISM_BITRATE_SWITCHING
        if ( st_ivas->hOutSetup.output_config == AUDIO_CONFIG_BINAURAL_ROOM_IR )
#else
        if ( st_ivas->hOutSetup.output_config == AUDIO_CONFIG_BINAURAL_ROOM_IR || st_ivas->hOutSetup.output_config == AUDIO_CONFIG_BINAURAL_ROOM_REVERB )
#endif
        {
            /* open the parametric binaural renderer */
            if ( ( error = ivas_dirac_dec_binaural_copy_hrtfs( &st_ivas->hHrtfParambin ) ) != IVAS_ERR_OK )
Loading