The evaluation framework measures dubbing quality across 6 dimensions with automated metrics, human evaluation protocols, and regression testing.
# Run full evaluation
python scripts/evaluation/evaluate_full.py
# Run specific metric
python scripts/evaluation/metrics/wer_metrics.py
Measures ASR transcription accuracy.
scripts/evaluation/metrics/wer_metrics.pyjiwerAutomated proxy for perceived speech naturalness.
scripts/evaluation/metrics/mos_proxy_metrics.pyMeasures voice cloning fidelity between reference and synthesized speech.
scripts/evaluation/metrics/speaker_similarity.pyMeasures synchronization between audio and lip movements.
scripts/evaluation/metrics/lipsync_metrics.pyMeasures translation accuracy from English to Armenian.
scripts/evaluation/metrics/translation_metrics.pyMeasures inference speed and resource usage.
scripts/evaluation/metrics/performance_metrics.pypython scripts/evaluation/human_eval/protocol.py
Implements:
docker compose --profile dev up label-studiopython scripts/evaluation/human_eval/protocol.py --setuppython scripts/evaluation/regression/regression_test.py
Features:
Evaluation thresholds in configs/config.yaml:
evaluation:
wer_threshold: 0.08
mos_threshold: 4.6
speaker_similarity_threshold: 0.85
lse_c_threshold: 1.8
lse_d_threshold: 1.8
comet_threshold: 0.85
Evaluation-specific settings in scripts/evaluation/eval_config.yaml.
scripts/evaluation/
├── evaluate_full.py # Orchestrator
├── eval_config.yaml # Evaluation config
├── metrics/
│ ├── wer_metrics.py # WER computation
│ ├── mos_proxy_metrics.py # MOS proxy
│ ├── speaker_similarity.py # Voice similarity
│ ├── lipsync_metrics.py # Lip-sync error
│ ├── translation_metrics.py# COMET/BLEU
│ └── performance_metrics.py# Speed/memory
├── human_eval/
│ └── protocol.py # Human eval framework
├── regression/
│ └── regression_test.py # Regression testing
├── reporting/
└── test_data/