2013-08-16 3 views
2

Android TextToSpeech를 사용할 때 음성의 성별을 지정할 수있는 방법이 있습니까 (예 : tts.setGender(TextToSpeech.MALE) 또는 tts.speak("<voice gender='male'>Hello </voice>"))? Android TextToSpeech, 설정 성별?

내가 같은를 찾고 있지만, 몇 가지 조사를 수행 한 후, 음성을 구성 할 수있는 방법이 없었다

답변

0

, 당신의 시간을

안부,

제임스를 주셔서 감사합니다. 어느 피치, 속도도 성별

2

는 당신을위한 여성에 대한 Locale.UKtts.setLanguageLocale.US을 설정할 수 있습니다 남성

if(myTTS.isLanguageAvailable(Locale.ENGLISH)==TextToSpeech.LANG_AVAILABLE) 
myTTS.setLanguage(Locale.UK); 

또는

if(myTTS.isLanguageAvailable(Locale.ENGLISH)==TextToSpeech.LANG_AVAILABLE) 
myTTS.setLanguage(Locale.US); 

유일한주의해야 할 점은 이것은 단지 새로운 안드로이드 버전에서 작동한다는 것입니다 , 나는 4.0 이상을 생각한다. 이 블로그 post에 대한 자세한 정보가 있습니다.

+0

영어에 대해서는 좋은 생각이지만, 불행히도 나는 DefaultEngine을 사용하는 여성 독일어 음성을 사용해야합니다. 남성 음성을 사용하여 다른 엔진을 다운로드하고 음성간에 전환 할 수 있는지 확인합니다. 영어 원본보기 자동 번역보기 회원 가입없이 3 분 안에 젊은이, DefaultEngine와 함께있어. 흰색 배경에 고립 된 시계, 흰색 배경에 고립 된 엔진 (흰색 배경에 고립), 흰색 배경에 고립. – James

2

음성을 생성하는 데 사용되는 음성 데이터는 특정 음성에 매우 한정되어 있으며 데이터 크기가 매우 큽니다. 모바일 장치가 현명합니다. 그래서 무작위로 남성/여성을 바꿀 수는 없습니다. Ivona voices 예를 들어 미국 영어 (Kendra, female) 또는 영국 영어 (Amy, Female)의 음성 데이터를 다운로드 할 수 있으며 각각의 데이터 크기는 ~ 150MB입니다.

로드 된 사용자의 음성 데이터에 따라 다른 언어 (미국 - 영국)로 재생할 수 있습니다. 남성 일 수도 있고 여성 일 수도 있습니다.

피치 및 속도는 네, TTS 피치 및 속도를 변경할 수 있습니다. 시도했지만 소리가 잘 들리지 않았지만 사용중인 음성 데이터에 따라 다를 수 있습니다.

API들 : 두 경우

tts.setPitch(float pitch); 
tts.setSpeechRate(float speechRate); 

파라미터 1.0 '정상'피치/레이트.