2013-07-02 1 views
1

이 응용 프로그램의 텍스트 음성 변환 코드가 있습니다.응용 프로그램의 eSpeak tts 엔진 사용

public void onInit(int status) { 
    // TODO Auto-generated method stub 
    if (status == TextToSpeech.SUCCESS) { 
     //Setting speech language   
     int result = tts.setLanguage(Locale.ENGLISH);    
     //If your device doesn't support language you set above 
     if (result == TextToSpeech.LANG_MISSING_DATA 
       || result == TextToSpeech.LANG_NOT_SUPPORTED) { 
       //Cook simple toast message with message 
       Toast.makeText(this, "Language not supported", Toast.LENGTH_LONG).show(); 
       //Log.e("TTS", "Language is not supported"); 
     }     
     //TTS is not initialized properly 
    } else { 
       Toast.makeText(this, "TTS Initilization Failed", Toast.LENGTH_LONG).show(); 
       //Log.e("TTS", "Initilization Failed"); 
    } 
} 

내 응용 프로그램이 기본 안드로이드 TTS 엔진을 다음 언어를 지원하지 않기 때문에 등 영어, 힌디어, 마라타어, 텔루구어, 타밀어, 같은 많은 다른 언어를 포함,이 link에서 eSpeak를 TTS 엔진을 다운로드하고 그것을 설치 내 휴대 전화.

기본 언어는 영어로 설정됩니다. 다른 언어의 유니 코드 텍스트도 읽을 수 있도록 내 코드에서 언어를 어떻게 변경합니까?

현재 힌디어 스크립트로 된 단어의 경우 숫자가 표시됩니다.

어떻게 텍스트에 사용 된 언어를 인식하게합니까? 기본 Google tts에서 사용할 수있는 로케일 만 표시됩니다. 어떻게 tts 엔진을 eSpeak tts로 변경합니까?

+0

여기에서 문제를 해결할 수 있습니다. 동일한 코드를 공유 할 수 있습니까? – SSR

+0

@SSR 아니요 .. 해결할 수 없었습니다 .. espeak 엔진을 감지하지 못합니다. – newbee

답변

0

필요에 따라 로케일을 변경하십시오.

현재는 Locale.ENGLISH입니다.

+0

예 ..하지만 eSpeak tts를 감지하지 못합니다. 기본 Google tts에서 사용할 수있는 로케일 만 표시됩니다. 어떻게 tts 엔진을 eSpeak tts로 변경합니까? – newbee

1

getEngines를 호출하여 얻을 수 있습니다 사용할 수있는 TTS 엔진의

tts = new TextToSpeech(this, this, "com.googlecode.eyesfree.espeak"); 

엔진 패키지 이름입니다

TextToSpeech (Context context, TextToSpeech.OnInitListener listener, String engine) 

사용하여 TextToSpeech를 초기화합니다.

+0

자세히 설명해 주시겠습니까? 이걸 초기화 할 때 Context가 변수로 해석 될 수 없다는 것을 eclipse가 보여 주면 TextToSpeech.OnInitListener를 변수로 해석 할 수 없습니다. ... – newbee

+0

내 전화에 eSpeak tts가 설치되어 있습니다. 이클립스에서 코드를 작성할 때이 엔진을 어떻게 인식 할 수 있습니까? 내가 빠진 몇 가지 단계가 있습니까? 도와주세요. 나는 안드로이드에 처음이다 – newbee

+0

나는 나의 대답을 편집했다. –

관련 문제