polly

package
v0.24.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 22, 2020 License: Apache-2.0 Imports: 10 Imported by: 31

Documentation

Overview

Package polly provides the client and types for making API requests to Amazon 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.

See https://docs.aws.amazon.com/goto/WebAPI/polly-2016-06-10 for more information on this service.

See polly package documentation for more information. https://docs.aws.amazon.com/sdk-for-go/api/service/polly/

Using the Client

To use Amazon Polly with the SDK use the New function to create a new service client. With that client you can make API requests to the service. These clients are safe to use concurrently.

See the SDK's documentation for more information on how to use the SDK. https://docs.aws.amazon.com/sdk-for-go/api/

See aws.Config documentation for more information on configuring SDK clients. https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config

See the Amazon Polly client for more information on creating client for this service. https://docs.aws.amazon.com/sdk-for-go/api/service/polly/#New

Index

Examples

Constants

View Source
const (
	ServiceName = "Amazon Polly" // Service's name
	ServiceID   = "Polly"        // Service's identifier
	EndpointsID = "polly"        // Service's Endpoint identifier
)
View Source
const (

	// ErrCodeEngineNotSupportedException for service response error code
	// "EngineNotSupportedException".
	//
	// 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.
	ErrCodeEngineNotSupportedException = "EngineNotSupportedException"

	// ErrCodeInvalidLexiconException for service response error code
	// "InvalidLexiconException".
	//
	// Amazon Polly can't find the specified lexicon. Verify that the lexicon's
	// name is spelled correctly, and then try again.
	ErrCodeInvalidLexiconException = "InvalidLexiconException"

	// ErrCodeInvalidNextTokenException for service response error code
	// "InvalidNextTokenException".
	//
	// The NextToken is invalid. Verify that it's spelled correctly, and then try
	// again.
	ErrCodeInvalidNextTokenException = "InvalidNextTokenException"

	// ErrCodeInvalidS3BucketException for service response error code
	// "InvalidS3BucketException".
	//
	// The provided Amazon S3 bucket name is invalid. Please check your input with
	// S3 bucket naming requirements and try again.
	ErrCodeInvalidS3BucketException = "InvalidS3BucketException"

	// ErrCodeInvalidS3KeyException for service response error code
	// "InvalidS3KeyException".
	//
	// The provided Amazon S3 key prefix is invalid. Please provide a valid S3 object
	// key name.
	ErrCodeInvalidS3KeyException = "InvalidS3KeyException"

	// ErrCodeInvalidSampleRateException for service response error code
	// "InvalidSampleRateException".
	//
	// The specified sample rate is not valid.
	ErrCodeInvalidSampleRateException = "InvalidSampleRateException"

	// ErrCodeInvalidSnsTopicArnException for service response error code
	// "InvalidSnsTopicArnException".
	//
	// The provided SNS topic ARN is invalid. Please provide a valid SNS topic ARN
	// and try again.
	ErrCodeInvalidSnsTopicArnException = "InvalidSnsTopicArnException"

	// ErrCodeInvalidSsmlException for service response error code
	// "InvalidSsmlException".
	//
	// The SSML you provided is invalid. Verify the SSML syntax, spelling of tags
	// and values, and then try again.
	ErrCodeInvalidSsmlException = "InvalidSsmlException"

	// ErrCodeInvalidTaskIdException for service response error code
	// "InvalidTaskIdException".
	//
	// The provided Task ID is not valid. Please provide a valid Task ID and try
	// again.
	ErrCodeInvalidTaskIdException = "InvalidTaskIdException"

	// ErrCodeLanguageNotSupportedException for service response error code
	// "LanguageNotSupportedException".
	//
	// The language specified is not currently supported by Amazon Polly in this
	// capacity.
	ErrCodeLanguageNotSupportedException = "LanguageNotSupportedException"

	// ErrCodeLexiconNotFoundException for service response error code
	// "LexiconNotFoundException".
	//
	// 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.
	ErrCodeLexiconNotFoundException = "LexiconNotFoundException"

	// ErrCodeLexiconSizeExceededException for service response error code
	// "LexiconSizeExceededException".
	//
	// The maximum size of the specified lexicon would be exceeded by this operation.
	ErrCodeLexiconSizeExceededException = "LexiconSizeExceededException"

	// ErrCodeMarksNotSupportedForFormatException for service response error code
	// "MarksNotSupportedForFormatException".
	//
	// Speech marks are not supported for the OutputFormat selected. Speech marks
	// are only available for content in json format.
	ErrCodeMarksNotSupportedForFormatException = "MarksNotSupportedForFormatException"

	// ErrCodeMaxLexemeLengthExceededException for service response error code
	// "MaxLexemeLengthExceededException".
	//
	// The maximum size of the lexeme would be exceeded by this operation.
	ErrCodeMaxLexemeLengthExceededException = "MaxLexemeLengthExceededException"

	// ErrCodeMaxLexiconsNumberExceededException for service response error code
	// "MaxLexiconsNumberExceededException".
	//
	// The maximum number of lexicons would be exceeded by this operation.
	ErrCodeMaxLexiconsNumberExceededException = "MaxLexiconsNumberExceededException"

	// ErrCodeServiceFailureException for service response error code
	// "ServiceFailureException".
	//
	// An unknown condition has caused a service failure.
	ErrCodeServiceFailureException = "ServiceFailureException"

	// ErrCodeSsmlMarksNotSupportedForTextTypeException for service response error code
	// "SsmlMarksNotSupportedForTextTypeException".
	//
	// SSML speech marks are not supported for plain text-type input.
	ErrCodeSsmlMarksNotSupportedForTextTypeException = "SsmlMarksNotSupportedForTextTypeException"

	// ErrCodeSynthesisTaskNotFoundException for service response error code
	// "SynthesisTaskNotFoundException".
	//
	// The Speech Synthesis task with requested Task ID cannot be found.
	ErrCodeSynthesisTaskNotFoundException = "SynthesisTaskNotFoundException"

	// ErrCodeTextLengthExceededException for service response error code
	// "TextLengthExceededException".
	//
	// 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.
	ErrCodeTextLengthExceededException = "TextLengthExceededException"

	// ErrCodeUnsupportedPlsAlphabetException for service response error code
	// "UnsupportedPlsAlphabetException".
	//
	// The alphabet specified by the lexicon is not a supported alphabet. Valid
	// values are x-sampa and ipa.
	ErrCodeUnsupportedPlsAlphabetException = "UnsupportedPlsAlphabetException"

	// ErrCodeUnsupportedPlsLanguageException for service response error code
	// "UnsupportedPlsLanguageException".
	//
	// The language specified in the lexicon is unsupported. For a list of supported
	// languages, see Lexicon Attributes (https://docs.aws.amazon.com/polly/latest/dg/API_LexiconAttributes.html).
	ErrCodeUnsupportedPlsLanguageException = "UnsupportedPlsLanguageException"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Client added in v0.9.0

type Client struct {
	*aws.Client
}

Client provides the API operation methods for making requests to Amazon Polly. See this package's package overview docs for details on the service.

The client's methods are safe to use concurrently. It is not safe to modify mutate any of the struct's properties though.

func New

func New(config aws.Config) *Client

New creates a new instance of the client from the provided Config.

Example:

// Create a client from just a config.
svc := polly.New(myConfig)

func (*Client) DeleteLexiconRequest added in v0.9.0

func (c *Client) DeleteLexiconRequest(input *DeleteLexiconInput) DeleteLexiconRequest

DeleteLexiconRequest returns a request value for making API operation for Amazon Polly.

Deletes the specified pronunciation lexicon stored in an AWS 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 (https://docs.aws.amazon.com/polly/latest/dg/managing-lexicons.html).

// Example sending a request using DeleteLexiconRequest.
req := client.DeleteLexiconRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/polly-2016-06-10/DeleteLexicon

Example (Shared00)

To delete a lexicon

Deletes a specified pronunciation lexicon stored in an AWS Region.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/polly"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := polly.New(cfg)
	input := &polly.DeleteLexiconInput{
		Name: aws.String("example"),
	}

	req := svc.DeleteLexiconRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case polly.ErrCodeLexiconNotFoundException:
				fmt.Println(polly.ErrCodeLexiconNotFoundException, aerr.Error())
			case polly.ErrCodeServiceFailureException:
				fmt.Println(polly.ErrCodeServiceFailureException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) DescribeVoicesRequest added in v0.9.0

func (c *Client) DescribeVoicesRequest(input *DescribeVoicesInput) DescribeVoicesRequest

DescribeVoicesRequest returns a request value for making API operation for Amazon Polly.

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.

// Example sending a request using DescribeVoicesRequest.
req := client.DescribeVoicesRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/polly-2016-06-10/DescribeVoices

Example (Shared00)

To describe available voices

Returns the list of voices that are available for use when requesting speech synthesis. Displayed languages are those within the specified language code. If no language code is specified, voices for all available languages are displayed.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/polly"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := polly.New(cfg)
	input := &polly.DescribeVoicesInput{
		LanguageCode: polly.LanguageCodeEnGb,
	}

	req := svc.DescribeVoicesRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case polly.ErrCodeInvalidNextTokenException:
				fmt.Println(polly.ErrCodeInvalidNextTokenException, aerr.Error())
			case polly.ErrCodeServiceFailureException:
				fmt.Println(polly.ErrCodeServiceFailureException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) GetLexiconRequest added in v0.9.0

func (c *Client) GetLexiconRequest(input *GetLexiconInput) GetLexiconRequest

GetLexiconRequest returns a request value for making API operation for Amazon Polly.

Returns the content of the specified pronunciation lexicon stored in an AWS Region. For more information, see Managing Lexicons (https://docs.aws.amazon.com/polly/latest/dg/managing-lexicons.html).

// Example sending a request using GetLexiconRequest.
req := client.GetLexiconRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/polly-2016-06-10/GetLexicon

Example (Shared00)

To retrieve a lexicon

Returns the content of the specified pronunciation lexicon stored in an AWS Region.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/polly"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := polly.New(cfg)
	input := &polly.GetLexiconInput{
		Name: aws.String(""),
	}

	req := svc.GetLexiconRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case polly.ErrCodeLexiconNotFoundException:
				fmt.Println(polly.ErrCodeLexiconNotFoundException, aerr.Error())
			case polly.ErrCodeServiceFailureException:
				fmt.Println(polly.ErrCodeServiceFailureException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) GetSpeechSynthesisTaskRequest added in v0.9.0

func (c *Client) GetSpeechSynthesisTaskRequest(input *GetSpeechSynthesisTaskInput) GetSpeechSynthesisTaskRequest

GetSpeechSynthesisTaskRequest returns a request value for making API operation for Amazon Polly.

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.

// Example sending a request using GetSpeechSynthesisTaskRequest.
req := client.GetSpeechSynthesisTaskRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/polly-2016-06-10/GetSpeechSynthesisTask

func (*Client) ListLexiconsRequest added in v0.9.0

func (c *Client) ListLexiconsRequest(input *ListLexiconsInput) ListLexiconsRequest

ListLexiconsRequest returns a request value for making API operation for Amazon Polly.

Returns a list of pronunciation lexicons stored in an AWS Region. For more information, see Managing Lexicons (https://docs.aws.amazon.com/polly/latest/dg/managing-lexicons.html).

// Example sending a request using ListLexiconsRequest.
req := client.ListLexiconsRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/polly-2016-06-10/ListLexicons

Example (Shared00)

To list all lexicons in a region

Returns a list of pronunciation lexicons stored in an AWS Region.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/polly"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := polly.New(cfg)
	input := &polly.ListLexiconsInput{}

	req := svc.ListLexiconsRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case polly.ErrCodeInvalidNextTokenException:
				fmt.Println(polly.ErrCodeInvalidNextTokenException, aerr.Error())
			case polly.ErrCodeServiceFailureException:
				fmt.Println(polly.ErrCodeServiceFailureException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) ListSpeechSynthesisTasksRequest added in v0.9.0

func (c *Client) ListSpeechSynthesisTasksRequest(input *ListSpeechSynthesisTasksInput) ListSpeechSynthesisTasksRequest

ListSpeechSynthesisTasksRequest returns a request value for making API operation for Amazon Polly.

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.

// Example sending a request using ListSpeechSynthesisTasksRequest.
req := client.ListSpeechSynthesisTasksRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/polly-2016-06-10/ListSpeechSynthesisTasks

func (*Client) PutLexiconRequest added in v0.9.0

func (c *Client) PutLexiconRequest(input *PutLexiconInput) PutLexiconRequest

PutLexiconRequest returns a request value for making API operation for Amazon Polly.

Stores a pronunciation lexicon in an AWS 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 (https://docs.aws.amazon.com/polly/latest/dg/managing-lexicons.html).

// Example sending a request using PutLexiconRequest.
req := client.PutLexiconRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/polly-2016-06-10/PutLexicon

Example (Shared00)

To save a lexicon

Stores a pronunciation lexicon in an AWS Region.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/polly"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := polly.New(cfg)
	input := &polly.PutLexiconInput{
		Content: aws.String("file://example.pls"),
		Name:    aws.String("W3C"),
	}

	req := svc.PutLexiconRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case polly.ErrCodeInvalidLexiconException:
				fmt.Println(polly.ErrCodeInvalidLexiconException, aerr.Error())
			case polly.ErrCodeUnsupportedPlsAlphabetException:
				fmt.Println(polly.ErrCodeUnsupportedPlsAlphabetException, aerr.Error())
			case polly.ErrCodeUnsupportedPlsLanguageException:
				fmt.Println(polly.ErrCodeUnsupportedPlsLanguageException, aerr.Error())
			case polly.ErrCodeLexiconSizeExceededException:
				fmt.Println(polly.ErrCodeLexiconSizeExceededException, aerr.Error())
			case polly.ErrCodeMaxLexemeLengthExceededException:
				fmt.Println(polly.ErrCodeMaxLexemeLengthExceededException, aerr.Error())
			case polly.ErrCodeMaxLexiconsNumberExceededException:
				fmt.Println(polly.ErrCodeMaxLexiconsNumberExceededException, aerr.Error())
			case polly.ErrCodeServiceFailureException:
				fmt.Println(polly.ErrCodeServiceFailureException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) StartSpeechSynthesisTaskRequest added in v0.9.0

func (c *Client) StartSpeechSynthesisTaskRequest(input *StartSpeechSynthesisTaskInput) StartSpeechSynthesisTaskRequest

StartSpeechSynthesisTaskRequest returns a request value for making API operation for Amazon Polly.

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.

// Example sending a request using StartSpeechSynthesisTaskRequest.
req := client.StartSpeechSynthesisTaskRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/polly-2016-06-10/StartSpeechSynthesisTask

func (*Client) SynthesizeSpeechRequest added in v0.9.0

func (c *Client) SynthesizeSpeechRequest(input *SynthesizeSpeechInput) SynthesizeSpeechRequest

SynthesizeSpeechRequest returns a request value for making API operation for Amazon Polly.

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 (https://docs.aws.amazon.com/polly/latest/dg/how-text-to-speech-works.html).

// Example sending a request using SynthesizeSpeechRequest.
req := client.SynthesizeSpeechRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/polly-2016-06-10/SynthesizeSpeech

Example (Shared00)

To synthesize speech

Synthesizes plain text or SSML into a file of human-like speech.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/polly"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := polly.New(cfg)
	input := &polly.SynthesizeSpeechInput{
		LexiconNames: []string{
			"example",
		},
		OutputFormat: polly.OutputFormatMp3,
		SampleRate:   aws.String("8000"),
		Text:         aws.String("All Gaul is divided into three parts"),
		TextType:     polly.TextTypeText,
		VoiceId:      polly.VoiceIdJoanna,
	}

	req := svc.SynthesizeSpeechRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case polly.ErrCodeTextLengthExceededException:
				fmt.Println(polly.ErrCodeTextLengthExceededException, aerr.Error())
			case polly.ErrCodeInvalidSampleRateException:
				fmt.Println(polly.ErrCodeInvalidSampleRateException, aerr.Error())
			case polly.ErrCodeInvalidSsmlException:
				fmt.Println(polly.ErrCodeInvalidSsmlException, aerr.Error())
			case polly.ErrCodeLexiconNotFoundException:
				fmt.Println(polly.ErrCodeLexiconNotFoundException, aerr.Error())
			case polly.ErrCodeServiceFailureException:
				fmt.Println(polly.ErrCodeServiceFailureException, aerr.Error())
			case polly.ErrCodeMarksNotSupportedForFormatException:
				fmt.Println(polly.ErrCodeMarksNotSupportedForFormatException, aerr.Error())
			case polly.ErrCodeSsmlMarksNotSupportedForTextTypeException:
				fmt.Println(polly.ErrCodeSsmlMarksNotSupportedForTextTypeException, aerr.Error())
			case polly.ErrCodeLanguageNotSupportedException:
				fmt.Println(polly.ErrCodeLanguageNotSupportedException, aerr.Error())
			case polly.ErrCodeEngineNotSupportedException:
				fmt.Println(polly.ErrCodeEngineNotSupportedException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

type DeleteLexiconInput

type DeleteLexiconInput struct {

	// The name of the lexicon to delete. Must be an existing lexicon in the region.
	//
	// Name is a required field
	Name *string `location:"uri" locationName:"LexiconName" type:"string" required:"true" sensitive:"true"`
	// contains filtered or unexported fields
}

func (DeleteLexiconInput) MarshalFields added in v0.3.0

func (s DeleteLexiconInput) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (DeleteLexiconInput) String

func (s DeleteLexiconInput) String() string

String returns the string representation

func (*DeleteLexiconInput) Validate

func (s *DeleteLexiconInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteLexiconOutput

type DeleteLexiconOutput struct {
	// contains filtered or unexported fields
}

func (DeleteLexiconOutput) MarshalFields added in v0.3.0

func (s DeleteLexiconOutput) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (DeleteLexiconOutput) String

func (s DeleteLexiconOutput) String() string

String returns the string representation

type DeleteLexiconRequest

type DeleteLexiconRequest struct {
	*aws.Request
	Input *DeleteLexiconInput
	Copy  func(*DeleteLexiconInput) DeleteLexiconRequest
}

DeleteLexiconRequest is the request type for the DeleteLexicon API operation.

func (DeleteLexiconRequest) Send

Send marshals and sends the DeleteLexicon API request.

type DeleteLexiconResponse added in v0.9.0

type DeleteLexiconResponse struct {
	*DeleteLexiconOutput
	// contains filtered or unexported fields
}

DeleteLexiconResponse is the response type for the DeleteLexicon API operation.

func (*DeleteLexiconResponse) SDKResponseMetdata added in v0.9.0

func (r *DeleteLexiconResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DeleteLexicon request.

type DescribeVoicesInput

type DescribeVoicesInput struct {

	// Specifies the engine (standard or neural) used by Amazon Polly when processing
	// input text for speech synthesis.
	Engine Engine `location:"querystring" locationName:"Engine" type:"string" enum:"true"`

	// 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.
	IncludeAdditionalLanguageCodes *bool `location:"querystring" locationName:"IncludeAdditionalLanguageCodes" type:"boolean"`

	// 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.
	LanguageCode LanguageCode `location:"querystring" locationName:"LanguageCode" type:"string" enum:"true"`

	// An opaque pagination token returned from the previous DescribeVoices operation.
	// If present, this indicates where to continue the listing.
	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
	// contains filtered or unexported fields
}

func (DescribeVoicesInput) MarshalFields added in v0.3.0

func (s DescribeVoicesInput) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (DescribeVoicesInput) String

func (s DescribeVoicesInput) String() string

String returns the string representation

type DescribeVoicesOutput

type DescribeVoicesOutput struct {

	// The pagination token to use in the next request to continue the listing of
	// voices. NextToken is returned only if the response is truncated.
	NextToken *string `type:"string"`

	// A list of voices with their properties.
	Voices []Voice `type:"list"`
	// contains filtered or unexported fields
}

func (DescribeVoicesOutput) MarshalFields added in v0.3.0

func (s DescribeVoicesOutput) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (DescribeVoicesOutput) String

func (s DescribeVoicesOutput) String() string

String returns the string representation

type DescribeVoicesRequest

type DescribeVoicesRequest struct {
	*aws.Request
	Input *DescribeVoicesInput
	Copy  func(*DescribeVoicesInput) DescribeVoicesRequest
}

DescribeVoicesRequest is the request type for the DescribeVoices API operation.

func (DescribeVoicesRequest) Send

Send marshals and sends the DescribeVoices API request.

type DescribeVoicesResponse added in v0.9.0

type DescribeVoicesResponse struct {
	*DescribeVoicesOutput
	// contains filtered or unexported fields
}

DescribeVoicesResponse is the response type for the DescribeVoices API operation.

func (*DescribeVoicesResponse) SDKResponseMetdata added in v0.9.0

func (r *DescribeVoicesResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DescribeVoices request.

type Engine added in v0.11.0

type Engine string
const (
	EngineStandard Engine = "standard"
	EngineNeural   Engine = "neural"
)

Enum values for Engine

func (Engine) MarshalValue added in v0.11.0

func (enum Engine) MarshalValue() (string, error)

func (Engine) MarshalValueBuf added in v0.11.0

func (enum Engine) MarshalValueBuf(b []byte) ([]byte, error)

type Gender

type Gender string
const (
	GenderFemale Gender = "Female"
	GenderMale   Gender = "Male"
)

Enum values for Gender

func (Gender) MarshalValue added in v0.3.0

func (enum Gender) MarshalValue() (string, error)

func (Gender) MarshalValueBuf added in v0.3.0

func (enum Gender) MarshalValueBuf(b []byte) ([]byte, error)

type GetLexiconInput

type GetLexiconInput struct {

	// Name of the lexicon.
	//
	// Name is a required field
	Name *string `location:"uri" locationName:"LexiconName" type:"string" required:"true" sensitive:"true"`
	// contains filtered or unexported fields
}

func (GetLexiconInput) MarshalFields added in v0.3.0

func (s GetLexiconInput) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (GetLexiconInput) String

func (s GetLexiconInput) String() string

String returns the string representation

func (*GetLexiconInput) Validate

func (s *GetLexiconInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetLexiconOutput

type GetLexiconOutput struct {

	// Lexicon object that provides name and the string content of the lexicon.
	Lexicon *Lexicon `type:"structure"`

	// Metadata of the lexicon, including phonetic alphabetic used, language code,
	// lexicon ARN, number of lexemes defined in the lexicon, and size of lexicon
	// in bytes.
	LexiconAttributes *LexiconAttributes `type:"structure"`
	// contains filtered or unexported fields
}

func (GetLexiconOutput) MarshalFields added in v0.3.0

func (s GetLexiconOutput) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (GetLexiconOutput) String

func (s GetLexiconOutput) String() string

String returns the string representation

type GetLexiconRequest

type GetLexiconRequest struct {
	*aws.Request
	Input *GetLexiconInput
	Copy  func(*GetLexiconInput) GetLexiconRequest
}

GetLexiconRequest is the request type for the GetLexicon API operation.

func (GetLexiconRequest) Send

Send marshals and sends the GetLexicon API request.

type GetLexiconResponse added in v0.9.0

type GetLexiconResponse struct {
	*GetLexiconOutput
	// contains filtered or unexported fields
}

GetLexiconResponse is the response type for the GetLexicon API operation.

func (*GetLexiconResponse) SDKResponseMetdata added in v0.9.0

func (r *GetLexiconResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetLexicon request.

type GetSpeechSynthesisTaskInput added in v0.5.0

type GetSpeechSynthesisTaskInput struct {

	// The Amazon Polly generated identifier for a speech synthesis task.
	//
	// TaskId is a required field
	TaskId *string `location:"uri" locationName:"TaskId" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetSpeechSynthesisTaskInput) MarshalFields added in v0.5.0

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (GetSpeechSynthesisTaskInput) String added in v0.5.0

String returns the string representation

func (*GetSpeechSynthesisTaskInput) Validate added in v0.5.0

func (s *GetSpeechSynthesisTaskInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetSpeechSynthesisTaskOutput added in v0.5.0

type GetSpeechSynthesisTaskOutput struct {

	// SynthesisTask object that provides information from the requested task, including
	// output format, creation time, task status, and so on.
	SynthesisTask *SynthesisTask `type:"structure"`
	// contains filtered or unexported fields
}

func (GetSpeechSynthesisTaskOutput) MarshalFields added in v0.5.0

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (GetSpeechSynthesisTaskOutput) String added in v0.5.0

String returns the string representation

type GetSpeechSynthesisTaskRequest added in v0.5.0

type GetSpeechSynthesisTaskRequest struct {
	*aws.Request
	Input *GetSpeechSynthesisTaskInput
	Copy  func(*GetSpeechSynthesisTaskInput) GetSpeechSynthesisTaskRequest
}

GetSpeechSynthesisTaskRequest is the request type for the GetSpeechSynthesisTask API operation.

func (GetSpeechSynthesisTaskRequest) Send added in v0.5.0

Send marshals and sends the GetSpeechSynthesisTask API request.

type GetSpeechSynthesisTaskResponse added in v0.9.0

type GetSpeechSynthesisTaskResponse struct {
	*GetSpeechSynthesisTaskOutput
	// contains filtered or unexported fields
}

GetSpeechSynthesisTaskResponse is the response type for the GetSpeechSynthesisTask API operation.

func (*GetSpeechSynthesisTaskResponse) SDKResponseMetdata added in v0.9.0

func (r *GetSpeechSynthesisTaskResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetSpeechSynthesisTask request.

type LanguageCode

type LanguageCode string
const (
	LanguageCodeArb     LanguageCode = "arb"
	LanguageCodeCmnCn   LanguageCode = "cmn-CN"
	LanguageCodeCyGb    LanguageCode = "cy-GB"
	LanguageCodeDaDk    LanguageCode = "da-DK"
	LanguageCodeDeDe    LanguageCode = "de-DE"
	LanguageCodeEnAu    LanguageCode = "en-AU"
	LanguageCodeEnGb    LanguageCode = "en-GB"
	LanguageCodeEnGbWls LanguageCode = "en-GB-WLS"
	LanguageCodeEnIn    LanguageCode = "en-IN"
	LanguageCodeEnUs    LanguageCode = "en-US"
	LanguageCodeEsEs    LanguageCode = "es-ES"
	LanguageCodeEsMx    LanguageCode = "es-MX"
	LanguageCodeEsUs    LanguageCode = "es-US"
	LanguageCodeFrCa    LanguageCode = "fr-CA"
	LanguageCodeFrFr    LanguageCode = "fr-FR"
	LanguageCodeIsIs    LanguageCode = "is-IS"
	LanguageCodeItIt    LanguageCode = "it-IT"
	LanguageCodeJaJp    LanguageCode = "ja-JP"
	LanguageCodeHiIn    LanguageCode = "hi-IN"
	LanguageCodeKoKr    LanguageCode = "ko-KR"
	LanguageCodeNbNo    LanguageCode = "nb-NO"
	LanguageCodeNlNl    LanguageCode = "nl-NL"
	LanguageCodePlPl    LanguageCode = "pl-PL"
	LanguageCodePtBr    LanguageCode = "pt-BR"
	LanguageCodePtPt    LanguageCode = "pt-PT"
	LanguageCodeRoRo    LanguageCode = "ro-RO"
	LanguageCodeRuRu    LanguageCode = "ru-RU"
	LanguageCodeSvSe    LanguageCode = "sv-SE"
	LanguageCodeTrTr    LanguageCode = "tr-TR"
)

Enum values for LanguageCode

func (LanguageCode) MarshalValue added in v0.3.0

func (enum LanguageCode) MarshalValue() (string, error)

func (LanguageCode) MarshalValueBuf added in v0.3.0

func (enum LanguageCode) MarshalValueBuf(b []byte) ([]byte, error)

type Lexicon

type Lexicon struct {

	// Lexicon content in string format. The content of a lexicon must be in PLS
	// format.
	Content *string `type:"string"`

	// Name of the lexicon.
	Name *string `type:"string" sensitive:"true"`
	// contains filtered or unexported fields
}

Provides lexicon name and lexicon content in string format. For more information, see Pronunciation Lexicon Specification (PLS) Version 1.0 (https://www.w3.org/TR/pronunciation-lexicon/).

func (Lexicon) MarshalFields added in v0.3.0

func (s Lexicon) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (Lexicon) String

func (s Lexicon) String() string

String returns the string representation

type LexiconAttributes

type LexiconAttributes struct {

	// Phonetic alphabet used in the lexicon. Valid values are ipa and x-sampa.
	Alphabet *string `type:"string"`

	// Language code that the lexicon applies to. A lexicon with a language code
	// such as "en" would be applied to all English languages (en-GB, en-US, en-AUS,
	// en-WLS, and so on.
	LanguageCode LanguageCode `type:"string" enum:"true"`

	// Date lexicon was last modified (a timestamp value).
	LastModified *time.Time `type:"timestamp"`

	// Number of lexemes in the lexicon.
	LexemesCount *int64 `type:"integer"`

	// Amazon Resource Name (ARN) of the lexicon.
	LexiconArn *string `type:"string"`

	// Total size of the lexicon, in characters.
	Size *int64 `type:"integer"`
	// contains filtered or unexported fields
}

Contains metadata describing the lexicon such as the number of lexemes, language code, and so on. For more information, see Managing Lexicons (https://docs.aws.amazon.com/polly/latest/dg/managing-lexicons.html).

func (LexiconAttributes) MarshalFields added in v0.3.0

func (s LexiconAttributes) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (LexiconAttributes) String

func (s LexiconAttributes) String() string

String returns the string representation

type LexiconDescription

type LexiconDescription struct {

	// Provides lexicon metadata.
	Attributes *LexiconAttributes `type:"structure"`

	// Name of the lexicon.
	Name *string `type:"string" sensitive:"true"`
	// contains filtered or unexported fields
}

Describes the content of the lexicon.

func (LexiconDescription) MarshalFields added in v0.3.0

func (s LexiconDescription) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (LexiconDescription) String

func (s LexiconDescription) String() string

String returns the string representation

type ListLexiconsInput

type ListLexiconsInput struct {

	// An opaque pagination token returned from previous ListLexicons operation.
	// If present, indicates where to continue the list of lexicons.
	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`
	// contains filtered or unexported fields
}

func (ListLexiconsInput) MarshalFields added in v0.3.0

func (s ListLexiconsInput) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (ListLexiconsInput) String

func (s ListLexiconsInput) String() string

String returns the string representation

type ListLexiconsOutput

type ListLexiconsOutput struct {

	// A list of lexicon names and attributes.
	Lexicons []LexiconDescription `type:"list"`

	// The pagination token to use in the next request to continue the listing of
	// lexicons. NextToken is returned only if the response is truncated.
	NextToken *string `type:"string"`
	// contains filtered or unexported fields
}

func (ListLexiconsOutput) MarshalFields added in v0.3.0

func (s ListLexiconsOutput) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (ListLexiconsOutput) String

func (s ListLexiconsOutput) String() string

String returns the string representation

type ListLexiconsRequest

type ListLexiconsRequest struct {
	*aws.Request
	Input *ListLexiconsInput
	Copy  func(*ListLexiconsInput) ListLexiconsRequest
}

ListLexiconsRequest is the request type for the ListLexicons API operation.

func (ListLexiconsRequest) Send

Send marshals and sends the ListLexicons API request.

type ListLexiconsResponse added in v0.9.0

type ListLexiconsResponse struct {
	*ListLexiconsOutput
	// contains filtered or unexported fields
}

ListLexiconsResponse is the response type for the ListLexicons API operation.

func (*ListLexiconsResponse) SDKResponseMetdata added in v0.9.0

func (r *ListLexiconsResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the ListLexicons request.

type ListSpeechSynthesisTasksInput added in v0.5.0

type ListSpeechSynthesisTasksInput struct {

	// Maximum number of speech synthesis tasks returned in a List operation.
	MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"`

	// The pagination token to use in the next request to continue the listing of
	// speech synthesis tasks.
	NextToken *string `location:"querystring" locationName:"NextToken" type:"string"`

	// Status of the speech synthesis tasks returned in a List operation
	Status TaskStatus `location:"querystring" locationName:"Status" type:"string" enum:"true"`
	// contains filtered or unexported fields
}

func (ListSpeechSynthesisTasksInput) MarshalFields added in v0.5.0

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (ListSpeechSynthesisTasksInput) String added in v0.5.0

String returns the string representation

func (*ListSpeechSynthesisTasksInput) Validate added in v0.5.0

func (s *ListSpeechSynthesisTasksInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListSpeechSynthesisTasksOutput added in v0.5.0

type ListSpeechSynthesisTasksOutput struct {

	// An opaque pagination token returned from the previous List operation in this
	// request. If present, this indicates where to continue the listing.
	NextToken *string `type:"string"`

	// List of SynthesisTask objects that provides information from the specified
	// task in the list request, including output format, creation time, task status,
	// and so on.
	SynthesisTasks []SynthesisTask `type:"list"`
	// contains filtered or unexported fields
}

func (ListSpeechSynthesisTasksOutput) MarshalFields added in v0.5.0

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (ListSpeechSynthesisTasksOutput) String added in v0.5.0

String returns the string representation

type ListSpeechSynthesisTasksPaginator added in v0.9.0

type ListSpeechSynthesisTasksPaginator struct {
	aws.Pager
}

ListSpeechSynthesisTasksPaginator is used to paginate the request. This can be done by calling Next and CurrentPage.

func NewListSpeechSynthesisTasksPaginator added in v0.9.0

func NewListSpeechSynthesisTasksPaginator(req ListSpeechSynthesisTasksRequest) ListSpeechSynthesisTasksPaginator

NewListSpeechSynthesisTasksRequestPaginator returns a paginator for ListSpeechSynthesisTasks. Use Next method to get the next page, and CurrentPage to get the current response page from the paginator. Next will return false, if there are no more pages, or an error was encountered.

Note: This operation can generate multiple requests to a service.

// Example iterating over pages.
req := client.ListSpeechSynthesisTasksRequest(input)
p := polly.NewListSpeechSynthesisTasksRequestPaginator(req)

for p.Next(context.TODO()) {
    page := p.CurrentPage()
}

if err := p.Err(); err != nil {
    return err
}

func (*ListSpeechSynthesisTasksPaginator) CurrentPage added in v0.9.0

type ListSpeechSynthesisTasksRequest added in v0.5.0

type ListSpeechSynthesisTasksRequest struct {
	*aws.Request
	Input *ListSpeechSynthesisTasksInput
	Copy  func(*ListSpeechSynthesisTasksInput) ListSpeechSynthesisTasksRequest
}

ListSpeechSynthesisTasksRequest is the request type for the ListSpeechSynthesisTasks API operation.

func (ListSpeechSynthesisTasksRequest) Send added in v0.5.0

Send marshals and sends the ListSpeechSynthesisTasks API request.

type ListSpeechSynthesisTasksResponse added in v0.9.0

type ListSpeechSynthesisTasksResponse struct {
	*ListSpeechSynthesisTasksOutput
	// contains filtered or unexported fields
}

ListSpeechSynthesisTasksResponse is the response type for the ListSpeechSynthesisTasks API operation.

func (*ListSpeechSynthesisTasksResponse) SDKResponseMetdata added in v0.9.0

func (r *ListSpeechSynthesisTasksResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the ListSpeechSynthesisTasks request.

type OutputFormat

type OutputFormat string
const (
	OutputFormatJson      OutputFormat = "json"
	OutputFormatMp3       OutputFormat = "mp3"
	OutputFormatOggVorbis OutputFormat = "ogg_vorbis"
	OutputFormatPcm       OutputFormat = "pcm"
)

Enum values for OutputFormat

func (OutputFormat) MarshalValue added in v0.3.0

func (enum OutputFormat) MarshalValue() (string, error)

func (OutputFormat) MarshalValueBuf added in v0.3.0

func (enum OutputFormat) MarshalValueBuf(b []byte) ([]byte, error)

type PutLexiconInput

type PutLexiconInput struct {

	// Content of the PLS lexicon as string data.
	//
	// Content is a required field
	Content *string `type:"string" required:"true"`

	// Name of the lexicon. The name must follow the regular express format [0-9A-Za-z]{1,20}.
	// That is, the name is a case-sensitive alphanumeric string up to 20 characters
	// long.
	//
	// Name is a required field
	Name *string `location:"uri" locationName:"LexiconName" type:"string" required:"true" sensitive:"true"`
	// contains filtered or unexported fields
}

func (PutLexiconInput) MarshalFields added in v0.3.0

func (s PutLexiconInput) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (PutLexiconInput) String

func (s PutLexiconInput) String() string

String returns the string representation

func (*PutLexiconInput) Validate

func (s *PutLexiconInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type PutLexiconOutput

type PutLexiconOutput struct {
	// contains filtered or unexported fields
}

func (PutLexiconOutput) MarshalFields added in v0.3.0

func (s PutLexiconOutput) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (PutLexiconOutput) String

func (s PutLexiconOutput) String() string

String returns the string representation

type PutLexiconRequest

type PutLexiconRequest struct {
	*aws.Request
	Input *PutLexiconInput
	Copy  func(*PutLexiconInput) PutLexiconRequest
}

PutLexiconRequest is the request type for the PutLexicon API operation.

func (PutLexiconRequest) Send

Send marshals and sends the PutLexicon API request.

type PutLexiconResponse added in v0.9.0

type PutLexiconResponse struct {
	*PutLexiconOutput
	// contains filtered or unexported fields
}

PutLexiconResponse is the response type for the PutLexicon API operation.

func (*PutLexiconResponse) SDKResponseMetdata added in v0.9.0

func (r *PutLexiconResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the PutLexicon request.

type SpeechMarkType

type SpeechMarkType string
const (
	SpeechMarkTypeSentence SpeechMarkType = "sentence"
	SpeechMarkTypeSsml     SpeechMarkType = "ssml"
	SpeechMarkTypeViseme   SpeechMarkType = "viseme"
	SpeechMarkTypeWord     SpeechMarkType = "word"
)

Enum values for SpeechMarkType

func (SpeechMarkType) MarshalValue added in v0.3.0

func (enum SpeechMarkType) MarshalValue() (string, error)

func (SpeechMarkType) MarshalValueBuf added in v0.3.0

func (enum SpeechMarkType) MarshalValueBuf(b []byte) ([]byte, error)

type StartSpeechSynthesisTaskInput added in v0.5.0

type StartSpeechSynthesisTaskInput struct {

	// Specifies the engine (standard or neural) for Amazon Polly to use when processing
	// input text for speech synthesis. Using a voice that is not supported for
	// the engine selected will result in an error.
	Engine Engine `type:"string" enum:"true"`

	// Optional language code for the Speech Synthesis request. This is only necessary
	// if using a bilingual voice, such as Aditi, which can be used for either Indian
	// English (en-IN) or Hindi (hi-IN).
	//
	// If a bilingual voice is used and no language code is specified, Amazon Polly
	// will use the default language of the bilingual voice. The default language
	// for any voice is the one returned by the DescribeVoices (https://docs.aws.amazon.com/polly/latest/dg/API_DescribeVoices.html)
	// operation for the LanguageCode parameter. For example, if no language code
	// is specified, Aditi will use Indian English rather than Hindi.
	LanguageCode LanguageCode `type:"string" enum:"true"`

	// List of one or more pronunciation lexicon names you want the service to apply
	// during synthesis. Lexicons are applied only if the language of the lexicon
	// is the same as the language of the voice.
	LexiconNames []string `type:"list"`

	// The format in which the returned output will be encoded. For audio stream,
	// this will be mp3, ogg_vorbis, or pcm. For speech marks, this will be json.
	//
	// OutputFormat is a required field
	OutputFormat OutputFormat `type:"string" required:"true" enum:"true"`

	// Amazon S3 bucket name to which the output file will be saved.
	//
	// OutputS3BucketName is a required field
	OutputS3BucketName *string `type:"string" required:"true"`

	// The Amazon S3 key prefix for the output speech file.
	OutputS3KeyPrefix *string `type:"string"`

	// The audio frequency specified in Hz.
	//
	// The valid values for mp3 and ogg_vorbis are "8000", "16000", "22050", and
	// "24000". The default value for standard voices is "22050". The default value
	// for neural voices is "24000".
	//
	// Valid values for pcm are "8000" and "16000" The default value is "16000".
	SampleRate *string `type:"string"`

	// ARN for the SNS topic optionally used for providing status notification for
	// a speech synthesis task.
	SnsTopicArn *string `type:"string"`

	// The type of speech marks returned for the input text.
	SpeechMarkTypes []SpeechMarkType `type:"list"`

	// The input text to synthesize. If you specify ssml as the TextType, follow
	// the SSML format for the input text.
	//
	// Text is a required field
	Text *string `type:"string" required:"true"`

	// Specifies whether the input text is plain text or SSML. The default value
	// is plain text.
	TextType TextType `type:"string" enum:"true"`

	// Voice ID to use for the synthesis.
	//
	// VoiceId is a required field
	VoiceId VoiceId `type:"string" required:"true" enum:"true"`
	// contains filtered or unexported fields
}

func (StartSpeechSynthesisTaskInput) MarshalFields added in v0.5.0

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (StartSpeechSynthesisTaskInput) String added in v0.5.0

String returns the string representation

func (*StartSpeechSynthesisTaskInput) Validate added in v0.5.0

func (s *StartSpeechSynthesisTaskInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type StartSpeechSynthesisTaskOutput added in v0.5.0

type StartSpeechSynthesisTaskOutput struct {

	// SynthesisTask object that provides information and attributes about a newly
	// submitted speech synthesis task.
	SynthesisTask *SynthesisTask `type:"structure"`
	// contains filtered or unexported fields
}

func (StartSpeechSynthesisTaskOutput) MarshalFields added in v0.5.0

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (StartSpeechSynthesisTaskOutput) String added in v0.5.0

String returns the string representation

type StartSpeechSynthesisTaskRequest added in v0.5.0

type StartSpeechSynthesisTaskRequest struct {
	*aws.Request
	Input *StartSpeechSynthesisTaskInput
	Copy  func(*StartSpeechSynthesisTaskInput) StartSpeechSynthesisTaskRequest
}

StartSpeechSynthesisTaskRequest is the request type for the StartSpeechSynthesisTask API operation.

func (StartSpeechSynthesisTaskRequest) Send added in v0.5.0

Send marshals and sends the StartSpeechSynthesisTask API request.

type StartSpeechSynthesisTaskResponse added in v0.9.0

type StartSpeechSynthesisTaskResponse struct {
	*StartSpeechSynthesisTaskOutput
	// contains filtered or unexported fields
}

StartSpeechSynthesisTaskResponse is the response type for the StartSpeechSynthesisTask API operation.

func (*StartSpeechSynthesisTaskResponse) SDKResponseMetdata added in v0.9.0

func (r *StartSpeechSynthesisTaskResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the StartSpeechSynthesisTask request.

type SynthesisTask added in v0.5.0

type SynthesisTask struct {

	// Timestamp for the time the synthesis task was started.
	CreationTime *time.Time `type:"timestamp"`

	// Specifies the engine (standard or neural) for Amazon Polly to use when processing
	// input text for speech synthesis. Using a voice that is not supported for
	// the engine selected will result in an error.
	Engine Engine `type:"string" enum:"true"`

	// Optional language code for a synthesis task. This is only necessary if using
	// a bilingual voice, such as Aditi, which can be used for either Indian English
	// (en-IN) or Hindi (hi-IN).
	//
	// If a bilingual voice is used and no language code is specified, Amazon Polly
	// will use the default language of the bilingual voice. The default language
	// for any voice is the one returned by the DescribeVoices (https://docs.aws.amazon.com/polly/latest/dg/API_DescribeVoices.html)
	// operation for the LanguageCode parameter. For example, if no language code
	// is specified, Aditi will use Indian English rather than Hindi.
	LanguageCode LanguageCode `type:"string" enum:"true"`

	// List of one or more pronunciation lexicon names you want the service to apply
	// during synthesis. Lexicons are applied only if the language of the lexicon
	// is the same as the language of the voice.
	LexiconNames []string `type:"list"`

	// The format in which the returned output will be encoded. For audio stream,
	// this will be mp3, ogg_vorbis, or pcm. For speech marks, this will be json.
	OutputFormat OutputFormat `type:"string" enum:"true"`

	// Pathway for the output speech file.
	OutputUri *string `type:"string"`

	// Number of billable characters synthesized.
	RequestCharacters *int64 `type:"integer"`

	// The audio frequency specified in Hz.
	//
	// The valid values for mp3 and ogg_vorbis are "8000", "16000", "22050", and
	// "24000". The default value for standard voices is "22050". The default value
	// for neural voices is "24000".
	//
	// Valid values for pcm are "8000" and "16000" The default value is "16000".
	SampleRate *string `type:"string"`

	// ARN for the SNS topic optionally used for providing status notification for
	// a speech synthesis task.
	SnsTopicArn *string `type:"string"`

	// The type of speech marks returned for the input text.
	SpeechMarkTypes []SpeechMarkType `type:"list"`

	// The Amazon Polly generated identifier for a speech synthesis task.
	TaskId *string `type:"string"`

	// Current status of the individual speech synthesis task.
	TaskStatus TaskStatus `type:"string" enum:"true"`

	// Reason for the current status of a specific speech synthesis task, including
	// errors if the task has failed.
	TaskStatusReason *string `type:"string"`

	// Specifies whether the input text is plain text or SSML. The default value
	// is plain text.
	TextType TextType `type:"string" enum:"true"`

	// Voice ID to use for the synthesis.
	VoiceId VoiceId `type:"string" enum:"true"`
	// contains filtered or unexported fields
}

SynthesisTask object that provides information about a speech synthesis task.

func (SynthesisTask) MarshalFields added in v0.5.0

func (s SynthesisTask) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (SynthesisTask) String added in v0.5.0

func (s SynthesisTask) String() string

String returns the string representation

type SynthesizeSpeechInput

type SynthesizeSpeechInput struct {

	// Specifies the engine (standard or neural) for Amazon Polly to use when processing
	// input text for speech synthesis. Using a voice that is not supported for
	// the engine selected will result in an error.
	Engine Engine `type:"string" enum:"true"`

	// Optional language code for the Synthesize Speech request. This is only necessary
	// if using a bilingual voice, such as Aditi, which can be used for either Indian
	// English (en-IN) or Hindi (hi-IN).
	//
	// If a bilingual voice is used and no language code is specified, Amazon Polly
	// will use the default language of the bilingual voice. The default language
	// for any voice is the one returned by the DescribeVoices (https://docs.aws.amazon.com/polly/latest/dg/API_DescribeVoices.html)
	// operation for the LanguageCode parameter. For example, if no language code
	// is specified, Aditi will use Indian English rather than Hindi.
	LanguageCode LanguageCode `type:"string" enum:"true"`

	// List of one or more pronunciation lexicon names you want the service to apply
	// during synthesis. Lexicons are applied only if the language of the lexicon
	// is the same as the language of the voice. For information about storing lexicons,
	// see PutLexicon (https://docs.aws.amazon.com/polly/latest/dg/API_PutLexicon.html).
	LexiconNames []string `type:"list"`

	// The format in which the returned output will be encoded. For audio stream,
	// this will be mp3, ogg_vorbis, or pcm. For speech marks, this will be json.
	//
	// When pcm is used, the content returned is audio/pcm in a signed 16-bit, 1
	// channel (mono), little-endian format.
	//
	// OutputFormat is a required field
	OutputFormat OutputFormat `type:"string" required:"true" enum:"true"`

	// The audio frequency specified in Hz.
	//
	// The valid values for mp3 and ogg_vorbis are "8000", "16000", "22050", and
	// "24000". The default value for standard voices is "22050". The default value
	// for neural voices is "24000".
	//
	// Valid values for pcm are "8000" and "16000" The default value is "16000".
	SampleRate *string `type:"string"`

	// The type of speech marks returned for the input text.
	SpeechMarkTypes []SpeechMarkType `type:"list"`

	// Input text to synthesize. If you specify ssml as the TextType, follow the
	// SSML format for the input text.
	//
	// Text is a required field
	Text *string `type:"string" required:"true"`

	// Specifies whether the input text is plain text or SSML. The default value
	// is plain text. For more information, see Using SSML (https://docs.aws.amazon.com/polly/latest/dg/ssml.html).
	TextType TextType `type:"string" enum:"true"`

	// Voice ID to use for the synthesis. You can get a list of available voice
	// IDs by calling the DescribeVoices (https://docs.aws.amazon.com/polly/latest/dg/API_DescribeVoices.html)
	// operation.
	//
	// VoiceId is a required field
	VoiceId VoiceId `type:"string" required:"true" enum:"true"`
	// contains filtered or unexported fields
}

func (SynthesizeSpeechInput) MarshalFields added in v0.3.0

func (s SynthesizeSpeechInput) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (SynthesizeSpeechInput) String

func (s SynthesizeSpeechInput) String() string

String returns the string representation

func (*SynthesizeSpeechInput) Validate

func (s *SynthesizeSpeechInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type SynthesizeSpeechOutput

type SynthesizeSpeechOutput struct {

	// Stream containing the synthesized speech.
	AudioStream io.ReadCloser `type:"blob"`

	// Specifies the type audio stream. This should reflect the OutputFormat parameter
	// in your request.
	//
	//    * If you request mp3 as the OutputFormat, the ContentType returned is
	//    audio/mpeg.
	//
	//    * If you request ogg_vorbis as the OutputFormat, the ContentType returned
	//    is audio/ogg.
	//
	//    * If you request pcm as the OutputFormat, the ContentType returned is
	//    audio/pcm in a signed 16-bit, 1 channel (mono), little-endian format.
	//
	//    * If you request json as the OutputFormat, the ContentType returned is
	//    audio/json.
	ContentType *string `location:"header" locationName:"Content-Type" type:"string"`

	// Number of characters synthesized.
	RequestCharacters *int64 `location:"header" locationName:"x-amzn-RequestCharacters" type:"integer"`
	// contains filtered or unexported fields
}

func (SynthesizeSpeechOutput) MarshalFields added in v0.3.0

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (SynthesizeSpeechOutput) String

func (s SynthesizeSpeechOutput) String() string

String returns the string representation

type SynthesizeSpeechRequest

type SynthesizeSpeechRequest struct {
	*aws.Request
	Input *SynthesizeSpeechInput
	Copy  func(*SynthesizeSpeechInput) SynthesizeSpeechRequest
}

SynthesizeSpeechRequest is the request type for the SynthesizeSpeech API operation.

func (SynthesizeSpeechRequest) Send

Send marshals and sends the SynthesizeSpeech API request.

type SynthesizeSpeechResponse added in v0.9.0

type SynthesizeSpeechResponse struct {
	*SynthesizeSpeechOutput
	// contains filtered or unexported fields
}

SynthesizeSpeechResponse is the response type for the SynthesizeSpeech API operation.

func (*SynthesizeSpeechResponse) SDKResponseMetdata added in v0.9.0

func (r *SynthesizeSpeechResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the SynthesizeSpeech request.

type TaskStatus added in v0.5.0

type TaskStatus string
const (
	TaskStatusScheduled  TaskStatus = "scheduled"
	TaskStatusInProgress TaskStatus = "inProgress"
	TaskStatusCompleted  TaskStatus = "completed"
	TaskStatusFailed     TaskStatus = "failed"
)

Enum values for TaskStatus

func (TaskStatus) MarshalValue added in v0.5.0

func (enum TaskStatus) MarshalValue() (string, error)

func (TaskStatus) MarshalValueBuf added in v0.5.0

func (enum TaskStatus) MarshalValueBuf(b []byte) ([]byte, error)

type TextType

type TextType string
const (
	TextTypeSsml TextType = "ssml"
	TextTypeText TextType = "text"
)

Enum values for TextType

func (TextType) MarshalValue added in v0.3.0

func (enum TextType) MarshalValue() (string, error)

func (TextType) MarshalValueBuf added in v0.3.0

func (enum TextType) MarshalValueBuf(b []byte) ([]byte, error)

type Voice

type Voice struct {

	// Additional codes for languages available for the specified voice in addition
	// to its default language.
	//
	// For example, the default language for Aditi is Indian English (en-IN) because
	// it was first used for that language. Since Aditi is bilingual and fluent
	// in both Indian English and Hindi, this parameter would show the code hi-IN.
	AdditionalLanguageCodes []LanguageCode `type:"list"`

	// Gender of the voice.
	Gender Gender `type:"string" enum:"true"`

	// Amazon Polly assigned voice ID. This is the ID that you specify when calling
	// the SynthesizeSpeech operation.
	Id VoiceId `type:"string" enum:"true"`

	// Language code of the voice.
	LanguageCode LanguageCode `type:"string" enum:"true"`

	// Human readable name of the language in English.
	LanguageName *string `type:"string"`

	// Name of the voice (for example, Salli, Kendra, etc.). This provides a human
	// readable voice name that you might display in your application.
	Name *string `type:"string"`

	// Specifies which engines (standard or neural) that are supported by a given
	// voice.
	SupportedEngines []Engine `type:"list"`
	// contains filtered or unexported fields
}

Description of the voice.

func (Voice) MarshalFields added in v0.3.0

func (s Voice) MarshalFields(e protocol.FieldEncoder) error

MarshalFields encodes the AWS API shape using the passed in protocol encoder.

func (Voice) String

func (s Voice) String() string

String returns the string representation

type VoiceId

type VoiceId string
const (
	VoiceIdAditi     VoiceId = "Aditi"
	VoiceIdAmy       VoiceId = "Amy"
	VoiceIdAstrid    VoiceId = "Astrid"
	VoiceIdBianca    VoiceId = "Bianca"
	VoiceIdBrian     VoiceId = "Brian"
	VoiceIdCamila    VoiceId = "Camila"
	VoiceIdCarla     VoiceId = "Carla"
	VoiceIdCarmen    VoiceId = "Carmen"
	VoiceIdCeline    VoiceId = "Celine"
	VoiceIdChantal   VoiceId = "Chantal"
	VoiceIdConchita  VoiceId = "Conchita"
	VoiceIdCristiano VoiceId = "Cristiano"
	VoiceIdDora      VoiceId = "Dora"
	VoiceIdEmma      VoiceId = "Emma"
	VoiceIdEnrique   VoiceId = "Enrique"
	VoiceIdEwa       VoiceId = "Ewa"
	VoiceIdFiliz     VoiceId = "Filiz"
	VoiceIdGeraint   VoiceId = "Geraint"
	VoiceIdGiorgio   VoiceId = "Giorgio"
	VoiceIdGwyneth   VoiceId = "Gwyneth"
	VoiceIdHans      VoiceId = "Hans"
	VoiceIdInes      VoiceId = "Ines"
	VoiceIdIvy       VoiceId = "Ivy"
	VoiceIdJacek     VoiceId = "Jacek"
	VoiceIdJan       VoiceId = "Jan"
	VoiceIdJoanna    VoiceId = "Joanna"
	VoiceIdJoey      VoiceId = "Joey"
	VoiceIdJustin    VoiceId = "Justin"
	VoiceIdKarl      VoiceId = "Karl"
	VoiceIdKendra    VoiceId = "Kendra"
	VoiceIdKevin     VoiceId = "Kevin"
	VoiceIdKimberly  VoiceId = "Kimberly"
	VoiceIdLea       VoiceId = "Lea"
	VoiceIdLiv       VoiceId = "Liv"
	VoiceIdLotte     VoiceId = "Lotte"
	VoiceIdLucia     VoiceId = "Lucia"
	VoiceIdLupe      VoiceId = "Lupe"
	VoiceIdMads      VoiceId = "Mads"
	VoiceIdMaja      VoiceId = "Maja"
	VoiceIdMarlene   VoiceId = "Marlene"
	VoiceIdMathieu   VoiceId = "Mathieu"
	VoiceIdMatthew   VoiceId = "Matthew"
	VoiceIdMaxim     VoiceId = "Maxim"
	VoiceIdMia       VoiceId = "Mia"
	VoiceIdMiguel    VoiceId = "Miguel"
	VoiceIdMizuki    VoiceId = "Mizuki"
	VoiceIdNaja      VoiceId = "Naja"
	VoiceIdNicole    VoiceId = "Nicole"
	VoiceIdPenelope  VoiceId = "Penelope"
	VoiceIdRaveena   VoiceId = "Raveena"
	VoiceIdRicardo   VoiceId = "Ricardo"
	VoiceIdRuben     VoiceId = "Ruben"
	VoiceIdRussell   VoiceId = "Russell"
	VoiceIdSalli     VoiceId = "Salli"
	VoiceIdSeoyeon   VoiceId = "Seoyeon"
	VoiceIdTakumi    VoiceId = "Takumi"
	VoiceIdTatyana   VoiceId = "Tatyana"
	VoiceIdVicki     VoiceId = "Vicki"
	VoiceIdVitoria   VoiceId = "Vitoria"
	VoiceIdZeina     VoiceId = "Zeina"
	VoiceIdZhiyu     VoiceId = "Zhiyu"
)

Enum values for VoiceId

func (VoiceId) MarshalValue added in v0.3.0

func (enum VoiceId) MarshalValue() (string, error)

func (VoiceId) MarshalValueBuf added in v0.3.0

func (enum VoiceId) MarshalValueBuf(b []byte) ([]byte, error)

Directories

Path Synopsis
Package pollyiface provides an interface to enable mocking the Amazon Polly service client for testing your code.
Package pollyiface provides an interface to enable mocking the Amazon Polly service client for testing your code.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL