Skip to content

Latest commit

 

History

214 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Recipe for VoicePrivacy Challenge 2026

Please visit the challenge website for more information about the Challenge.

Install

  1. git clone https://github.com/Voice-Privacy-Challenge/Voice-Privacy-Challenge-2026.git
  2. ./00_install.sh
  3. source env.sh

Tracks

Track 1
  1. Download data and models: bash 01_download_data_model_track1.sh

  2. Run Track 1 (semi-informed EER, WER, UAR): 02_run_track1.sh

[!IMPORTANT]
The IEMOCAP corpus must be downloaded on your own by submitting a request at https://sail.usc.edu/iemocap/iemocap_release.htm. The waiting time may take up to 7-9 days.

Anonymization and Evaluation

  1. Run anonymization and evaluation: ./02_run_track1.sh configs/track1/anon_mcadams.yaml.
    For each anonymization baseline, there is a corresponding config file:

To run anonymization and evaluation separately, please refer to the anonymization and evaluation sections in the VPC2024 GitHub README..

Results

Note, that WER results are computed on the trials part

The result file with all the metrics and all datasets for submission will be generated in:

  • Summary results: ./exp/results_summary/track1/result_for_rank$anon_data_suffix
  • Additional information for submission: ./exp/results_summary/track1/result_for_submission${anon_data_suffix}.zip

Please see the RESULTS folder for the provided anonymization baselines:

Track 2
  1. Download data and models: bash 01_download_data_model_track2.sh

  2. Run Track 2 (semi-informed EER, WER, UAR): bash 02_run_track2.sh

Anonymization and Evaluation

There are two options:

  1. Run anonymization and evaluation: ./02_run_track2.sh configs/track2/anon_BM1.yaml.
    For each anonymization baseline, there is a corresponding config file:

  2. Run anonymization and evaluation separately in two steps:

Step 1: Anonymization

python run_anonymization.py --config configs/track2/anon_BM1.yaml  

The anonymized audios will be saved in $data_dir=data into 30 folders corresponding to datasets. The names of the created dataset folders for anonymized audio files are appended with the suffix, i.e. $anon_data_suffix=_BM1


data/en_dev_enrolls${anon_data_suffix}/wav/*wav
data/en_dev_trials_mixed${anon_data_suffix}/wav/*wav
data/en_test_enrolls${anon_data_suffix}/wav/*wav
data/en_test_trials_mixed${anon_data_suffix}/wav/*wav

data/es_dev_enrolls${anon_data_suffix}/wav/*wav
data/es_dev_trials_mixed${anon_data_suffix}/wav/*wav
data/es_test_enrolls${anon_data_suffix}/wav/*wav
data/es_test_trials_mixed${anon_data_suffix}/wav/*wav

data/fr_dev_enrolls${anon_data_suffix}/wav/*wav
data/fr_dev_trials_mixed${anon_data_suffix}/wav/*wav
data/fr_test_enrolls${anon_data_suffix}/wav/*wav
data/fr_test_trials_mixed${anon_data_suffix}/wav/*wav

data/de_dev_enrolls${anon_data_suffix}/wav/*wav
data/de_dev_trials_mixed${anon_data_suffix}/wav/*wav
data/de_test_enrolls${anon_data_suffix}/wav/*wav
data/de_test_trials_mixed${anon_data_suffix}/wav/*wav

data/emodata_track2_dev${anon_data_suffix}/wav/*wav
data/emodata_track2_test${anon_data_suffix}/wav/*wav

data/train_english${anon_data_suffix}/wav/*wav
data/train_spanish${anon_data_suffix}/wav/*wav
data/train_french${anon_data_suffix}/wav/*wav
data/train_german${anon_data_suffix}/wav/*wav

data/cn_dev_enrolls${anon_data_suffix}/wav/*wav
data/cn_dev_trials_mixed${anon_data_suffix}/wav/*wav
data/cn_test_enrolls${anon_data_suffix}/wav/*wav
data/cn_test_trials_mixed${anon_data_suffix}/wav/*wav

data/ja_dev_enrolls${anon_data_suffix}/wav/*wav
data/ja_dev_trials_mixed${anon_data_suffix}/wav/*wav
data/ja_test_enrolls${anon_data_suffix}/wav/*wav
data/ja_test_trials_mixed${anon_data_suffix}/wav/*wav

For the next evaluation step, you should replicate the corresponding directory structure when developing your anonymization system.

Step 2: Evaluation

  1. perform evaluations
python run_evaluation.py --config configs/track2/eval_pre.yaml --overwrite "{\"anon_data_suffix\": \"$anon_data_suffix\"}" --force_compute True

python run_evaluation.py --config configs/track2/eval_post_en.yaml --overwrite "{\"anon_data_suffix\": \"$anon_data_suffix\"}" --force_compute True
python run_evaluation.py --config configs/track2/eval_post_de.yaml --overwrite "{\"anon_data_suffix\": \"$anon_data_suffix\"}" --force_compute True
python run_evaluation.py --config configs/track2/eval_post_es.yaml --overwrite "{\"anon_data_suffix\": \"$anon_data_suffix\"}" --force_compute True
python run_evaluation.py --config configs/track2/eval_post_fr.yaml --overwrite "{\"anon_data_suffix\": \"$anon_data_suffix\"}" --force_compute True

All of the above steps are automated in 02_run_track2.sh.

Results

Note, that WER results are computed on the trials part

The result file with all the metrics and all datasets for submission will be generated in:

  • Summary results: ./exp/results_summary/track2/result_for_rank$anon_data_suffix

Please see the RESULTS folder for the provided anonymization baselines:

Runtime Summary

Track 1

Script Description B2 B3 B4 B5
run_anonymization.py Generate anonymized audio (LibriSpeech dev+test, IEMOCAP dev+test, LibriSpeech-train-clean-360) ~2h ~13h ~72h ~1h
run_evaluation.py (eval_pre.yaml) ASR/ASV/SER on LibriSpeech dev+test & IEMOCAP dev+test using pretrained models
run_evaluation.py (eval_post.yaml) Train semi-informed ASV using anonymized LibriSpeech-train-clean-360h, then evaluate on LibriSpeech dev+test ~10h

Track 2

Script Description BM1 BM2 BM3
run_anonymization.py Generate anonymized audio (multilingual dev+test, emodata_track2, multilingual training set) ~20h >2 days >2 days
run_evaluation.py (eval_pre.yaml) ASR (Whisper large-v3), ASV (asv_ssl), SER (emotion2vec) on multilingual dev+test & emodata_track2 ori-asr-3.5h, anon-asr-3.5h asv-0.5h
run_evaluation.py (eval_post_en.yaml) Train semi-informed ASV using anonymized MLS-en data, then evaluate on MLS-en-dev+test 50min/epoch * 4 epochs
run_evaluation.py (eval_post_de.yaml) Train semi-informed ASV using anonymized MLS-de data, then evaluate on MLS-de-dev+test 33min/epoch * 10epochs
run_evaluation.py (eval_post_fr.yaml) Train semi-informed ASV using anonymized MLS-fr data, then evaluate on MLS-fr-dev+test 15min/epoch * 10epochs
run_evaluation.py (eval_post_es.yaml) Train semi-informed ASV using anonymized MLS-es data, then evaluate on MLS-es-dev+test 12min/epoch * 10epochs

Data submission

The anonymization and evaluation scripts should have generated the files and the directories with the explained format of $anon_data_suffix suffix.
For data submission, the following command submit everything given a $anon_data_suffix argument:

OSS_ACCESS_KEY_ID=<XXX> OSS_ACCESS_KEY_SECRET=<XXX> OSS_TEAM=<TEAM_NAME> bash 03_upload_submission_oss_track1.sh $anon_data_suffix
OSS_ACCESS_KEY_ID=<XXX> OSS_ACCESS_KEY_SECRET=<XXX> OSS_TEAM=<TEAM_NAME> bash 03_upload_submission_oss_track2.sh $anon_data_suffix

OSS_ACCESS_KEY_ID, OSS_ACCESS_KEY_SECRET, and OSS_TEAM will be sent individually to each team upon receiving their system description.

General information

Evaluation plan

For more details about the baseline and data, please see The VoicePrivacy 2026 Challenge Evaluation Plan v1.2

Training data

Final list of models and data for training anonymization systems.

Registration

Participants are requested to register for the evaluation. Registration should be performed once only for each participating entity using the following form: Registration.

Organizers

  • Xiaoxiao Miao - Duke Kunshan University, China
  • Natalia Tomashenko - Université de Lorraine, CNRS, Inria, LORIA, F-54000 Nancy, France
  • Ridwan Arefeen - Singapore Institute of Technology, Singapore
  • Sarina Meyer - University of Stuttgart, Germany
  • Michele Panariello - EURECOM, France
  • Xin Wang - National Institute of Informatics, Japan
  • Emmanuel Vincent - Université de Lorraine, CNRS, Inria, LORIA, F-54000 Nancy, France
  • Junichi Yamagishi - National Institute of Informatics, Japan
  • Nicholas Evans - EURECOM, France
  • Massimiliano Todisco - EURECOM, France

Contact: organisers@lists.voiceprivacychallenge.org

License

Copyright (C) 2026

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.

About

Baseline Recipe for VoicePrivacy Challenge 2026: anonymization systems and evaluation software

Resources

Stars

18 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages