/*
 * 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;

import android.os.Bundle;

Contains data required by engines to synthesize speech. This data is:
  • The text to synthesize
  • The synthesis locale, represented as a language, country and a variant. The language is an ISO 639-3 letter language code, and the country is an ISO 3166 alpha 3 code. The variant is not specified.
  • The name of the voice requested for this synthesis. May be empty if the client uses TextToSpeech.setLanguage instead of TextToSpeech.setVoice
  • The synthesis speech rate, with 100 being the normal, and higher values representing higher speech rates.
  • The voice pitch, with 100 being the default pitch.
Any additional parameters sent to the text to speech service are passed in uninterpreted, see the params argument in TextToSpeech.speak and TextToSpeech.synthesizeToFile.
/** * Contains data required by engines to synthesize speech. This data is: * <ul> * <li>The text to synthesize</li> * <li>The synthesis locale, represented as a language, country and a variant. * The language is an ISO 639-3 letter language code, and the country is an * ISO 3166 alpha 3 code. The variant is not specified.</li> * <li>The name of the voice requested for this synthesis. May be empty if * the client uses {@link TextToSpeech#setLanguage} instead of * {@link TextToSpeech#setVoice}</li> * <li>The synthesis speech rate, with 100 being the normal, and * higher values representing higher speech rates.</li> * <li>The voice pitch, with 100 being the default pitch.</li> * </ul> * * Any additional parameters sent to the text to speech service are passed in * uninterpreted, see the {@code params} argument in {@link TextToSpeech#speak} * and {@link TextToSpeech#synthesizeToFile}. */
public final class SynthesisRequest { private final CharSequence mText; private final Bundle mParams; private String mVoiceName; private String mLanguage; private String mCountry; private String mVariant; private int mSpeechRate; private int mPitch; private int mCallerUid; public SynthesisRequest(String text, Bundle params) { mText = text; // Makes a copy of params. mParams = new Bundle(params); } public SynthesisRequest(CharSequence text, Bundle params) { mText = text; // Makes a copy of params. mParams = new Bundle(params); }
Gets the text which should be synthesized.
Deprecated:As of API level 21, replaced by getCharSequenceText.
/** * Gets the text which should be synthesized. * @deprecated As of API level 21, replaced by {@link #getCharSequenceText}. */
@Deprecated public String getText() { return mText.toString(); }
Gets the text which should be synthesized.
/** * Gets the text which should be synthesized. */
public CharSequence getCharSequenceText() { return mText; }
Gets the name of the voice to use.
/** * Gets the name of the voice to use. */
public String getVoiceName() { return mVoiceName; }
Gets the ISO 3-letter language code for the language to use.
/** * Gets the ISO 3-letter language code for the language to use. */
public String getLanguage() { return mLanguage; }
Gets the ISO 3-letter country code for the language to use.
/** * Gets the ISO 3-letter country code for the language to use. */
public String getCountry() { return mCountry; }
Gets the language variant to use.
/** * Gets the language variant to use. */
public String getVariant() { return mVariant; }
Gets the speech rate to use. The normal rate is 100.
/** * Gets the speech rate to use. The normal rate is 100. */
public int getSpeechRate() { return mSpeechRate; }
Gets the pitch to use. The normal pitch is 100.
/** * Gets the pitch to use. The normal pitch is 100. */
public int getPitch() { return mPitch; }
Gets the additional params, if any.
/** * Gets the additional params, if any. */
public Bundle getParams() { return mParams; }
Gets the request caller Uid.
/** * Gets the request caller Uid. */
public int getCallerUid() { return mCallerUid; }
Sets the locale for the request.
/** * Sets the locale for the request. */
void setLanguage(String language, String country, String variant) { mLanguage = language; mCountry = country; mVariant = variant; }
Sets the voice name for the request.
/** * Sets the voice name for the request. */
void setVoiceName(String voiceName) { mVoiceName = voiceName; }
Sets the speech rate.
/** * Sets the speech rate. */
void setSpeechRate(int speechRate) { mSpeechRate = speechRate; }
Sets the pitch.
/** * Sets the pitch. */
void setPitch(int pitch) { mPitch = pitch; }
Sets Caller Uid
/** * Sets Caller Uid */
void setCallerUid(int uid) { mCallerUid = uid; } }