J'ai un texte de travail à la parole, mais je me demandais au lieu d'une voix féminine lorsque l'application l'appelle à être jouée, elle fera une voix masculine à la place? P>
7 Réponses :
Cela dépend du moteur TTS sous-jacent. Certains sont configurables et ont différentes voix (hommes, femmes, etc.), certains ont une seule voix. Dans tous les cas, vous ne pouvez pas contrôler cela à partir de votre application, l'utilisateur doit modifier les paramètres du moteur TTS de l'application Paramètres. Vous ne pouviez que les instruire d'installer un moteur en particulier et de configurer votre application pour l'utiliser. p>
Vous ne pouvez pas rendre les sons d'Android TextToStoSheck comme un homme. Si vous changez le textostostSpec.setpitch () a> valeur à quelque chose de bas, comme 0,1, il semblera très mauvais. p>
Votre seule option consiste à essayer un autre moteur de synthèse vocale ou à vivre avec la voix féminine. P>
Google a un nouveau logo, mais Android n'a qu'une voix féminine, incroyable.
La réponse n'est plus vraie. Par exemple, EN_UK a maintenant 18 voix et près de la moitié d'entre eux sont des hommes. Certains locaux n'ont toujours qu'une seule langue. Devrait être supprimé ou mis à jour.
Il est possible de changer la voix en homme. Définir dans Comme cela, vous pouvez utiliser des services TTS TTS tiers Android et vérifier le périphérique. Ou demander à installer. P> oncreate () code>:
tts.setenginebyname ("com.google.android.tts") code> et faites le service Google TTS par défaut dans des paramètres de parole et installer le mâle Voix dans Google TTS Service. P>
Il est maintenant possible d'utiliser la voix masculine / féminine et de le modifier de l'application UI de manière dynamique. Définissez TTS comme celui-ci (ajoutez Google TTS Moteur dans Constructor): Contex = Activité / App P>
this = textostStoStoSech.InInitlistener p>
blockQquote> de nb: u Besoin de définir
tts.gevoices () code> liste, choisissez votre voix souhaitée par son nom comme ceci: p>
_voicename code> en obtenant le nom de voix codé dur à partir de
tts.gevoices () code>. E.g: Pour l'anglais, il serait: "EN-US-X-SFG # MALE_1-LOCAL" P> P>
Son changement du nom de la voix à chaque fois, j'ai utilisé pour Hindi Homme La valeur était la voix [Nom: Hi-in-X-Cfn # Male_3-local, locale: hi_in, qualité: 400, latence: 200], maintenant pour Hi-in sa voix montrant [Nom: hi-in-x-hia-local, locale: hi_in, qualité: 400,], précédemment son travail maintenant sa création de problème
de toute façon, vous pouvez définir votre ligne de discours Android sur Google TTS Service par: p>
tts = nouveau textelleecech (contexte, ceci, "com.google.android.tts") code> ou li>
- Installez une nouvelle voix masculine (anglais) et définissez-la par défaut dans Android. LI>
ol>
espère que cela aide. P>
Voici mon code, espérons que cela vous aidera! p> private void speakOut(String message) {
t1.speak(message, TextToSpeech.QUEUE_FLUSH, null);
}
Mais lorsque nous définissons les paramètres régionaux comme si (Status == textcepecec.success) {SET
Sa modification des valeurs de manière dynamique non fixée pour les hommes ----> E ("Hi-in-X-SFG # mâle_2-local", nouveau local ("hi", "in"), 400 200, Vrai, A)
Contrairement à certaines réponses précédentes, le sexe est pas un paramètre (ou même une "caractéristique") d'un Voix objet. P>
Comme vous pouvez le voir ... à partir du 5/2021, il n'y a pas de paramètre booléen "ismale". p>
là est strud> a "Caractéristiques" Set textelleecec.setvoice () est conçu de telle sorte que l'ensemble de la voix doit être une correspondance exacte / une instance de l'un des objets vocaux précédemment renvoyés par TextToStoStSp.gevoices () - Ce n'est pas un moyen de Créez / demandez une nouvelle voix personnalisée ou de tenter de mélanger et de faire correspondre les paramètres. STRUT> (qui ne veut pas dire que certains moteurs ne vont pas essayer de faire une meilleure approximation de la nouvelle voix inexistante que vous essayez de l'envoyer ). p>
Même si le genre a été mis en œuvre, les paramètres vocaux ne sont pas conçus pour être réglés de manière indépendante. P>
Les objets vocaux sont un moyen par lequel un moteur peut décrire ses voix disponibles à l'aide de getvoiices () - ce ne sont pas les voix elles-mêmes. P>
Autant que je puisse dire, le constructeur de la classe vocale n'est vraiment pas utile à personne d'autre qu'un développeur de moteurs vocaux. P>
Tout cela signifie que, à moins que les auteurs d'un moteur spécifique n'aient choisi d'inclure "homme" ou "femme" comme une sous-chaîne du nom de la voix, il n'ya aucun moyen de déterminer si une voix sonne si une voix ou une autre que d'écouter en premier. p>
Ainsi, afin de contrôler si la sortie de la parole "est" masculine / femme, tout ce qui suit devrait être vrai: p>
PS - Même si vous pensez que vous avez trouvé une voix masculine, cela pourrait réellement être une femme qui vous semble-t-elle un homme. :) p>
PPS - Vous pouvez utiliser un service cloud à la place pour supprimer tout le périphérique imprévisibilité. P>
renvoyer ma réponse Ça fonctionne pour moi.Je peut mettre la voix pour mâle. Stackoverflow.com/Questtions/36681232/Android-TTS-MAle-v Course / ...