/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file 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.
*/
/*
* Do not modify this file. This file is generated from the polly-2016-06-10.normal.json service model.
*/
using System;
using System.Runtime.ExceptionServices;
using System.Threading;
using System.Threading.Tasks;
using System.Collections.Generic;
using System.Net;
using Amazon.Polly.Model;
using Amazon.Polly.Model.Internal.MarshallTransformations;
using Amazon.Polly.Internal;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
using Amazon.Runtime.Internal.Auth;
using Amazon.Runtime.Internal.Transform;
namespace Amazon.Polly
{
///
/// Implementation for accessing Polly
///
/// Amazon Polly is a web service that makes it easy to synthesize speech from text.
///
///
///
/// The Amazon Polly service provides API operations for synthesizing high-quality speech
/// from plain text and Speech Synthesis Markup Language (SSML), along with managing pronunciations
/// lexicons that enable you to get the best results for your application domain.
///
///
public partial class AmazonPollyClient : AmazonServiceClient, IAmazonPolly
{
private static IServiceMetadata serviceMetadata = new AmazonPollyMetadata();
#region Constructors
///
/// Constructs AmazonPollyClient with the credentials loaded from the application's
/// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
///
/// Example App.config with credentials set.
///
/// <?xml version="1.0" encoding="utf-8" ?>
/// <configuration>
/// <appSettings>
/// <add key="AWSProfileName" value="AWS Default"/>
/// </appSettings>
/// </configuration>
///
///
///
public AmazonPollyClient()
: base(FallbackCredentialsFactory.GetCredentials(), new AmazonPollyConfig()) { }
///
/// Constructs AmazonPollyClient with the credentials loaded from the application's
/// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
///
/// Example App.config with credentials set.
///
/// <?xml version="1.0" encoding="utf-8" ?>
/// <configuration>
/// <appSettings>
/// <add key="AWSProfileName" value="AWS Default"/>
/// </appSettings>
/// </configuration>
///
///
///
/// The region to connect.
public AmazonPollyClient(RegionEndpoint region)
: base(FallbackCredentialsFactory.GetCredentials(), new AmazonPollyConfig{RegionEndpoint = region}) { }
///
/// Constructs AmazonPollyClient with the credentials loaded from the application's
/// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
///
/// Example App.config with credentials set.
///
/// <?xml version="1.0" encoding="utf-8" ?>
/// <configuration>
/// <appSettings>
/// <add key="AWSProfileName" value="AWS Default"/>
/// </appSettings>
/// </configuration>
///
///
///
/// The AmazonPollyClient Configuration Object
public AmazonPollyClient(AmazonPollyConfig config)
: base(FallbackCredentialsFactory.GetCredentials(config), config){}
///
/// Constructs AmazonPollyClient with AWS Credentials
///
/// AWS Credentials
public AmazonPollyClient(AWSCredentials credentials)
: this(credentials, new AmazonPollyConfig())
{
}
///
/// Constructs AmazonPollyClient with AWS Credentials
///
/// AWS Credentials
/// The region to connect.
public AmazonPollyClient(AWSCredentials credentials, RegionEndpoint region)
: this(credentials, new AmazonPollyConfig{RegionEndpoint = region})
{
}
///
/// Constructs AmazonPollyClient with AWS Credentials and an
/// AmazonPollyClient Configuration object.
///
/// AWS Credentials
/// The AmazonPollyClient Configuration Object
public AmazonPollyClient(AWSCredentials credentials, AmazonPollyConfig clientConfig)
: base(credentials, clientConfig)
{
}
///
/// Constructs AmazonPollyClient with AWS Access Key ID and AWS Secret Key
///
/// AWS Access Key ID
/// AWS Secret Access Key
public AmazonPollyClient(string awsAccessKeyId, string awsSecretAccessKey)
: this(awsAccessKeyId, awsSecretAccessKey, new AmazonPollyConfig())
{
}
///
/// Constructs AmazonPollyClient with AWS Access Key ID and AWS Secret Key
///
/// AWS Access Key ID
/// AWS Secret Access Key
/// The region to connect.
public AmazonPollyClient(string awsAccessKeyId, string awsSecretAccessKey, RegionEndpoint region)
: this(awsAccessKeyId, awsSecretAccessKey, new AmazonPollyConfig() {RegionEndpoint=region})
{
}
///
/// Constructs AmazonPollyClient with AWS Access Key ID, AWS Secret Key and an
/// AmazonPollyClient Configuration object.
///
/// AWS Access Key ID
/// AWS Secret Access Key
/// The AmazonPollyClient Configuration Object
public AmazonPollyClient(string awsAccessKeyId, string awsSecretAccessKey, AmazonPollyConfig clientConfig)
: base(awsAccessKeyId, awsSecretAccessKey, clientConfig)
{
}
///
/// Constructs AmazonPollyClient with AWS Access Key ID and AWS Secret Key
///
/// AWS Access Key ID
/// AWS Secret Access Key
/// AWS Session Token
public AmazonPollyClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken)
: this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonPollyConfig())
{
}
///
/// Constructs AmazonPollyClient with AWS Access Key ID and AWS Secret Key
///
/// AWS Access Key ID
/// AWS Secret Access Key
/// AWS Session Token
/// The region to connect.
public AmazonPollyClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, RegionEndpoint region)
: this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonPollyConfig{RegionEndpoint = region})
{
}
///
/// Constructs AmazonPollyClient with AWS Access Key ID, AWS Secret Key and an
/// AmazonPollyClient Configuration object.
///
/// AWS Access Key ID
/// AWS Secret Access Key
/// AWS Session Token
/// The AmazonPollyClient Configuration Object
public AmazonPollyClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, AmazonPollyConfig clientConfig)
: base(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, clientConfig)
{
}
#endregion
#if AWS_ASYNC_ENUMERABLES_API
private IPollyPaginatorFactory _paginators;
///
/// Paginators for the service
///
public IPollyPaginatorFactory Paginators
{
get
{
if (this._paginators == null)
{
this._paginators = new PollyPaginatorFactory(this);
}
return this._paginators;
}
}
#endif
#region Overrides
///
/// Creates the signer for the service.
///
protected override AbstractAWSSigner CreateSigner()
{
return new AWS4Signer();
}
///
/// Customizes the runtime pipeline.
///
/// Runtime pipeline for the current client.
protected override void CustomizeRuntimePipeline(RuntimePipeline pipeline)
{
pipeline.RemoveHandler();
pipeline.AddHandlerAfter(new AmazonPollyEndpointResolver());
}
///
/// Capture metadata for the service.
///
protected override IServiceMetadata ServiceMetadata
{
get
{
return serviceMetadata;
}
}
#endregion
#region Dispose
///
/// Disposes the service client.
///
protected override void Dispose(bool disposing)
{
base.Dispose(disposing);
}
#endregion
#region DeleteLexicon
internal virtual DeleteLexiconResponse DeleteLexicon(DeleteLexiconRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteLexiconRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteLexiconResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Deletes the specified pronunciation lexicon stored in an Amazon Web Services Region.
/// A lexicon which has been deleted is not available for speech synthesis, nor is it
/// possible to retrieve it using either the GetLexicon
or ListLexicon
/// APIs.
///
///
///
/// For more information, see Managing
/// Lexicons.
///
///
/// Container for the necessary parameters to execute the DeleteLexicon service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteLexicon service method, as returned by Polly.
///
/// Amazon Polly can't find the specified lexicon. This could be caused by a lexicon that
/// is missing, its name is misspelled or specifying a lexicon that is in a different
/// region.
///
///
///
/// Verify that the lexicon exists, is in the region (see ListLexicons) and that
/// you spelled its name is spelled correctly. Then try again.
///
///
///
/// An unknown condition has caused a service failure.
///
/// REST API Reference for DeleteLexicon Operation
public virtual Task DeleteLexiconAsync(DeleteLexiconRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteLexiconRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteLexiconResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DescribeVoices
internal virtual DescribeVoicesResponse DescribeVoices(DescribeVoicesRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeVoicesRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeVoicesResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// 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.
///
///
/// Container for the necessary parameters to execute the DescribeVoices service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeVoices service method, as returned by Polly.
///
/// The NextToken is invalid. Verify that it's spelled correctly, and then try again.
///
///
/// An unknown condition has caused a service failure.
///
/// REST API Reference for DescribeVoices Operation
public virtual Task DescribeVoicesAsync(DescribeVoicesRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeVoicesRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeVoicesResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region GetLexicon
internal virtual GetLexiconResponse GetLexicon(GetLexiconRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = GetLexiconRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetLexiconResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Returns the content of the specified pronunciation lexicon stored in an Amazon Web
/// Services Region. For more information, see Managing
/// Lexicons.
///
/// Container for the necessary parameters to execute the GetLexicon service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetLexicon service method, as returned by Polly.
///
/// Amazon Polly can't find the specified lexicon. This could be caused by a lexicon that
/// is missing, its name is misspelled or specifying a lexicon that is in a different
/// region.
///
///
///
/// Verify that the lexicon exists, is in the region (see ListLexicons) and that
/// you spelled its name is spelled correctly. Then try again.
///
///
///
/// An unknown condition has caused a service failure.
///
/// REST API Reference for GetLexicon Operation
public virtual Task GetLexiconAsync(GetLexiconRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = GetLexiconRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetLexiconResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region GetSpeechSynthesisTask
internal virtual GetSpeechSynthesisTaskResponse GetSpeechSynthesisTask(GetSpeechSynthesisTaskRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = GetSpeechSynthesisTaskRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetSpeechSynthesisTaskResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Retrieves a specific SpeechSynthesisTask object based on its TaskID. This object contains
/// information about the given speech synthesis task, including the status of the task,
/// and a link to the S3 bucket containing the output of the task.
///
/// Container for the necessary parameters to execute the GetSpeechSynthesisTask service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetSpeechSynthesisTask service method, as returned by Polly.
///
/// The provided Task ID is not valid. Please provide a valid Task ID and try again.
///
///
/// An unknown condition has caused a service failure.
///
///
/// The Speech Synthesis task with requested Task ID cannot be found.
///
/// REST API Reference for GetSpeechSynthesisTask Operation
public virtual Task GetSpeechSynthesisTaskAsync(GetSpeechSynthesisTaskRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = GetSpeechSynthesisTaskRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetSpeechSynthesisTaskResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region ListLexicons
internal virtual ListLexiconsResponse ListLexicons(ListLexiconsRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = ListLexiconsRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListLexiconsResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Returns a list of pronunciation lexicons stored in an Amazon Web Services Region.
/// For more information, see Managing
/// Lexicons.
///
/// Container for the necessary parameters to execute the ListLexicons service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListLexicons service method, as returned by Polly.
///
/// The NextToken is invalid. Verify that it's spelled correctly, and then try again.
///
///
/// An unknown condition has caused a service failure.
///
/// REST API Reference for ListLexicons Operation
public virtual Task ListLexiconsAsync(ListLexiconsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = ListLexiconsRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListLexiconsResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region ListSpeechSynthesisTasks
internal virtual ListSpeechSynthesisTasksResponse ListSpeechSynthesisTasks(ListSpeechSynthesisTasksRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = ListSpeechSynthesisTasksRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListSpeechSynthesisTasksResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Returns a list of SpeechSynthesisTask objects ordered by their creation date. This
/// operation can filter the tasks by their status, for example, allowing users to list
/// only tasks that are completed.
///
/// Container for the necessary parameters to execute the ListSpeechSynthesisTasks service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListSpeechSynthesisTasks service method, as returned by Polly.
///
/// The NextToken is invalid. Verify that it's spelled correctly, and then try again.
///
///
/// An unknown condition has caused a service failure.
///
/// REST API Reference for ListSpeechSynthesisTasks Operation
public virtual Task ListSpeechSynthesisTasksAsync(ListSpeechSynthesisTasksRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = ListSpeechSynthesisTasksRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListSpeechSynthesisTasksResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region PutLexicon
internal virtual PutLexiconResponse PutLexicon(PutLexiconRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = PutLexiconRequestMarshaller.Instance;
options.ResponseUnmarshaller = PutLexiconResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Stores a pronunciation lexicon in an Amazon Web Services Region. If a lexicon with
/// the same name already exists in the region, it is overwritten by the new lexicon.
/// Lexicon operations have eventual consistency, therefore, it might take some time before
/// the lexicon is available to the SynthesizeSpeech operation.
///
///
///
/// For more information, see Managing
/// Lexicons.
///
///
/// Container for the necessary parameters to execute the PutLexicon service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the PutLexicon service method, as returned by Polly.
///
/// Amazon Polly can't find the specified lexicon. Verify that the lexicon's name is spelled
/// correctly, and then try again.
///
///
/// The maximum size of the specified lexicon would be exceeded by this operation.
///
///
/// The maximum size of the lexeme would be exceeded by this operation.
///
///
/// The maximum number of lexicons would be exceeded by this operation.
///
///
/// An unknown condition has caused a service failure.
///
///
/// The alphabet specified by the lexicon is not a supported alphabet. Valid values are
/// x-sampa
and ipa
.
///
///
/// The language specified in the lexicon is unsupported. For a list of supported languages,
/// see Lexicon
/// Attributes.
///
/// REST API Reference for PutLexicon Operation
public virtual Task PutLexiconAsync(PutLexiconRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = PutLexiconRequestMarshaller.Instance;
options.ResponseUnmarshaller = PutLexiconResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region StartSpeechSynthesisTask
internal virtual StartSpeechSynthesisTaskResponse StartSpeechSynthesisTask(StartSpeechSynthesisTaskRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = StartSpeechSynthesisTaskRequestMarshaller.Instance;
options.ResponseUnmarshaller = StartSpeechSynthesisTaskResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Allows the creation of an asynchronous synthesis task, by starting a new SpeechSynthesisTask
.
/// This operation requires all the standard information needed for speech synthesis,
/// plus the name of an Amazon S3 bucket for the service to store the output of the synthesis
/// task and two optional parameters (OutputS3KeyPrefix
and SnsTopicArn
).
/// Once the synthesis task is created, this operation will return a SpeechSynthesisTask
/// object, which will include an identifier of this task as well as the current status.
/// The SpeechSynthesisTask
object is available for 72 hours after starting
/// the asynchronous synthesis task.
///
/// Container for the necessary parameters to execute the StartSpeechSynthesisTask service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the StartSpeechSynthesisTask service method, as returned by Polly.
///
/// This engine is not compatible with the voice that you have designated. Choose a new
/// voice that is compatible with the engine or change the engine and restart the operation.
///
///
/// The provided Amazon S3 bucket name is invalid. Please check your input with S3 bucket
/// naming requirements and try again.
///
///
/// The provided Amazon S3 key prefix is invalid. Please provide a valid S3 object key
/// name.
///
///
/// The specified sample rate is not valid.
///
///
/// The provided SNS topic ARN is invalid. Please provide a valid SNS topic ARN and try
/// again.
///
///
/// The SSML you provided is invalid. Verify the SSML syntax, spelling of tags and values,
/// and then try again.
///
///
/// The language specified is not currently supported by Amazon Polly in this capacity.
///
///
/// Amazon Polly can't find the specified lexicon. This could be caused by a lexicon that
/// is missing, its name is misspelled or specifying a lexicon that is in a different
/// region.
///
///
///
/// Verify that the lexicon exists, is in the region (see ListLexicons) and that
/// you spelled its name is spelled correctly. Then try again.
///
///
///
/// Speech marks are not supported for the OutputFormat
selected. Speech
/// marks are only available for content in json
format.
///
///
/// An unknown condition has caused a service failure.
///
///
/// SSML speech marks are not supported for plain text-type input.
///
///
/// The value of the "Text" parameter is longer than the accepted limits. For the SynthesizeSpeech
/// API, the limit for input text is a maximum of 6000 characters total, of which no more
/// than 3000 can be billed characters. For the StartSpeechSynthesisTask
/// API, the maximum is 200,000 characters, of which no more than 100,000 can be billed
/// characters. SSML tags are not counted as billed characters.
///
/// REST API Reference for StartSpeechSynthesisTask Operation
public virtual Task StartSpeechSynthesisTaskAsync(StartSpeechSynthesisTaskRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = StartSpeechSynthesisTaskRequestMarshaller.Instance;
options.ResponseUnmarshaller = StartSpeechSynthesisTaskResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region SynthesizeSpeech
internal virtual SynthesizeSpeechResponse SynthesizeSpeech(SynthesizeSpeechRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = SynthesizeSpeechRequestMarshaller.Instance;
options.ResponseUnmarshaller = SynthesizeSpeechResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Synthesizes UTF-8 input, plain text or SSML, to a stream of bytes. SSML input must
/// be valid, well-formed SSML. Some alphabets might not be available with all the voices
/// (for example, Cyrillic might not be read at all by English voices) unless phoneme
/// mapping is used. For more information, see How
/// it Works.
///
/// Container for the necessary parameters to execute the SynthesizeSpeech service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the SynthesizeSpeech service method, as returned by Polly.
///
/// This engine is not compatible with the voice that you have designated. Choose a new
/// voice that is compatible with the engine or change the engine and restart the operation.
///
///
/// The specified sample rate is not valid.
///
///
/// The SSML you provided is invalid. Verify the SSML syntax, spelling of tags and values,
/// and then try again.
///
///
/// The language specified is not currently supported by Amazon Polly in this capacity.
///
///
/// Amazon Polly can't find the specified lexicon. This could be caused by a lexicon that
/// is missing, its name is misspelled or specifying a lexicon that is in a different
/// region.
///
///
///
/// Verify that the lexicon exists, is in the region (see ListLexicons) and that
/// you spelled its name is spelled correctly. Then try again.
///
///
///
/// Speech marks are not supported for the OutputFormat
selected. Speech
/// marks are only available for content in json
format.
///
///
/// An unknown condition has caused a service failure.
///
///
/// SSML speech marks are not supported for plain text-type input.
///
///
/// The value of the "Text" parameter is longer than the accepted limits. For the SynthesizeSpeech
/// API, the limit for input text is a maximum of 6000 characters total, of which no more
/// than 3000 can be billed characters. For the StartSpeechSynthesisTask
/// API, the maximum is 200,000 characters, of which no more than 100,000 can be billed
/// characters. SSML tags are not counted as billed characters.
///
/// REST API Reference for SynthesizeSpeech Operation
public virtual Task SynthesizeSpeechAsync(SynthesizeSpeechRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = SynthesizeSpeechRequestMarshaller.Instance;
options.ResponseUnmarshaller = SynthesizeSpeechResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
}
}