Une alternative à pyttsx3 avec des voix naturelles
pyttsx3 est la synthèse vocale hors ligne classique de Python : il pilote le moteur vocal du système, SAPI5 sous Windows, les voix de macOS et eSpeak sous Linux. Il s’installe en quelques secondes et tourne partout, mais les voix sonnent robotiques, et votre programme sonne différemment sur chaque machine.
SuperClonica fonctionne aussi hors ligne, mais fait tourner un modèle neuronal : des voix naturelles identiques sous Windows, Linux et macOS, plus des voix de personnages et des voix entraînées à partir de vos enregistrements. Cette page compare honnêtement les deux.
Deux approches hors ligne
L’un emprunte la voix du système ; l’autre apporte la sienne.
- pyttsx3 : minuscule, instantané, il utilise les voix déjà installées sur le système ; elles sonnent robotiques et varient selon la plateforme.
- SuperClonica : un modèle neuronal d’environ 385 Mo, téléchargé une fois ; des voix naturelles, identiques partout.
- Les deux fonctionnent sans internet.
- Les voix SuperClonica parlent 31 langues ; le chinois n’est pas encore pris en charge.
Quand pyttsx3 est le bon outil
Pour de courtes alertes, des fonctions d’accessibilité sur du matériel modeste ou un script qui doit démarrer instantanément sans téléchargement, pyttsx3 est le choix le plus léger et le plus simple, et SuperClonica ne cherche pas à le remplacer.
Quand SuperClonica convient mieux
Le même texte, la même voix et le même seed donnent toujours le même son, ce que pyttsx3 ne peut pas garantir d’une machine à l’autre.
- Votre programme est écouté par des utilisateurs et doit sonner naturel.
- Il doit sonner pareil sur tous les systèmes et toutes les machines.
- Vous voulez des voix de personnages, une voix de marque ou votre propre voix entraînée.
- Vous enregistrez des fichiers audio pour des vidéos, des cours ou des jeux, pas seulement de la parole à voix haute.
Changer en quelques lignes
Installez le moteur avec python -m pip install superclonica-cpu. Là où votre code appelle pyttsx3 pour dire ou enregistrer du texte, créez le moteur une fois, tts = Superclonica() après from superclonica import Superclonica, et écrivez audio, rate = tts.synthesize(text, voice="F1", lang="fr"); tts.save("hello.wav", audio). Lisez le fichier avec n’importe quelle bibliothèque audio, ou gardez-le. Le chargement du moteur prend quelques secondes, chaque phrase ensuite une fraction de seconde. Avant de changer, essayez une voix sur sa page avec une phrase de 30 à 100 caractères, gratuitement et sans compte.
Combien ça coûte
Le moteur et les dix voix de base du modèle sont gratuits, et plusieurs voix du catalogue aussi. Les autres s’achètent une fois et restent à vous. Il demande plus de mémoire et de temps processeur que pyttsx3, mais ni carte graphique ni internet après le premier téléchargement.