describeVoices method
- Engine? engine,
- bool? includeAdditionalLanguageCodes,
- LanguageCode? languageCode,
- String? nextToken,
Returns the list of voices that are available for use when requesting speech synthesis. Each voice speaks a specified language, is either male or female, and is identified by an ID, which is the ASCII version of the voice name.
When synthesizing speech ( SynthesizeSpeech ), you provide
the voice ID for the voice you want from the list of voices returned by
DescribeVoices.
For example, you want your news reader application to read news in a
specific language, but giving a user the option to choose the voice. Using
the DescribeVoices operation you can provide the user with a
list of available voices to select from.
You can optionally specify a language code to filter the available voices.
For example, if you specify en-US, the operation returns a
list of all available US English voices.
This operation requires permissions to perform the
polly:DescribeVoices action.
May throw InvalidNextTokenException. May throw ServiceFailureException.
Parameter engine :
Specifies the engine (standard or neural) used
by Amazon Polly when processing input text for speech synthesis.
Parameter includeAdditionalLanguageCodes :
Boolean value indicating whether to return any bilingual voices that use
the specified language as an additional language. For instance, if you
request all languages that use US English (es-US), and there is an Italian
voice that speaks both Italian (it-IT) and US English, that voice will be
included if you specify yes but not if you specify
no.
Parameter languageCode :
The language identification tag (ISO 639 code for the language name-ISO
3166 country code) for filtering the list of voices returned. If you don't
specify this optional parameter, all available voices are returned.
Parameter nextToken :
An opaque pagination token returned from the previous
DescribeVoices operation. If present, this indicates where to
continue the listing.
Implementation
Future<DescribeVoicesOutput> describeVoices({
Engine? engine,
bool? includeAdditionalLanguageCodes,
LanguageCode? languageCode,
String? nextToken,
}) async {
_s.validateStringLength(
'nextToken',
nextToken,
0,
4096,
);
final $query = <String, List<String>>{
if (engine != null) 'Engine': [engine.toValue()],
if (includeAdditionalLanguageCodes != null)
'IncludeAdditionalLanguageCodes': [
includeAdditionalLanguageCodes.toString()
],
if (languageCode != null) 'LanguageCode': [languageCode.toValue()],
if (nextToken != null) 'NextToken': [nextToken],
};
final response = await _protocol.send(
payload: null,
method: 'GET',
requestUri: '/v1/voices',
queryParams: $query,
exceptionFnMap: _exceptionFns,
);
return DescribeVoicesOutput.fromJson(response);
}