我使用TTS(文本到语音),但我的设备不说话。
TtsEngine::setLanguage called with unsupported language
setLanguage(kor, KOR,) failed
我认为我的设备不支持韩语。
如何安装韩语语言包?
我的来源。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//create TTS
tts = new TextToSpeech(this, new TextToSpeech.OnInitListener() {
@Override
public void onInit(int i) {
if (i != ERROR) {
tts.setLanguage(Locale.KOREAN);
}
else {
}
}
});
btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
tts.speak(editText.getText().toString(), TextToSpeech.QUEUE_FLUSH, null);
}
});
}
如何在我的Android设备上发言?
感谢:..
答案 0 :(得分:0)
试试这个
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
tts = new TextToSpeech(this, new TextToSpeech.OnInitListener() {
@Override
public void onInit(int status) {
if (status == TextToSpeech.SUCCESS ) {
{
int result = tts.setLanguage(Locale.getDefault());
System.out.println ( "Result : " + result + " " + Locale.getDefault().getLanguage() );
if (result == TextToSpeech.LANG_MISSING_DATA
|| result == TextToSpeech.LANG_NOT_SUPPORTED)
{
Toast.makeText( this , "Please Set your Language to English US.", Toast.LENGTH_LONG ).show();
}
else
{
tts.setLanguage(Locale.KOREAN);//remove this line
tts.setLanguage(new Locale("ko_KR"));//add this line
tts.speak( "hey",TextToSpeech.QUEUE_FLUSH, null );
}
}
});
btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
tts.speak(editText.getText().toString(), TextToSpeech.QUEUE_FLUSH, null);
}
});
答案 1 :(得分:0)
简短答案:尝试打开WIFI
我遇到了同样的问题。
如果在logcat中过滤单词“ TTS”,则可以看到设备正在尝试下载语言环境。因此,如果打开Wifi,则应解决您的问题。我正在寻找一种解决方案,以将语言环境本地加载到设备上,以避免通过Internet下载它。