Loading api/current.txt +7 −5 Original line number Diff line number Diff line Loading @@ -17455,21 +17455,23 @@ package android.speech { package android.speech.tts { public abstract class SynthesisRequest { ctor public SynthesisRequest(java.lang.String, android.os.Bundle); public abstract interface SynthesisCallback { method public abstract int audioAvailable(byte[], int, int); method public abstract int completeAudioAvailable(int, int, int, byte[], int, int); method public abstract int done(); method public abstract void error(); method public abstract int getMaxBufferSize(); method public abstract int start(int, int, int); } public final class SynthesisRequest { method public java.lang.String getCountry(); method public java.lang.String getLanguage(); method public abstract int getMaxBufferSize(); method public android.os.Bundle getParams(); method public int getPitch(); method public int getSpeechRate(); method public java.lang.String getText(); method public java.lang.String getVariant(); method public abstract int start(int, int, int); } public class TextToSpeech { Loading Loading @@ -17555,7 +17557,7 @@ package android.speech.tts { method protected abstract int onIsLanguageAvailable(java.lang.String, java.lang.String, java.lang.String); method protected abstract int onLoadLanguage(java.lang.String, java.lang.String, java.lang.String); method protected abstract void onStop(); method protected abstract void onSynthesizeText(android.speech.tts.SynthesisRequest); method protected abstract void onSynthesizeText(android.speech.tts.SynthesisRequest, android.speech.tts.SynthesisCallback); } } core/java/android/speech/tts/AbstractSynthesisCallback.java 0 → 100644 +34 −0 Original line number Diff line number Diff line /* * Copyright (C) 2011 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); you may not * use this file except in compliance with the License. You may obtain a copy of * the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations under * the License. */ package android.speech.tts; /** * Defines additional methods the synthesis callback must implement that * are private to the TTS service implementation. */ abstract class AbstractSynthesisCallback implements SynthesisCallback { /** * Checks whether the synthesis request completed successfully. */ abstract boolean isDone(); /** * Aborts the speech request. * * Can be called from multiple threads. */ abstract void stop(); } core/java/android/speech/tts/FileSynthesisRequest.java→core/java/android/speech/tts/FileSynthesisCallback.java +2 −4 Original line number Diff line number Diff line Loading @@ -16,7 +16,6 @@ package android.speech.tts; import android.media.AudioFormat; import android.os.Bundle; import android.util.Log; import java.io.File; Loading @@ -29,7 +28,7 @@ import java.nio.ByteOrder; /** * Speech synthesis request that writes the audio to a WAV file. */ class FileSynthesisRequest extends SynthesisRequest { class FileSynthesisCallback extends AbstractSynthesisCallback { private static final String TAG = "FileSynthesisRequest"; private static final boolean DBG = false; Loading @@ -48,8 +47,7 @@ class FileSynthesisRequest extends SynthesisRequest { private boolean mStopped = false; private boolean mDone = false; FileSynthesisRequest(String text, Bundle params, File fileName) { super(text, params); FileSynthesisCallback(File fileName) { mFileName = fileName; } Loading core/java/android/speech/tts/PlaybackSynthesisRequest.java→core/java/android/speech/tts/PlaybackSynthesisCallback.java +4 −5 Original line number Diff line number Diff line Loading @@ -15,14 +15,13 @@ */ package android.speech.tts; import android.os.Bundle; import android.speech.tts.TextToSpeechService.UtteranceCompletedDispatcher; import android.util.Log; /** * Speech synthesis request that plays the audio as it is received. */ class PlaybackSynthesisRequest extends SynthesisRequest { class PlaybackSynthesisCallback extends AbstractSynthesisCallback { private static final String TAG = "PlaybackSynthesisRequest"; private static final boolean DBG = false; Loading Loading @@ -66,9 +65,9 @@ class PlaybackSynthesisRequest extends SynthesisRequest { private final UtteranceCompletedDispatcher mDispatcher; PlaybackSynthesisRequest(String text, Bundle params, int streamType, float volume, float pan, AudioPlaybackHandler audioTrackHandler, UtteranceCompletedDispatcher dispatcher) { super(text, params); PlaybackSynthesisCallback(int streamType, float volume, float pan, AudioPlaybackHandler audioTrackHandler, UtteranceCompletedDispatcher dispatcher) { mStreamType = streamType; mVolume = volume; mPan = pan; Loading core/java/android/speech/tts/SynthesisCallback.java 0 → 100644 +107 −0 Original line number Diff line number Diff line /* * Copyright (C) 2011 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); you may not * use this file except in compliance with the License. You may obtain a copy of * the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations under * the License. */ package android.speech.tts; /** * A callback to return speech data synthesized by a text to speech engine. * * The engine can provide streaming audio by calling * {@link #start}, then {@link #audioAvailable} until all audio has been provided, then finally * {@link #done}. * * Alternatively, the engine can provide all the audio at once, by using * {@link #completeAudioAvailable}. * * {@link #error} can be called at any stage in the synthesis process to * indicate that an error has occured, but if the call is made after a call * to {@link #done} or {@link #completeAudioAvailable} it might be discarded. */ public interface SynthesisCallback { /** * @return the maximum number of bytes that the TTS engine can pass in a single call of * {@link #audioAvailable}. This does not apply to {@link #completeAudioAvailable}. * Calls to {@link #audioAvailable} with data lengths larger than this * value will not succeed. */ public int getMaxBufferSize(); /** * The service should call this when it starts to synthesize audio for this * request. * * This method should only be called on the synthesis thread, * while in {@link TextToSpeechService#onSynthesizeText}. * * @param sampleRateInHz Sample rate in HZ of the generated audio. * @param audioFormat Audio format of the generated audio. Must be one of * the ENCODING_ constants defined in {@link android.media.AudioFormat}. * @param channelCount The number of channels. Must be {@code 1} or {@code 2}. * @return {@link TextToSpeech#SUCCESS} or {@link TextToSpeech#ERROR}. */ public int start(int sampleRateInHz, int audioFormat, int channelCount); /** * The service should call this method when synthesized audio is ready for consumption. * * This method should only be called on the synthesis thread, * while in {@link TextToSpeechService#onSynthesizeText}. * * @param buffer The generated audio data. This method will not hold on to {@code buffer}, * so the caller is free to modify it after this method returns. * @param offset The offset into {@code buffer} where the audio data starts. * @param length The number of bytes of audio data in {@code buffer}. This must be * less than or equal to the return value of {@link #getMaxBufferSize}. * @return {@link TextToSpeech#SUCCESS} or {@link TextToSpeech#ERROR}. */ public int audioAvailable(byte[] buffer, int offset, int length); /** * The service can call this method instead of using {@link #start}, {@link #audioAvailable} * and {@link #done} if all the audio data is available in a single buffer. * * @param sampleRateInHz Sample rate in HZ of the generated audio. * @param audioFormat Audio format of the generated audio. Must be one of * the ENCODING_ constants defined in {@link android.media.AudioFormat}. * @param channelCount The number of channels. Must be {@code 1} or {@code 2}. * @param buffer The generated audio data. This method will not hold on to {@code buffer}, * so the caller is free to modify it after this method returns. * @param offset The offset into {@code buffer} where the audio data starts. * @param length The number of bytes of audio data in {@code buffer}. * @return {@link TextToSpeech#SUCCESS} or {@link TextToSpeech#ERROR}. */ public int completeAudioAvailable(int sampleRateInHz, int audioFormat, int channelCount, byte[] buffer, int offset, int length); /** * The service should call this method when all the synthesized audio for a request has * been passed to {@link #audioAvailable}. * * This method should only be called on the synthesis thread, * while in {@link TextToSpeechService#onSynthesizeText}. * * @return {@link TextToSpeech#SUCCESS} or {@link TextToSpeech#ERROR}. */ public int done(); /** * The service should call this method if the speech synthesis fails. * * This method should only be called on the synthesis thread, * while in {@link TextToSpeechService#onSynthesizeText}. */ public void error(); } No newline at end of file Loading
api/current.txt +7 −5 Original line number Diff line number Diff line Loading @@ -17455,21 +17455,23 @@ package android.speech { package android.speech.tts { public abstract class SynthesisRequest { ctor public SynthesisRequest(java.lang.String, android.os.Bundle); public abstract interface SynthesisCallback { method public abstract int audioAvailable(byte[], int, int); method public abstract int completeAudioAvailable(int, int, int, byte[], int, int); method public abstract int done(); method public abstract void error(); method public abstract int getMaxBufferSize(); method public abstract int start(int, int, int); } public final class SynthesisRequest { method public java.lang.String getCountry(); method public java.lang.String getLanguage(); method public abstract int getMaxBufferSize(); method public android.os.Bundle getParams(); method public int getPitch(); method public int getSpeechRate(); method public java.lang.String getText(); method public java.lang.String getVariant(); method public abstract int start(int, int, int); } public class TextToSpeech { Loading Loading @@ -17555,7 +17557,7 @@ package android.speech.tts { method protected abstract int onIsLanguageAvailable(java.lang.String, java.lang.String, java.lang.String); method protected abstract int onLoadLanguage(java.lang.String, java.lang.String, java.lang.String); method protected abstract void onStop(); method protected abstract void onSynthesizeText(android.speech.tts.SynthesisRequest); method protected abstract void onSynthesizeText(android.speech.tts.SynthesisRequest, android.speech.tts.SynthesisCallback); } }
core/java/android/speech/tts/AbstractSynthesisCallback.java 0 → 100644 +34 −0 Original line number Diff line number Diff line /* * Copyright (C) 2011 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); you may not * use this file except in compliance with the License. You may obtain a copy of * the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations under * the License. */ package android.speech.tts; /** * Defines additional methods the synthesis callback must implement that * are private to the TTS service implementation. */ abstract class AbstractSynthesisCallback implements SynthesisCallback { /** * Checks whether the synthesis request completed successfully. */ abstract boolean isDone(); /** * Aborts the speech request. * * Can be called from multiple threads. */ abstract void stop(); }
core/java/android/speech/tts/FileSynthesisRequest.java→core/java/android/speech/tts/FileSynthesisCallback.java +2 −4 Original line number Diff line number Diff line Loading @@ -16,7 +16,6 @@ package android.speech.tts; import android.media.AudioFormat; import android.os.Bundle; import android.util.Log; import java.io.File; Loading @@ -29,7 +28,7 @@ import java.nio.ByteOrder; /** * Speech synthesis request that writes the audio to a WAV file. */ class FileSynthesisRequest extends SynthesisRequest { class FileSynthesisCallback extends AbstractSynthesisCallback { private static final String TAG = "FileSynthesisRequest"; private static final boolean DBG = false; Loading @@ -48,8 +47,7 @@ class FileSynthesisRequest extends SynthesisRequest { private boolean mStopped = false; private boolean mDone = false; FileSynthesisRequest(String text, Bundle params, File fileName) { super(text, params); FileSynthesisCallback(File fileName) { mFileName = fileName; } Loading
core/java/android/speech/tts/PlaybackSynthesisRequest.java→core/java/android/speech/tts/PlaybackSynthesisCallback.java +4 −5 Original line number Diff line number Diff line Loading @@ -15,14 +15,13 @@ */ package android.speech.tts; import android.os.Bundle; import android.speech.tts.TextToSpeechService.UtteranceCompletedDispatcher; import android.util.Log; /** * Speech synthesis request that plays the audio as it is received. */ class PlaybackSynthesisRequest extends SynthesisRequest { class PlaybackSynthesisCallback extends AbstractSynthesisCallback { private static final String TAG = "PlaybackSynthesisRequest"; private static final boolean DBG = false; Loading Loading @@ -66,9 +65,9 @@ class PlaybackSynthesisRequest extends SynthesisRequest { private final UtteranceCompletedDispatcher mDispatcher; PlaybackSynthesisRequest(String text, Bundle params, int streamType, float volume, float pan, AudioPlaybackHandler audioTrackHandler, UtteranceCompletedDispatcher dispatcher) { super(text, params); PlaybackSynthesisCallback(int streamType, float volume, float pan, AudioPlaybackHandler audioTrackHandler, UtteranceCompletedDispatcher dispatcher) { mStreamType = streamType; mVolume = volume; mPan = pan; Loading
core/java/android/speech/tts/SynthesisCallback.java 0 → 100644 +107 −0 Original line number Diff line number Diff line /* * Copyright (C) 2011 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); you may not * use this file except in compliance with the License. You may obtain a copy of * the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations under * the License. */ package android.speech.tts; /** * A callback to return speech data synthesized by a text to speech engine. * * The engine can provide streaming audio by calling * {@link #start}, then {@link #audioAvailable} until all audio has been provided, then finally * {@link #done}. * * Alternatively, the engine can provide all the audio at once, by using * {@link #completeAudioAvailable}. * * {@link #error} can be called at any stage in the synthesis process to * indicate that an error has occured, but if the call is made after a call * to {@link #done} or {@link #completeAudioAvailable} it might be discarded. */ public interface SynthesisCallback { /** * @return the maximum number of bytes that the TTS engine can pass in a single call of * {@link #audioAvailable}. This does not apply to {@link #completeAudioAvailable}. * Calls to {@link #audioAvailable} with data lengths larger than this * value will not succeed. */ public int getMaxBufferSize(); /** * The service should call this when it starts to synthesize audio for this * request. * * This method should only be called on the synthesis thread, * while in {@link TextToSpeechService#onSynthesizeText}. * * @param sampleRateInHz Sample rate in HZ of the generated audio. * @param audioFormat Audio format of the generated audio. Must be one of * the ENCODING_ constants defined in {@link android.media.AudioFormat}. * @param channelCount The number of channels. Must be {@code 1} or {@code 2}. * @return {@link TextToSpeech#SUCCESS} or {@link TextToSpeech#ERROR}. */ public int start(int sampleRateInHz, int audioFormat, int channelCount); /** * The service should call this method when synthesized audio is ready for consumption. * * This method should only be called on the synthesis thread, * while in {@link TextToSpeechService#onSynthesizeText}. * * @param buffer The generated audio data. This method will not hold on to {@code buffer}, * so the caller is free to modify it after this method returns. * @param offset The offset into {@code buffer} where the audio data starts. * @param length The number of bytes of audio data in {@code buffer}. This must be * less than or equal to the return value of {@link #getMaxBufferSize}. * @return {@link TextToSpeech#SUCCESS} or {@link TextToSpeech#ERROR}. */ public int audioAvailable(byte[] buffer, int offset, int length); /** * The service can call this method instead of using {@link #start}, {@link #audioAvailable} * and {@link #done} if all the audio data is available in a single buffer. * * @param sampleRateInHz Sample rate in HZ of the generated audio. * @param audioFormat Audio format of the generated audio. Must be one of * the ENCODING_ constants defined in {@link android.media.AudioFormat}. * @param channelCount The number of channels. Must be {@code 1} or {@code 2}. * @param buffer The generated audio data. This method will not hold on to {@code buffer}, * so the caller is free to modify it after this method returns. * @param offset The offset into {@code buffer} where the audio data starts. * @param length The number of bytes of audio data in {@code buffer}. * @return {@link TextToSpeech#SUCCESS} or {@link TextToSpeech#ERROR}. */ public int completeAudioAvailable(int sampleRateInHz, int audioFormat, int channelCount, byte[] buffer, int offset, int length); /** * The service should call this method when all the synthesized audio for a request has * been passed to {@link #audioAvailable}. * * This method should only be called on the synthesis thread, * while in {@link TextToSpeechService#onSynthesizeText}. * * @return {@link TextToSpeech#SUCCESS} or {@link TextToSpeech#ERROR}. */ public int done(); /** * The service should call this method if the speech synthesis fails. * * This method should only be called on the synthesis thread, * while in {@link TextToSpeechService#onSynthesizeText}. */ public void error(); } No newline at end of file