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

Merge branch 'main' into ci/add-reference-lines-to-complexity-plots

parents cb06c083 26abec71
Loading
Loading
Loading
Loading
Loading
+0 −87
Original line number Diff line number Diff line
@@ -76,90 +76,3 @@ Externals/

# coan output files that are created when cleaning out switches
coan_out_*
/COMPLEXITY
/res
/tv
/wmops
/Workspace_msvc/renderer.args.json
/Workspace_msvc/encoder.args.json
/Workspace_msvc/decoder.args.json
/scripts/mem_analysis_enc_VBR_5k9.csv
/scripts/mem_analysis_enc_STEREO_sw.png
/scripts/mem_analysis_enc_STEREO_sw.csv
/scripts/mem_analysis_enc_STEREO_16k4_DTX.csv
*.pwv
/dcr_ism1
/bwe_clicks_ism1
/BWD_issue
/.ipynb_checkpoints
/scripts/.ipynb_checkpoints
/scripts/wmops_analysis
/scripts/wmops_analysis_new
/tcx_hq_problem_ism1
/scripts/dly_error_profiles/dly_profile_19_.dat
/build.txt
/bit.64k
/bit.32k
/bit
/binaural_loudness.ipynb
/tmp.txt
/syn.wav
/syn.ref
/syn.64k.0.csv
/syn.64k
/syn.32k
/stvST32c_-stereo_32000_32.bit
/split_renderer_config_768_3dof_cldfbpc.txt
/split_out_sba_lcld_20ms_out.wav
/split_out_sba_lcld_20ms.pkt
/split_out_mc_lc3plus_20ms_out.wav
/split_out_mc_lc3plus_20ms.pkt
/run_ivas_codec.sh
/report.html
/report-junit.xm
/out.wav
/ltv48_1ISM.cut14.wav.0.csv
/ltv48_1ISM.cut14.pcm
/ltv48_1ISM.cut14.dec.pcm.0.csv
/ltv48_1ISM.cut14.64k.dec.pcm.0.csv
/ltv48_1ISM.cut14.64k.dec.pcm
/ltv48_1ISM.cut14.32k.dec.pcm
/IvasBuilder.txt
/ivas.192
/ism_loudness_stv48_48kHz.md
/ism_loudness_stv48_32kHz.md
/ism_loudness_sel48_48kHz.md
/ism_loudness_old.xlsx
/ism_loudness_ltv48_ISM4.md
/ism_loudness_ltv48_ISM3.md
/ism_loudness_ltv48_ISM2.md
/ism_loudness_ltv48_ISM1.md
/ism_loudness_ltv48_48kHz.md
/ism_loudness.xlsx
/ism_loudness.py
/HOA2_to_BINAURAL_ROOM_REVERBNone_rend_config_combined_20msNone_0-1000_2-500_1-500.wav
/git_blame_string.sh
/get_license_table.py
/enc_out_mc.pkt
/enc_out.pkt
/cut_ism.py
/scripts/Vlad_mergeNewsletters.py
/scripts/Vlad_extract_max_num_ind.py
/scripts/tables_obj.txt
/scripts/tables_exe.txt
/scripts/requirements.txt
/scripts/parseNewsletterWmops.py
/scripts/output.xlsx
/scripts/functions_obj.txt
/scripts/functions_exe.txt
/scripts/dep_tree.txt
/scripts/cmplx_evs_in_ivas.xlsx
/scripts/bit
/scripts/binaural_loudness.ipynb
/scripts/config/Vlad_self_test_ltv.prm
/scripts/config/Vlad_self_test.prm
/scripts/config/Vlad_ci_linux_ltv.json
/scripts/config/Vlad_ci_linux.json
/cmake-build
/bit.fix
/syn
+84 −2
Original line number Diff line number Diff line
@@ -24,10 +24,14 @@ variables:
      - 'ivas-conformance'
      - 'ivas-conformance-linux'
      - 'check-float-reference'
      - 'check-clipping'
      - 'test-branch-vs-input-passthrough'

  GIT_CLEAN_FLAGS: -ffdxq
  TESTCASE_TIMEOUT_STV_SANITIZERS: 180
  TESTCASE_TIMEOUT_LTV_SANITIZERS: 1200
  TESTCASE_TIMEOUT_LTV_SANITIZERS: 2400
  BASOP_REFERENCE_BRANCH: "ivas-float-update"
  SCALE_FACTOR: "3.162"


default:
@@ -69,7 +73,12 @@ workflow:
    - if: $CI_PIPELINE_SOURCE == 'web' && $MANUAL_PIPELINE_TYPE == 'check-float-reference'
      variables:
        IVAS_PIPELINE_NAME: 'check-float-reference: $CI_COMMIT_BRANCH'
    
    - if: $CI_PIPELINE_SOURCE == 'web' && $MANUAL_PIPELINE_TYPE == 'check-clipping'
      variables:
        IVAS_PIPELINE_NAME: 'Check core input clipping: $CI_COMMIT_BRANCH'
    - if: $CI_PIPELINE_SOURCE == 'web' && $MANUAL_PIPELINE_TYPE == 'test-branch-vs-input-passthrough'
      variables:
        IVAS_PIPELINE_NAME: 'Pass-through comparison vs input: $CI_COMMIT_BRANCH'

stages:
  - .pre
@@ -122,6 +131,11 @@ stages:
# automatically disable #DEBUGGING macro in options.h using /**/-comment
  - sed -i.bak -e "s/^[[:space:]]*\(#define[[:space:]]*DEBUGGING\)/\/\*\1\*\//g" lib_com/options.h

.enable-debugging-macro: &enable-debugging-macro
# automatically enable #DEBUGGING macro in options.h using either /**/-comment or //-comment
  - sed -i.bak -e "s/\/\*\ *\(#define\ *DEBUGGING\ *\)\*\//\1/g" lib_com/options.h
  - sed -i.bak -e "s/\/\/\ *\(#define\ *DEBUGGING\ *\)/\1/g" lib_com/options.h

.merge-request-comparison-setup-codec: &merge-request-comparison-setup-codec 
  ### build test binaries, initial clean for paranoia reasons
  - *disable-debugging-macro
@@ -265,6 +279,9 @@ stages:
      when: never      
    - if: $MANUAL_PIPELINE_TYPE == 'check-float-reference'
      when: never
    - if: $MANUAL_PIPELINE_TYPE == 'check-clipping'
    - if: $MANUAL_PIPELINE_TYPE == 'test-branch-vs-input-passthrough'
      when: never
    - when: on_success

.rules-merge-request:
@@ -1639,6 +1656,71 @@ test-long-self-test:
      junit:
        - report-junit-ltv.xml

check-clipping:
  tags:
    - ivas-linux
  stage: test
  timeout: "30 minutes"
  rules:
    - if: $CI_PIPELINE_SOURCE == 'web' && $MANUAL_PIPELINE_TYPE == 'check-clipping'
  allow_failure:
    exit_codes:
      - 123
  script:
    - *print-common-info
    - *enable-debugging-macro
    - make -j
    - tests/scale_pcm.py ./scripts/testv/ $SCALE_FACTOR # Default: 3.162 (+10 dB). Can be set in manual trigger.
    - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v --update_ref 1 --html=report.html --self-contained-html --junit-xml=report-junit.xml --ref_encoder_path ./IVAS_cod --ref_decoder_path ./IVAS_dec
    - python3 scripts/parse_xml_report.py report-junit.xml report.csv --clipping
  artifacts:
    name: "check-clipping--sha-$CI_COMMIT_SHORT_SHA--results"
    when: always
    expire_in: 2 weeks
    paths:
      - report-junit.xml
      - report.html
      - report.csv
    expose_as: "check-clipping results"
    reports:
      junit:
        - report-junit.xml

test-branch-vs-input-passthrough:
  tags:
    - ivas-linux
  stage: compare
  timeout: "30 minutes" # TBD
  rules:
    - if: $CI_PIPELINE_SOURCE == 'web' && $MANUAL_PIPELINE_TYPE == 'test-branch-vs-input-passthrough'
  allow_failure:
    exit_codes:
      - 123
  script:
    - *print-common-info
    - make -j

    - exit_code=0
    - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v --html=report.html --self-contained-html --junit-xml=report-junit.xml --compare_to_input --mld --ssnr --odg || exit_code=$?
    - zero_errors=$(cat report-junit.xml | grep -c 'errors="0"') || true
    - python3 scripts/parse_xml_report.py report-junit.xml report.csv
    - if [ $zero_errors != 1 ]; then echo "Run errors encountered!"; exit $EXIT_CODE_FAIL; fi
    - if [ $exit_code -eq 1 ]; then echo "Differences encountered."; exit $EXIT_CODE_NON_BE; fi
    - exit 0

  artifacts:
    name: "test-branch-vs-input-passthrough--sha-$CI_COMMIT_SHORT_SHA--results"
    when: always
    expire_in: 4 mos
    paths:
      - report-junit.xml
      - report.html
      - report.csv
    expose_as: "test-branch-vs-input-passthrough results"
    reports:
      junit:
        - report-junit.xml


# ---------------------------------------------------------------
# Scheduled jobs on main
+7 −2
Original line number Diff line number Diff line
@@ -472,7 +472,12 @@
    <ClCompile Include="..\lib_com\ivas_osba_com.c">
      <Filter>common_ivas_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_com\ivas_rotation_com.c" />
    <ClCompile Include="..\lib_com\ivas_rotation_com.c">
      <Filter>common_ivas_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_com\ivas_limiter.c">
      <Filter>common_ivas_c</Filter>
    </ClCompile>
  </ItemGroup>
  <ItemGroup>
    <ClInclude Include="..\lib_com\basop_proto_func.h">
+109 −0
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <ItemGroup>
    <ClCompile Include="..\lib_isar\lib_isar_post_rend.c" />
    <ClCompile Include="..\lib_isar\lib_isar_pre_rend.c" />
    <ClCompile Include="..\lib_isar\isar_lc3plus_common.c">
      <Filter>isar_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_isar\isar_lc3plus_dec.c">
      <Filter>isar_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_isar\isar_lc3plus_enc.c">
      <Filter>isar_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_isar\isar_lc3plus_payload.c">
      <Filter>isar_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_isar\isar_lcld_decoder.c">
      <Filter>isar_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_isar\isar_lcld_encoder.c">
      <Filter>isar_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_isar\isar_MSPred.c">
      <Filter>isar_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_isar\isar_NoiseGen.c">
      <Filter>isar_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_isar\isar_PerceptualModel.c">
      <Filter>isar_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_isar\isar_PredDecoder.c">
      <Filter>isar_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_isar\isar_PredEncoder.c">
      <Filter>isar_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_isar\isar_RMSEnvGrouping.c">
      <Filter>isar_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_isar\isar_rom_lcld_tables.c">
      <Filter>isar_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_isar\isar_rom_post_rend.c">
      <Filter>isar_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_isar\isar_splitRend_lcld_dec.c">
      <Filter>isar_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_isar\isar_splitRend_lcld_enc.c">
      <Filter>isar_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_isar\isar_splitRenderer_utils.c">
      <Filter>isar_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_isar\isar_splitRendererPLC.c">
      <Filter>isar_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_isar\isar_splitRendererPost.c">
      <Filter>isar_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_isar\isar_splitRendererPre.c">
      <Filter>isar_c</Filter>
    </ClCompile>
  </ItemGroup>
  <ItemGroup>
    <ClInclude Include="..\lib_isar\lib_isar_post_rend.h" />
    <ClInclude Include="..\lib_isar\lib_isar_pre_rend.h" />
    <ClInclude Include="..\lib_isar\isar_cnst.h">
      <Filter>isar_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_isar\isar_lc3plus_common.h">
      <Filter>isar_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_isar\isar_lc3plus_dec.h">
      <Filter>isar_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_isar\isar_lc3plus_enc.h">
      <Filter>isar_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_isar\isar_lc3plus_payload.h">
      <Filter>isar_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_isar\isar_lcld_prot.h">
      <Filter>isar_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_isar\isar_rom_lcld_tables.h">
      <Filter>isar_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_isar\isar_prot.h">
      <Filter>isar_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_isar\isar_rom_post_rend.h">
      <Filter>isar_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_isar\isar_stat.h">
      <Filter>isar_h</Filter>
    </ClInclude>
  </ItemGroup>
  <ItemGroup>
    <Filter Include="isar_c">
      <UniqueIdentifier>{afca9c26-7922-4c24-aa3a-cbf00aa2b6d1}</UniqueIdentifier>
    </Filter>
    <Filter Include="isar_h">
      <UniqueIdentifier>{1ce7afb2-7474-42f5-b477-2d854c093429}</UniqueIdentifier>
    </Filter>
  </ItemGroup>
</Project>
 No newline at end of file
+177 −0
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <ItemGroup>
    <ClCompile Include="..\lib_util\aeid_file_reader.c">
      <Filter>util_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_util\ambi_convert.c">
      <Filter>util_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_util\audio_file_reader.c">
      <Filter>util_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_util\audio_file_writer.c">
      <Filter>util_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_util\bitstream_reader.c">
      <Filter>util_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_util\bitstream_writer.c">
      <Filter>util_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_util\cmdl_tools.c">
      <Filter>util_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_util\cmdln_parser.c">
      <Filter>util_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_util\evs_rtp_payload.c">
      <Filter>util_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_util\g192.c">
      <Filter>util_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_util\hrtf_file_reader.c">
      <Filter>util_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_util\ism_file_reader.c">
      <Filter>util_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_util\ism_file_writer.c">
      <Filter>util_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_util\jbm_file_reader.c">
      <Filter>util_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_util\jbm_file_writer.c">
      <Filter>util_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_util\ls_custom_file_reader.c">
      <Filter>util_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_util\masa_file_reader.c">
      <Filter>util_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_util\masa_file_writer.c">
      <Filter>util_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_util\mime_io.c">
      <Filter>util_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_util\render_config_reader.c">
      <Filter>util_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_util\rotation_file_reader.c">
      <Filter>util_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_util\rtpdump.c">
      <Filter>util_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_util\split_rend_bfi_file_reader.c">
      <Filter>util_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_util\split_render_file_read_write.c">
      <Filter>util_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_util\tsm_scale_file_reader.c">
      <Filter>util_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_util\vector3_pair_file_reader.c">
      <Filter>util_c</Filter>
    </ClCompile>
  </ItemGroup>
  <ItemGroup>
    <ClInclude Include="..\lib_util\aeid_file_reader.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\ambi_convert.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\audio_file_reader.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\audio_file_writer.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\bitstream_reader.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\bitstream_writer.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\cmdl_tools.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\cmdln_parser.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\evs_rtp_payload.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\g192.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\hrtf_file_reader.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\ism_file_reader.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\ism_file_writer.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\jbm_file_reader.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\jbm_file_writer.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\ls_custom_file_reader.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\masa_file_reader.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\masa_file_writer.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\mime_io.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\render_config_reader.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\rotation_file_reader.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\rtpdump.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\split_rend_bfi_file_reader.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\split_render_file_read_write.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\tinywavein_c.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\tinywaveout_c.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\tsm_scale_file_reader.h">
      <Filter>util_h</Filter>
    </ClInclude>
    <ClInclude Include="..\lib_util\vector3_pair_file_reader.h">
      <Filter>util_h</Filter>
    </ClInclude>
  </ItemGroup>
  <ItemGroup>
    <Filter Include="util_c">
      <UniqueIdentifier>{214bf366-8f03-4160-9ebe-daa6844c3754}</UniqueIdentifier>
    </Filter>
    <Filter Include="util_h">
      <UniqueIdentifier>{65ae801b-f259-4632-b413-22996b07a7bf}</UniqueIdentifier>
    </Filter>
  </ItemGroup>
</Project>
 No newline at end of file
Loading