Arabic Voice Ready
Les TTS arabes échouent à des endroits prévisibles. Corrigez-les dans le texte avant de générer l'audio — chaque régénération coûte des crédits.
Flux de travail
- Écrivez le script dans le dialecte cible. Les publicités égyptiennes se lisent naturellement en عامية («اطلب دلوقتي», «بس», «في المية»). Gardez les phrases courtes : une idée par phrase, 4 à 9 mots.
- Exécutez le normalisateur sur le brouillon — il écrit les nombres comme le dialecte les prononce, gère
%, les plages, les séparateurs de milliers, les chiffres arabo-indiens, les domaines et les mots d'emprunt courants :node scripts/normalize.mjs "خصم 20% من 5 لـ 15 نوفمبر بـ 359 جنيه" --dialect=egy --pauses # خصم عشرين في المية من خمسة لِـخمستاشر نوفمبر بـ تلتمية وتسعة وخمسين جنيه--dialect=msadonne les nombres en فصحى (خمسة عشر، عشرون بالمئة).--pausesajoute[short pause]entre les phrases (balises audio ElevenLabs v3/v4). - Appliquez les règles manuelles dans references/pronunciation.md pour ce qu'un script ne peut pas décider : diacritiques sur les mots ambigus, noms de marques, lettres ج / ق / ث / ذ en égyptien, accentuation des mots d'emprunt.
- Ajoutez des balises de livraison depuis references/elevenlabs-tags.md — avec parcimonie (une balise d'émotion toutes les 2–3 phrases).
- Générez 2 prises, écoutez, puis corrigez uniquement les mots qui ont posé problème. Notez chaque correction dans le script pour que la prise suivante la conserve.
Règles les plus importantes
- Ne laissez jamais de chiffres à deviner par le moteur. «15» peut devenir «خمسة عشر» dans une pub égyptienne, «20%» peut être lu «عشرون بالمئة». Épelez toujours à l'avance.
- Mots d'emprunt → écriture latine quand la lettre arabe est ambiguë. En égyptien, «ج» est un /g/ dur, donc «جل» est lu gal. Écrivez
gel. Idem pourmemory foamsi cela pose problème,.com→ «دوت كوم». - Diacritiques seulement là où besoin. Un texte entièrement voyellé sonne robotique. N'ajoutez une voyelle qu'à un mot qui a été mal lu : «البِيضاء», «خَصْم», «كُمْفُورْت».
- Marques : épelez-les comme la marque le dit, avec soukoun sur les groupes : «ماكْس كُمْفُورْت», «نُون», «جُومْيا».
- Prix : dites la devise une fois : «بـ تلتمية وتسعة وخمسين جنيه بدل أربعمية وتسعة وأربعين».
- Dates : «من خمسة لِخَمَسْتاشَر نوفمبر» — la ل se joint au nombre ; les diacritiques sur «خمستاشر» empêchent qu'il devienne «خمسة عشر».
- Ne promettez pas ce que vous ne pouvez pas prouver. Les scripts publicitaires ne doivent pas inventer de prix, réductions ou allégations médicales ; lisez les nombres à partir de la source réelle.
Fichiers
scripts/normalize.mjs— normalisateur sans dépendance (CLI +import { normalize, numberToWords }).scripts/normalize.test.mjs—node --test scripts/normalize.test.mjs.references/pronunciation.md— pièges et correctifs de prononciation égyptienne.references/elevenlabs-tags.md— balises audio qui fonctionnent bien avec l'arabe.examples/— scripts avant/après.