Android APIs
public class

Voice

extends Object
implements Parcelable
java.lang.Object
   ↳ android.speech.tts.Voice

Class Overview

Characteristics and features of a Text-To-Speech Voice. Each TTS Engine can expose multiple voices for each locale, with different set of features.

Summary

Constants
int LATENCY_HIGH Network based expected synthesizer latency (~200ms)
int LATENCY_LOW Low expected synthesizer latency (~20ms)
int LATENCY_NORMAL Normal expected synthesizer latency (~50ms)
int LATENCY_VERY_HIGH Very slow network based expected synthesizer latency (> 200ms)
int LATENCY_VERY_LOW Very low expected synthesizer latency (< 20ms)
int QUALITY_HIGH High, human-like quality of speech synthesis
int QUALITY_LOW Low, not human-like quality of speech synthesis
int QUALITY_NORMAL Normal quality of speech synthesis
int QUALITY_VERY_HIGH Very high, almost human-indistinguishable quality of speech synthesis
int QUALITY_VERY_LOW Very low, but still intelligible quality of speech synthesis
[Expand]
Inherited Constants
From interface android.os.Parcelable
Fields
public static final Creator<Voice> CREATOR
Public Constructors
Voice(String name, Locale locale, int quality, int latency, boolean requiresNetworkConnection, Set<String> features)
Public Methods
int describeContents()
Describe the kinds of special objects contained in this Parcelable's marshalled representation.
boolean equals(Object obj)
Compares this instance with the specified object and indicates if they are equal.
Set<String> getFeatures()
Returns the set of features it supports for a given voice.
int getLatency()
Locale getLocale()
String getName()
int getQuality()
int hashCode()
Returns an integer hash code for this object.
boolean isNetworkConnectionRequired()
String toString()
Returns a string containing a concise, human-readable description of this object.
void writeToParcel(Parcel dest, int flags)
Flatten this object in to a Parcel.
[Expand]
Inherited Methods
From class java.lang.Object
From interface android.os.Parcelable

Constants

public static final int LATENCY_HIGH

Added in API level 21

Network based expected synthesizer latency (~200ms)

Constant Value: 400 (0x00000190)

public static final int LATENCY_LOW

Added in API level 21

Low expected synthesizer latency (~20ms)

Constant Value: 200 (0x000000c8)

public static final int LATENCY_NORMAL

Added in API level 21

Normal expected synthesizer latency (~50ms)

Constant Value: 300 (0x0000012c)

public static final int LATENCY_VERY_HIGH

Added in API level 21

Very slow network based expected synthesizer latency (> 200ms)

Constant Value: 500 (0x000001f4)

public static final int LATENCY_VERY_LOW

Added in API level 21

Very low expected synthesizer latency (< 20ms)

Constant Value: 100 (0x00000064)

public static final int QUALITY_HIGH

Added in API level 21

High, human-like quality of speech synthesis

Constant Value: 400 (0x00000190)

public static final int QUALITY_LOW

Added in API level 21

Low, not human-like quality of speech synthesis

Constant Value: 200 (0x000000c8)

public static final int QUALITY_NORMAL

Added in API level 21

Normal quality of speech synthesis

Constant Value: 300 (0x0000012c)

public static final int QUALITY_VERY_HIGH

Added in API level 21

Very high, almost human-indistinguishable quality of speech synthesis

Constant Value: 500 (0x000001f4)

public static final int QUALITY_VERY_LOW

Added in API level 21

Very low, but still intelligible quality of speech synthesis

Constant Value: 100 (0x00000064)

Fields

public static final Creator<Voice> CREATOR

Added in API level 21

Public Constructors

public Voice (String name, Locale locale, int quality, int latency, boolean requiresNetworkConnection, Set<String> features)

Added in API level 21

Public Methods

public int describeContents ()

Added in API level 21

Describe the kinds of special objects contained in this Parcelable's marshalled representation.

Returns
  • a bitmask indicating the set of special object types marshalled by the Parcelable.

public boolean equals (Object obj)

Added in API level 21

Compares this instance with the specified object and indicates if they are equal. In order to be equal, o must represent the same object as this instance using a class-specific comparison. The general contract is that this comparison should be reflexive, symmetric, and transitive. Also, no object reference other than null is equal to null.

The default implementation returns true only if this == o. See Writing a correct equals method if you intend implementing your own equals method.

The general contract for the equals and hashCode() methods is that if equals returns true for any two objects, then hashCode() must return the same value for these objects. This means that subclasses of Object usually override either both methods or neither of them.

Parameters
obj the object to compare this instance with.
Returns
  • true if the specified object is equal to this Object; false otherwise.

public Set<String> getFeatures ()

Added in API level 21

Returns the set of features it supports for a given voice. Features can either be framework defined, e.g. KEY_FEATURE_NETWORK_TIMEOUT_MS or engine specific. Engine specific keys must be prefixed by the name of the engine they are intended for. These keys can be used as parameters to speak(String, int, java.util.HashMap) and synthesizeToFile(String, java.util.HashMap, String). Features values are strings and their values must met restrictions described in their documentation.

Returns
  • Set instance. May return null on error.

public int getLatency ()

Added in API level 21

Returns
  • The voice's latency (lower is better)

public Locale getLocale ()

Added in API level 21

Returns
  • The voice's locale

public String getName ()

Added in API level 21

Returns
  • Unique voice name.

public int getQuality ()

Added in API level 21

Returns
  • The voice's quality (higher is better)

public int hashCode ()

Added in API level 21

Returns an integer hash code for this object. By contract, any two objects for which equals(Object) returns true must return the same hash code value. This means that subclasses of Object usually override both methods or neither method.

Note that hash values must not change over time unless information used in equals comparisons also changes.

See Writing a correct hashCode method if you intend implementing your own hashCode method.

Returns
  • this object's hash code.

public boolean isNetworkConnectionRequired ()

Added in API level 21

Returns
  • Does the Voice require a network connection to work.

public String toString ()

Added in API level 21

Returns a string containing a concise, human-readable description of this object. Subclasses are encouraged to override this method and provide an implementation that takes into account the object's type and data. The default implementation is equivalent to the following expression:

   getClass().getName() + '@' + Integer.toHexString(hashCode())

See Writing a useful toString method if you intend implementing your own toString method.

Returns
  • a printable representation of this object.

public void writeToParcel (Parcel dest, int flags)

Added in API level 21

Flatten this object in to a Parcel.

Parameters
dest The Parcel in which the object should be written.
flags Additional flags about how the object should be written. May be 0 or PARCELABLE_WRITE_RETURN_VALUE.