Voicebank : vraies voix françaises (CML-TTS) + pool anonyme + garde-fou Qwen3

Remplace la voicebank générée par Kokoro (timbre anglais sur français phonémisé
-> accent que Qwen3 clonait) par 41 vraies voix FR issues de CML-TTS (livres
audio studio) : 1 narrateur dédié, 18F/14M nommées, 4F/4M anonymes réservées.

- scripts/import_voices.py : import multi-shards parquet, 1 clip/locuteur (le
  plus propre via levenshtein), genre estimé par F0 (YIN, anti-octave), filtre
  débit de parole (ref_text aligné sur l'audio).
- VoiceEntry.anonymous + assign_voices : les figurants « anonyme (...) » tirent
  dans un pool réservé, jamais mélangé avec les voix nommées ; narrateur dédié
  (fr_narrator remplace fr_f_siwis).
- dedup._anon_attrs : genre/âge déduits du nom anonyme (bon genre de voix).
- tts/qwen3.py : garde-fou anti-dérive (rejette/réessaie les sorties en boucle
  ou coupées en estimant la durée plausible du chunk).

Limite connue : Qwen3 ne sait pas synthétiser les fragments d'1-2 mots (incises,
titres) -> trous ; à traiter (repli Kokoro ou fusion des incises).

Inclut aussi du travail en cours antérieur (refacto backend LLM pluggable
mlx/lmstudio, benchmark, ajustements frontend/API).

Claude-Session: https://claude.ai/code/session_01XSVvcy1mfb4k1xDgib9vVU
This commit is contained in:
2026-06-21 21:32:31 +02:00
parent 141df5f04e
commit ba1813c583
91 changed files with 2558 additions and 442 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
voicebank/clips/fr_f_1.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_f_10.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_f_11.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_f_12.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_f_13.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_f_14.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_f_15.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_f_16.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_f_17.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_f_18.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_f_2.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_f_3.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_f_4.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_f_5.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_f_6.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_f_7.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_f_8.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_f_9.wav Normal file

Binary file not shown.

Binary file not shown.

BIN
voicebank/clips/fr_m_1.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_m_10.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_m_11.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_m_12.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_m_13.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_m_14.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_m_2.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_m_3.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_m_4.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_m_5.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_m_6.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_m_7.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_m_8.wav Normal file

Binary file not shown.

BIN
voicebank/clips/fr_m_9.wav Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.