Je joue avec le moteur TTS Android. J'essaie de le mettre pour parler en espagnol du Mexique, plutôt que de l'Espagne.
J'ai essayé plusieurs combinaisons de code de langue / code de pays, mais je n'ai pas pu obtenir quoi que ce soit de l'espagnol de l'Espagne. Voici mon code actuellement P>
loc = new Locale("es", "MEX"); myTts.setLanguage(loc); say("Hello");
3 Réponses :
Je n'ai pas encore utilisé TTS sur Android, alors je ne sais pas si cela est pertinent, mais le Constructeur local s'attend à un code de pays de 2 lettres et Le code de pays ISO pour le Mexique est MX. P>
C'est un peu déroutant s'il veut les codes de pays de 2 lettres ou de 3 lettres. Locale Documentation dit 2 lettre, ce serait donc SP-MX , mais le TTS DOC montre un exemple avec 3 codes de lettres, donc spa- MEX serait le bon. p>
Quelle version de l'appareil / SDK utilisez-vous? Si vous ne travaillez pas, cela pourrait être parce que votre appareil ne prend pas en charge l'espagnol-Mexique. La première section du TTS Doc montre comment faire la vérification de la langue ressources spécifiques, et les télécharger si elles ne sont pas présentes. P>
J'ai testé sur Nexus One en cours d'exécution 2.2 et myTouch en cours d'exécution 1.6. L'application est construite sur la version 1.6 SDK. Je viens d'essayer avec des codes de 2 et 3 lettres les mêmes résultats.
Avez-vous essayé de télécharger les ressources spécifiques à la langue?
Lien vers TTS Doc est cassé
J'ai utilisé le code suivant et cela fonctionne bien en espagnol.
Fonctionne bien pour moi .. merci
Ne fonctionne pas avec cette erreur pour moi: tenter d'invoquer la méthode virtuelle 'int Android.speech.tts.texttoStecec.setlangue (java.util.locale)' sur une référence d'objet null