Spaces:
Configuration error
Configuration error
| # Copyright (c) 2023 Amphion. | |
| # | |
| # This source code is licensed under the MIT license found in the | |
| # LICENSE file in the root directory of this source tree. | |
| ######## Build Experiment Environment ########### | |
| exp_dir=$(cd `dirname $0`; pwd) | |
| work_dir=$(dirname $(dirname $exp_dir)) | |
| export WORK_DIR=$work_dir | |
| export PYTHONPATH=$work_dir | |
| export PYTHONIOENCODING=UTF-8 | |
| ######## Parse the Given Parameters from the Commond ########### | |
| options=$(getopt -o c:n:s --long gpu:,reference_folder:,generated_folder:,dump_folder:,metrics:,fs:,align_method:,energy_db_scale:,f0_subtract_mean:,similarity_model:,similarity_mode:,ltr_path:,intelligibility_mode:,language: -- "$@") | |
| eval set -- "$options" | |
| while true; do | |
| case $1 in | |
| # Visible GPU machines. The default value is "0". | |
| --gpu) shift; gpu=$1 ; shift ;; | |
| # Reference Audio Folder | |
| --reference_folder) shift; ref_dir=$1 ; shift ;; | |
| # Generated Audio Folder | |
| --generated_folder) shift; deg_dir=$1 ; shift ;; | |
| # Result Dumping Folder | |
| --dump_folder) shift; dump_dir=$1 ; shift ;; | |
| # Metrics to Compute | |
| --metrics) shift; metrics=$1 ; shift ;; | |
| # Sampling Rate | |
| --fs) shift; fs=$1 ; shift ;; | |
| # Method for aligning F0. The default value is "cut" | |
| --align_method) shift; align_method=$1 ; shift ;; | |
| # Method for normalizing F0. The default value is "True" | |
| --f0_subtract_mean) shift; f0_subtract_mean=$1 ; shift ;; | |
| # Method for normalizing Energy. The default value is "True" | |
| --energy_db_scale) shift; energy_db_scale=$1 ; shift ;; | |
| # Model for computing speaker similarity. The default value is "wavlm" | |
| --similarity_model) shift; similarity_model=$1 ; shift ;; | |
| # Mode for computing speaker similarity. The default value is "pairwith" | |
| --similarity_mode) shift; similarity_mode=$1 ; shift ;; | |
| # Path for the transcript. | |
| --ltr_path) shift; ltr_path=$1 ; shift ;; | |
| # Mode for computing CER and WER. The default value is "gt_audio" | |
| --intelligibility_mode) shift; intelligibility_mode=$1 ; shift ;; | |
| # Language for computing CER and WER. The default value is "english" | |
| --language) shift; language=$1 ; shift ;; | |
| --) shift ; break ;; | |
| *) echo "Invalid option: $1" exit 1 ;; | |
| esac | |
| done | |
| ### Value check ### | |
| if [ -z "$ref_dir" ]; then | |
| echo "[Error] Please specify the reference_folder" | |
| exit 1 | |
| fi | |
| if [ -z "$deg_dir" ]; then | |
| echo "[Error] Please specify the generated_folder" | |
| exit 1 | |
| fi | |
| if [ -z "$dump_dir" ]; then | |
| echo "[Error] Please specify the dump_folder" | |
| exit 1 | |
| fi | |
| if [ -z "$metrics" ]; then | |
| echo "[Error] Please specify the metrics" | |
| exit 1 | |
| fi | |
| if [ -z "$gpu" ]; then | |
| gpu="0" | |
| fi | |
| if [ -z "$fs" ]; then | |
| fs="None" | |
| fi | |
| if [ -z "$align_method" ]; then | |
| align_method="dtw" | |
| fi | |
| if [ -z "$energy_db_scale" ]; then | |
| energy_db_scale="True" | |
| fi | |
| if [ -z "$f0_subtract_mean" ]; then | |
| f0_subtract_mean="True" | |
| fi | |
| if [ -z "$similarity_model" ]; then | |
| similarity_model="wavlm" | |
| fi | |
| if [ -z "$similarity_mode" ]; then | |
| similarity_mode="pairwith" | |
| fi | |
| if [ -z "$ltr_path" ]; then | |
| ltr_path="None" | |
| fi | |
| if [ -z "$intelligibility_mode" ]; then | |
| intelligibility_mode="gt_audio" | |
| fi | |
| if [ -z "$language" ]; then | |
| language="english" | |
| fi | |
| ######## Calculate Objective Metrics ########### | |
| CUDA_VISIBLE_DEVICES=$gpu python "$work_dir"/bins/calc_metrics.py \ | |
| --ref_dir $ref_dir \ | |
| --deg_dir $deg_dir \ | |
| --dump_dir $dump_dir \ | |
| --metrics $metrics \ | |
| --fs $fs \ | |
| --align_method $align_method \ | |
| --db_scale $energy_db_scale \ | |
| --f0_subtract_mean $f0_subtract_mean \ | |
| --similarity_model $similarity_model \ | |
| --similarity_mode $similarity_mode \ | |
| --ltr_path $ltr_path \ | |
| --intelligibility_mode $intelligibility_mode \ | |
| --language $language |