diff options
Diffstat (limited to 'packages/TtsService/src/android/tts/SynthProxy.java')
| -rwxr-xr-x | packages/TtsService/src/android/tts/SynthProxy.java | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/packages/TtsService/src/android/tts/SynthProxy.java b/packages/TtsService/src/android/tts/SynthProxy.java index bb16b14..41ff92a 100755 --- a/packages/TtsService/src/android/tts/SynthProxy.java +++ b/packages/TtsService/src/android/tts/SynthProxy.java @@ -15,6 +15,8 @@ */ package android.tts; +import android.media.AudioManager; +import android.media.AudioSystem; import android.util.Log; import java.lang.ref.WeakReference; @@ -52,8 +54,13 @@ public class SynthProxy { /** * Synthesize speech and speak it directly using AudioTrack. */ - public int speak(String text) { - return native_speak(mJniData, text); + public int speak(String text, int streamType) { + if ((streamType > -1) && (streamType < AudioSystem.getNumStreamTypes())) { + return native_speak(mJniData, text, streamType); + } else { + Log.e("SynthProxy", "Trying to speak with invalid stream type " + streamType); + return native_speak(mJniData, text, AudioManager.STREAM_MUSIC); + } } /** @@ -156,7 +163,7 @@ public class SynthProxy { private native final int native_stop(int jniData); - private native final int native_speak(int jniData, String text); + private native final int native_speak(int jniData, String text, int streamType); private native final int native_synthesizeToFile(int jniData, String text, String filename); |
