diff options
| author | 2009-07-19 21:14:36 -0700 | |
|---|---|---|
| committer | 2009-07-19 21:14:36 -0700 | |
| commit | def06bcec0ebd24bea9fb21a22d8f671b6a8f16c (patch) | |
| tree | 679c0698a4c7f9cfc037b40944005f0d19186023 | |
| parent | a1663400f9dede2e6dd181d677652f671719afaf (diff) | |
| parent | 4b897aa99bf71f933f5b202c1531858382122d6f (diff) | |
am 4b897aa9: Merge change 7829 into donut
Merge commit '4b897aa99bf71f933f5b202c1531858382122d6f'
* commit '4b897aa99bf71f933f5b202c1531858382122d6f':
Making sure that there are no calls made to the native TTS
| -rwxr-xr-x | packages/TtsService/src/android/tts/TtsService.java | 42 |
1 files changed, 24 insertions, 18 deletions
diff --git a/packages/TtsService/src/android/tts/TtsService.java b/packages/TtsService/src/android/tts/TtsService.java index b3b580c55e4a..28801f8b50ad 100755 --- a/packages/TtsService/src/android/tts/TtsService.java +++ b/packages/TtsService/src/android/tts/TtsService.java @@ -551,16 +551,16 @@ public class TtsService extends Service implements OnCompletionListener { return; } int streamType = DEFAULT_STREAM_TYPE; + String language = ""; + String country = ""; + String variant = ""; + String speechRate = ""; if (speechItem.mParams != null){ - String language = ""; - String country = ""; - String variant = ""; for (int i = 0; i < speechItem.mParams.size() - 1; i = i + 2){ String param = speechItem.mParams.get(i); if (param != null) { if (param.equals(TextToSpeech.Engine.TTS_KEY_PARAM_RATE)) { - setSpeechRate("", - Integer.parseInt(speechItem.mParams.get(i+1))); + speechRate = speechItem.mParams.get(i+1); } else if (param.equals(TextToSpeech.Engine.TTS_KEY_PARAM_LANGUAGE)){ language = speechItem.mParams.get(i+1); } else if (param.equals(TextToSpeech.Engine.TTS_KEY_PARAM_COUNTRY)){ @@ -579,12 +579,15 @@ public class TtsService extends Service implements OnCompletionListener { } } } + } + // Only do the synthesis if it has not been killed by a subsequent utterance. + if (mKillList.get(speechItem) == null) { if (language.length() > 0){ setLanguage("", language, country, variant); } - } - // Only do the synthesis if it has not been killed by a subsequent utterance. - if (mKillList.get(speechItem) == null){ + if (speechRate.length() > 0){ + setSpeechRate("", Integer.parseInt(speechRate)); + } nativeSynth.speak(speechItem.mText, streamType); } } catch (InterruptedException e) { @@ -624,16 +627,16 @@ public class TtsService extends Service implements OnCompletionListener { synth.start(); return; } + String language = ""; + String country = ""; + String variant = ""; + String speechRate = ""; if (speechItem.mParams != null){ - String language = ""; - String country = ""; - String variant = ""; for (int i = 0; i < speechItem.mParams.size() - 1; i = i + 2){ String param = speechItem.mParams.get(i); - if (param != null){ - if (param.equals(TextToSpeech.Engine.TTS_KEY_PARAM_RATE)){ - setSpeechRate("", - Integer.parseInt(speechItem.mParams.get(i+1))); + if (param != null) { + if (param.equals(TextToSpeech.Engine.TTS_KEY_PARAM_RATE)) { + speechRate = speechItem.mParams.get(i+1); } else if (param.equals(TextToSpeech.Engine.TTS_KEY_PARAM_LANGUAGE)){ language = speechItem.mParams.get(i+1); } else if (param.equals(TextToSpeech.Engine.TTS_KEY_PARAM_COUNTRY)){ @@ -645,12 +648,15 @@ public class TtsService extends Service implements OnCompletionListener { } } } - if (language.length() > 0){ - setLanguage("", language, country, variant); - } } // Only do the synthesis if it has not been killed by a subsequent utterance. if (mKillList.get(speechItem) == null){ + if (language.length() > 0){ + setLanguage("", language, country, variant); + } + if (speechRate.length() > 0){ + setSpeechRate("", Integer.parseInt(speechRate)); + } nativeSynth.synthesizeToFile(speechItem.mText, speechItem.mFilename); } } catch (InterruptedException e) { |