2012-03-22 2 views
4

У меня есть рабочий текст для речи, но я задавался вопросом вместо женского голоса, когда приложение называет его воспроизведением, вместо этого он будет делать мужской голос?Android Text To Speech Male Voice

ответ

1

Это зависит от базового двигателя TTS. Некоторые из них настраиваются и имеют разные голоса (мужчины, женщины и т. Д.), Некоторые из них имеют только один голос. В любом случае вы не можете контролировать это из своего приложения, пользователь должен изменить настройки двигателя TTS из приложения «Настройки». Вы могли бы только проинструктировать их об установке конкретного движка и настроить приложение для его использования.

3

Вы не можете заставить Android TextToSpeech звучать как мужчина. Если вы измените значение TextToSpeech.setPitch() на что-то низкое, например 0,1, это будет звучать очень плохо.

Ваш единственный вариант - попробовать другой движок Text-to-Speech или жить с женским звучащим голосом.

+1

Google имеет новый логотип, но Android имеет только женский голос, невероятный. – Josh

1

Можно изменить голос на мужчин. Установите в onCreate(): tts.setEngineByname("com.google.android.tts") и настройте службу google tts по умолчанию в настройках текста в речь и установите мужской голос в сервисе google tts.

Нравится программа? Поделись с друзьями! Или попросите установить.

4

Теперь можно использовать мужской/женский голос и динамически изменять его из пользовательского интерфейса приложения. Определение TTS как это (добавить Google TTS Engine в конструкторе):

tts = new TextToSpeech(context, this, "com.google.android.tts"); 

Contex = активность/приложение

это = TextToSpeech.OnInitListener

Из tts.getVoices() списка, выбрал нужный голос по его названию:

for (Voice tmpVoice : tts.getVoices()) { 
     if (tmpVoice.getName().equals(_voiceName)) { 
      return tmpVoice; 
      break; 
     } 
} 

NB: U nee d установить _voiceName, получив жестко закодированное имя голосовой почты от tts.getVoices(). например: для английского мужского пола было бы: "ан-нас-х-SFG # male_1-местный"

0

В любом случае вы можете настроить свой Android текста в речь для Google сервис TTS по:

  1. tts = new TextToSpeech(context, this, "com.google.android.tts"), или
  2. Установите новый мужской (английский) голос и установите его по умолчанию в android.

Надеюсь, что это поможет.

Смежные вопросы