Commit 3ca99185 authored by Huo, Jiaquan's avatar Huo, Jiaquan
Browse files

Merge remote-tracking branch 'origin/main' into sba-ext

parents d2d8311f ec77881d
Loading
Loading
Loading
Loading
Loading
+214 −0
Original line number Diff line number Diff line
#! /usr/bin/bash

# (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
# Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
# Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
# Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
# contributors to this repository. All Rights Reserved.

# This software is protected by copyright law and by international treaties.
# The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
# Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
# Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
# Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
# contributors to this repository retain full ownership rights in their respective contributions in
# the software. This notice grants no license of any kind, including but not limited to patent
# license, nor is any license granted by implication, estoppel or otherwise.

# Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
# contributions.

# This software is provided "AS IS", without any express or implied warranties. The software is in the
# development stage. It is intended exclusively for experts who have experience with such software and
# solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
# and fitness for a particular purpose are hereby disclaimed and excluded.

# Any dispute, controversy or claim arising under or in relation to providing this software shall be
# submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
# accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
# the United Nations Convention on Contracts on the International Sales of Goods.

function usage {
    echo
    echo "Usage:"
    echo "      smoke_test_complexity.sh [--max_cores nMaxCores]"
    echo 
    echo "      nMaxCores - the number of CPUs to use (default 42)"
    exit
}

if [ ! -d "lib_com" ]; then
    echo "not in root directory! - please run in IVAS root"
    exit 1
fi

if [[ -z "$1" ]]; then
    MAX_CORES=42
elif [[ "$1" == "--max_cores" ]]; then
    if [[ -z "$2" ]]; then
        echo "Need maximum number of cores"
        exit 1
    else
        MAX_CORES=$2
    fi
else
    usage
fi

cfg=./scripts/config/ci_linux_ltv.json
ism_md_cmd="--ism_metadata_files /usr/local/ltv/ltvISM1.csv /usr/local/ltv/ltvISM2.csv /usr/local/ltv/ltvISM3.csv /usr/local/ltv/ltvISM4.csv"
duration_arg=""
complexity_cmd="--checks COMPLEXITY --create_complexity_tables"
max_num_workers="--max_workers $MAX_CORES"

# prepare combined format test signals
echo "\n======================= 0. preparing combined format test inputs =======================\n\n"
./scripts/prepare_combined_format_inputs.py

# Modes
mono_modes=$(./scripts/IvasBuildAndRunChecks.py -l  | grep ^mono)
FOA_modes=$(./scripts/IvasBuildAndRunChecks.py -l  | grep ^FOA)
HOA2_modes=$(./scripts/IvasBuildAndRunChecks.py -l  | grep ^HOA2)
HOA3_modes=$(./scripts/IvasBuildAndRunChecks.py -l  | grep ^HOA3)
PlanarFOA_modes=$(./scripts/IvasBuildAndRunChecks.py -l  | grep ^PlanarFOA)
PlanarHOA2_modes=$(./scripts/IvasBuildAndRunChecks.py -l  | grep ^PlanarHOA2)
PlanarHOA3_modes=$(./scripts/IvasBuildAndRunChecks.py -l  | grep ^PlanarHOA3)
MASA_modes=$(./scripts/IvasBuildAndRunChecks.py -l  | grep ^MASA)
MC_modes=$(./scripts/IvasBuildAndRunChecks.py -l  | grep ^MC)
stereo_modes=$(./scripts/IvasBuildAndRunChecks.py -l  | grep ^stereo)
stereoDmx_modes=$(./scripts/IvasBuildAndRunChecks.py -l  | grep ^StereoDmx)
OMASA_modes=$(./scripts/IvasBuildAndRunChecks.py -l  | grep ^OMASA)
OSBA_ISM1_modes=$(./scripts/IvasBuildAndRunChecks.py -l  | grep ^OSBA_ISM1)
OSBA_ISM2_modes=$(./scripts/IvasBuildAndRunChecks.py -l  | grep ^OSBA_ISM2)
OSBA_ISM3_modes=$(./scripts/IvasBuildAndRunChecks.py -l  | grep ^OSBA_ISM3)
OSBA_ISM4_modes=$(./scripts/IvasBuildAndRunChecks.py -l  | grep ^OSBA_ISM4)
ISM1_modes=$(./scripts/IvasBuildAndRunChecks.py -l | grep ^ISM1)
ISM2_modes=$(./scripts/IvasBuildAndRunChecks.py -l | grep ^ISM2)
ISM3_modes=$(./scripts/IvasBuildAndRunChecks.py -l | grep ^ISM3)
ISM4_modes=$(./scripts/IvasBuildAndRunChecks.py -l | grep ^ISM4)
ISM_plus1_modes=$(./scripts/IvasBuildAndRunChecks.py -l | grep ^ISM+1)
ISM_plus2_modes=$(./scripts/IvasBuildAndRunChecks.py -l | grep ^ISM+2)
ISM_plus3_modes=$(./scripts/IvasBuildAndRunChecks.py -l | grep ^ISM+3)
ISM_plus4_modes=$(./scripts/IvasBuildAndRunChecks.py -l | grep ^ISM+4)


echo "\n======================= 1. Mono =======================\n\n"
./scripts/IvasBuildAndRunChecks.py $complexity_cmd ltv_complexity_mono_no_fec -m $mono_modes -p $cfg $duration_arg $max_num_workers | tee smoke_test_output_mono.txt
rm -r ./COMPLEXITY/dec/
rm -r ./COMPLEXITY/enc/
rm -r ./COMPLEXITY/pcm/
echo "\n======================= 2. FOA =======================\n\n"
./scripts/IvasBuildAndRunChecks.py $complexity_cmd ltv_complexity_FOA_no_fec -m $FOA_modes -p $cfg $duration_arg $max_num_workers | tee smoke_test_output_FOA.txt
rm -r ./COMPLEXITY/dec/
rm -r ./COMPLEXITY/enc/
rm -r ./COMPLEXITY/pcm/
echo "\n======================= 3. HOA2 =======================\n\n"
./scripts/IvasBuildAndRunChecks.py $complexity_cmd ltv_complexity_HOA2_no_fec -m $HOA2_modes -p $cfg $duration_arg $max_num_workers | tee smoke_test_output_HOA2.txt
rm -r ./COMPLEXITY/dec/
rm -r ./COMPLEXITY/enc/
rm -r ./COMPLEXITY/pcm/
echo "\n======================= 4. HOA3 =======================\n\n"
./scripts/IvasBuildAndRunChecks.py $complexity_cmd ltv_complexity_HOA3_no_fec -m $HOA3_modes -p $cfg $duration_arg $max_num_workers | tee smoke_test_output_HOA3.txt
rm -r ./COMPLEXITY/dec/
rm -r ./COMPLEXITY/enc/
rm -r ./COMPLEXITY/pcm/
echo "\n======================= 5. PlanarFOA =======================\n\n"
./scripts/IvasBuildAndRunChecks.py $complexity_cmd ltv_complexity_PlanarFOA_no_fec -m $PlanarFOA_modes -p $cfg $duration_arg $max_num_workers | tee smoke_test_output_PlanarFOA.txt
rm -r ./COMPLEXITY/dec/
rm -r ./COMPLEXITY/enc/
rm -r ./COMPLEXITY/pcm/
echo "\n======================= 6. PlanarHOA2 =======================\n\n"
./scripts/IvasBuildAndRunChecks.py $complexity_cmd ltv_complexity_PlanarHOA2_no_fec -m $PlanarHOA2_modes -p $cfg $duration_arg $max_num_workers | tee smoke_test_output_PlanarHOA2.txt
rm -r ./COMPLEXITY/dec/
rm -r ./COMPLEXITY/enc/
rm -r ./COMPLEXITY/pcm/
echo "\n======================= 7. PlanarHOA3 =======================\n\n"
./scripts/IvasBuildAndRunChecks.py $complexity_cmd ltv_complexity_PlanarHOA3_no_fec -m $PlanarHOA3_modes -p $cfg $duration_arg $max_num_workers | tee smoke_test_output_PlanarHOA3.txt
rm -r ./COMPLEXITY/dec/
rm -r ./COMPLEXITY/enc/
rm -r ./COMPLEXITY/pcm/
echo "\n======================= 8. MASA =======================\n\n"
./scripts/IvasBuildAndRunChecks.py $complexity_cmd ltv_complexity_MASA_no_fec -m $MASA_modes -p $cfg $duration_arg $max_num_workers | tee smoke_test_output_MASA.txt
rm -r ./COMPLEXITY/dec/
rm -r ./COMPLEXITY/enc/
rm -r ./COMPLEXITY/pcm/
echo "\n======================= 9. MC =======================\n\n"
./scripts/IvasBuildAndRunChecks.py $complexity_cmd ltv_complexity_MC_no_fec -m $MC_modes -p $cfg $duration_arg $max_num_workers | tee smoke_test_output_MC.txt
rm -r ./COMPLEXITY/dec/
rm -r ./COMPLEXITY/enc/
rm -r ./COMPLEXITY/pcm/
echo "\n======================= 10. stereo =======================\n\n"
./scripts/IvasBuildAndRunChecks.py $complexity_cmd ltv_complexity_stereo_no_fec -m $stereo_modes -p $cfg $duration_arg $max_num_workers | tee smoke_test_output_stereo.txt
rm -r ./COMPLEXITY/dec/
rm -r ./COMPLEXITY/enc/
rm -r ./COMPLEXITY/pcm/
echo "\n======================= 11. stereoDmx =======================\n\n"
./scripts/IvasBuildAndRunChecks.py $complexity_cmd ltv_complexity_stereoDmx_no_fec -m $stereoDmx_modes -p $cfg $duration_arg $max_num_workers | tee smoke_test_output_stereoDmx.txt
rm -r ./COMPLEXITY/dec/
rm -r ./COMPLEXITY/enc/
rm -r ./COMPLEXITY/pcm/
echo "\n======================= 12. OMASA =======================\n\n"
./scripts/IvasBuildAndRunChecks.py $complexity_cmd ltv_complexity_OMASA_no_fec -m $OMASA_modes -p $cfg $duration_arg $max_num_workers | tee smoke_test_output_OMASA.txt
rm -r ./COMPLEXITY/dec/
rm -r ./COMPLEXITY/enc/
rm -r ./COMPLEXITY/pcm/
echo "\n======================= 13. OSBA ISM1 =======================\n\n"
./scripts/IvasBuildAndRunChecks.py $complexity_cmd ltv_complexity_OSBA_ISM1_no_fec -m $OSBA_ISM1_modes -p $cfg $duration_arg $max_num_workers | tee smoke_test_output_OSBA_ISM1.txt
rm -r ./COMPLEXITY/dec/
rm -r ./COMPLEXITY/enc/
rm -r ./COMPLEXITY/pcm/
echo "\n======================= 14. OSBA ISM2 =======================\n\n"
./scripts/IvasBuildAndRunChecks.py $complexity_cmd ltv_complexity_OSBA_ISM2_no_fec -m $OSBA_ISM2_modes -p $cfg $duration_arg $max_num_workers | tee smoke_test_output_OSBA_ISM2.txt
rm -r ./COMPLEXITY/dec/
rm -r ./COMPLEXITY/enc/
rm -r ./COMPLEXITY/pcm/
echo "\n======================= 15. OSBA ISM3 =======================\n\n"
./scripts/IvasBuildAndRunChecks.py $complexity_cmd ltv_complexity_OSBA_ISM3_no_fec -m $OSBA_ISM3_modes -p $cfg $duration_arg $max_num_workers | tee smoke_test_output_OSBA_ISM3.txt
rm -r ./COMPLEXITY/dec/
rm -r ./COMPLEXITY/enc/
rm -r ./COMPLEXITY/pcm/
echo "\n======================= 16. OSBA ISM4 =======================\n\n"
./scripts/IvasBuildAndRunChecks.py $complexity_cmd ltv_complexity_OSBA_ISM4_no_fec -m $OSBA_ISM4_modes -p $cfg $duration_arg $max_num_workers | tee smoke_test_output_OSBA_ISM4.txt
rm -r ./COMPLEXITY/dec/
rm -r ./COMPLEXITY/enc/
rm -r ./COMPLEXITY/pcm/
echo "\n======================= 15. ISM1 =======================\n\n"
./scripts/IvasBuildAndRunChecks.py $complexity_cmd ltv_complexity_ISM1_no_fec -m $ISM1_modes -p $cfg $duration_arg $ism_md_cmd $max_num_workers | tee smoke_test_output_ISM1.txt
rm -r ./COMPLEXITY/dec/
rm -r ./COMPLEXITY/enc/
rm -r ./COMPLEXITY/pcm/
echo "\n======================= 16. ISM2 =======================\n\n"
./scripts/IvasBuildAndRunChecks.py $complexity_cmd ltv_complexity_ISM2_no_fec -m $ISM2_modes -p $cfg $duration_arg $ism_md_cmd $max_num_workers | tee smoke_test_output_ISM2.txt
rm -r ./COMPLEXITY/dec/
rm -r ./COMPLEXITY/enc/
rm -r ./COMPLEXITY/pcm/
echo "\n======================= 17. ISM3 =======================\n\n"
./scripts/IvasBuildAndRunChecks.py $complexity_cmd ltv_complexity_ISM3_no_fec -m $ISM3_modes -p $cfg $duration_arg $ism_md_cmd $max_num_workers | tee smoke_test_output_ISM3.txt
rm -r ./COMPLEXITY/dec/
rm -r ./COMPLEXITY/enc/
rm -r ./COMPLEXITY/pcm/
echo "\n======================= 18. ISM4 =======================\n\n"
./scripts/IvasBuildAndRunChecks.py $complexity_cmd ltv_complexity_ISM4_no_fec -m $ISM4_modes -p $cfg $duration_arg $ism_md_cmd $max_num_workers | tee smoke_test_output_ISM4.txt
rm -r ./COMPLEXITY/dec/
rm -r ./COMPLEXITY/enc/
rm -r ./COMPLEXITY/pcm/
echo "\n======================= 19. ISM1 + extended metadata =======================\n\n"
./scripts/IvasBuildAndRunChecks.py $complexity_cmd ltv_complexity_ISM_plus1_no_fec -m $ISM_plus1_modes -p $cfg $duration_arg $ism_md_cmd $max_num_workers | tee smoke_test_output_ISM_plus1.txt
rm -r ./COMPLEXITY/dec/
rm -r ./COMPLEXITY/enc/
rm -r ./COMPLEXITY/pcm/
echo "\n======================= 20. ISM2 + extended metadata =======================\n\n"
./scripts/IvasBuildAndRunChecks.py $complexity_cmd ltv_complexity_ISM_plus2_no_fec -m $ISM_plus2_modes -p $cfg $duration_arg $ism_md_cmd $max_num_workers | tee smoke_test_output_ISM_plus2.txt
rm -r ./COMPLEXITY/dec/
rm -r ./COMPLEXITY/enc/
rm -r ./COMPLEXITY/pcm/
echo "\n======================= 21. ISM3 + extended metadata =======================\n\n"
./scripts/IvasBuildAndRunChecks.py $complexity_cmd ltv_complexity_ISM_plus3_no_fec -m $ISM_plus3_modes -p $cfg $duration_arg $ism_md_cmd $max_num_workers | tee smoke_test_output_ISM_plus3.txt
rm -r ./COMPLEXITY/dec/
rm -r ./COMPLEXITY/enc/
rm -r ./COMPLEXITY/pcm/
echo "\n======================= 22. ISM4 + extended metadata =======================\n\n"
./scripts/IvasBuildAndRunChecks.py $complexity_cmd ltv_complexity_ISM_plus4_no_fec -m $ISM_plus4_modes -p $cfg $duration_arg $ism_md_cmd $max_num_workers | tee smoke_test_output_ISM_plus4.txt
rm -r ./COMPLEXITY/dec/
rm -r ./COMPLEXITY/enc/
rm -r ./COMPLEXITY/pcm/
+780 −0

File added.

Preview size limit exceeded, changes collapsed.