polly

package
v1.0.8-0...-33a65fd Latest Latest
Warning

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

Go to latest
Published: Jun 5, 2017 License: Apache-2.0 Imports: 9 Imported by: 0

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 the client for Amazon Polly you will first need to create a new instance of it.

When creating a client for an AWS service you'll first need to have a Session already created. The Session provides configuration that can be shared between multiple service clients. Additional configuration can be applied to the Session and service's client when they are constructed. The aws package's Config type contains several fields such as Region for the AWS Region the client should make API requests too. The optional Config value can be provided as the variadic argument for Sessions and client creation.

Once the service's client is created you can use it to make API requests the AWS service. These clients are safe to use concurrently.

// Create a session to share configuration, and load external configuration.
sess := session.Must(session.NewSession())

// Create the service's client with the session.
svc := polly.New(sess)

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

See aws package's Config type for more information on configuration options. https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config

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

Once the client is created you can make an API request to the service. Each API method takes a input parameter, and returns the service response and an error.

The API method will document which error codes the service can be returned by the operation if the service models the API operation's errors. These errors will also be available as const strings prefixed with "ErrCode".

result, err := svc.DeleteLexicon(params)
if err != nil {
    // Cast err to awserr.Error to handle specific error codes.
    aerr, ok := err.(awserr.Error)
    if ok && aerr.Code() == <error code to check for> {
        // Specific error code handling
    }
    return err
}

fmt.Println("DeleteLexicon result:")
fmt.Println(result)

Using the Client with Context

The service's client also provides methods to make API requests with a Context value. This allows you to control the timeout, and cancellation of pending requests. These methods also take request Option as variadic parameter to apply additional configuration to the API request.

ctx := context.Background()

result, err := svc.DeleteLexiconWithContext(ctx, params)

See the request package documentation for more information on using Context pattern with the SDK. https://docs.aws.amazon.com/sdk-for-go/api/aws/request/

Index

Examples

Constants

View Source
const (
	// GenderFemale is a Gender enum value
	GenderFemale = "Female"

	// GenderMale is a Gender enum value
	GenderMale = "Male"
)
View Source
const (
	// LanguageCodeCyGb is a LanguageCode enum value
	LanguageCodeCyGb = "cy-GB"

	// LanguageCodeDaDk is a LanguageCode enum value
	LanguageCodeDaDk = "da-DK"

	// LanguageCodeDeDe is a LanguageCode enum value
	LanguageCodeDeDe = "de-DE"

	// LanguageCodeEnAu is a LanguageCode enum value
	LanguageCodeEnAu = "en-AU"

	// LanguageCodeEnGb is a LanguageCode enum value
	LanguageCodeEnGb = "en-GB"

	// LanguageCodeEnGbWls is a LanguageCode enum value
	LanguageCodeEnGbWls = "en-GB-WLS"

	// LanguageCodeEnIn is a LanguageCode enum value
	LanguageCodeEnIn = "en-IN"

	// LanguageCodeEnUs is a LanguageCode enum value
	LanguageCodeEnUs = "en-US"

	// LanguageCodeEsEs is a LanguageCode enum value
	LanguageCodeEsEs = "es-ES"

	// LanguageCodeEsUs is a LanguageCode enum value
	LanguageCodeEsUs = "es-US"

	// LanguageCodeFrCa is a LanguageCode enum value
	LanguageCodeFrCa = "fr-CA"

	// LanguageCodeFrFr is a LanguageCode enum value
	LanguageCodeFrFr = "fr-FR"

	// LanguageCodeIsIs is a LanguageCode enum value
	LanguageCodeIsIs = "is-IS"

	// LanguageCodeItIt is a LanguageCode enum value
	LanguageCodeItIt = "it-IT"

	// LanguageCodeJaJp is a LanguageCode enum value
	LanguageCodeJaJp = "ja-JP"

	// LanguageCodeNbNo is a LanguageCode enum value
	LanguageCodeNbNo = "nb-NO"

	// LanguageCodeNlNl is a LanguageCode enum value
	LanguageCodeNlNl = "nl-NL"

	// LanguageCodePlPl is a LanguageCode enum value
	LanguageCodePlPl = "pl-PL"

	// LanguageCodePtBr is a LanguageCode enum value
	LanguageCodePtBr = "pt-BR"

	// LanguageCodePtPt is a LanguageCode enum value
	LanguageCodePtPt = "pt-PT"

	// LanguageCodeRoRo is a LanguageCode enum value
	LanguageCodeRoRo = "ro-RO"

	// LanguageCodeRuRu is a LanguageCode enum value
	LanguageCodeRuRu = "ru-RU"

	// LanguageCodeSvSe is a LanguageCode enum value
	LanguageCodeSvSe = "sv-SE"

	// LanguageCodeTrTr is a LanguageCode enum value
	LanguageCodeTrTr = "tr-TR"
)
View Source
const (
	// OutputFormatJson is a OutputFormat enum value
	OutputFormatJson = "json"

	// OutputFormatMp3 is a OutputFormat enum value
	OutputFormatMp3 = "mp3"

	// OutputFormatOggVorbis is a OutputFormat enum value
	OutputFormatOggVorbis = "ogg_vorbis"

	// OutputFormatPcm is a OutputFormat enum value
	OutputFormatPcm = "pcm"
)
View Source
const (
	// SpeechMarkTypeSentence is a SpeechMarkType enum value
	SpeechMarkTypeSentence = "sentence"

	// SpeechMarkTypeSsml is a SpeechMarkType enum value
	SpeechMarkTypeSsml = "ssml"

	// SpeechMarkTypeViseme is a SpeechMarkType enum value
	SpeechMarkTypeViseme = "viseme"

	// SpeechMarkTypeWord is a SpeechMarkType enum value
	SpeechMarkTypeWord = "word"
)
View Source
const (
	// TextTypeSsml is a TextType enum value
	TextTypeSsml = "ssml"

	// TextTypeText is a TextType enum value
	TextTypeText = "text"
)
View Source
const (
	// VoiceIdGeraint is a VoiceId enum value
	VoiceIdGeraint = "Geraint"

	// VoiceIdGwyneth is a VoiceId enum value
	VoiceIdGwyneth = "Gwyneth"

	// VoiceIdMads is a VoiceId enum value
	VoiceIdMads = "Mads"

	// VoiceIdNaja is a VoiceId enum value
	VoiceIdNaja = "Naja"

	// VoiceIdHans is a VoiceId enum value
	VoiceIdHans = "Hans"

	// VoiceIdMarlene is a VoiceId enum value
	VoiceIdMarlene = "Marlene"

	// VoiceIdNicole is a VoiceId enum value
	VoiceIdNicole = "Nicole"

	// VoiceIdRussell is a VoiceId enum value
	VoiceIdRussell = "Russell"

	// VoiceIdAmy is a VoiceId enum value
	VoiceIdAmy = "Amy"

	// VoiceIdBrian is a VoiceId enum value
	VoiceIdBrian = "Brian"

	// VoiceIdEmma is a VoiceId enum value
	VoiceIdEmma = "Emma"

	// VoiceIdRaveena is a VoiceId enum value
	VoiceIdRaveena = "Raveena"

	// VoiceIdIvy is a VoiceId enum value
	VoiceIdIvy = "Ivy"

	// VoiceIdJoanna is a VoiceId enum value
	VoiceIdJoanna = "Joanna"

	// VoiceIdJoey is a VoiceId enum value
	VoiceIdJoey = "Joey"

	// VoiceIdJustin is a VoiceId enum value
	VoiceIdJustin = "Justin"

	// VoiceIdKendra is a VoiceId enum value
	VoiceIdKendra = "Kendra"

	// VoiceIdKimberly is a VoiceId enum value
	VoiceIdKimberly = "Kimberly"

	// VoiceIdSalli is a VoiceId enum value
	VoiceIdSalli = "Salli"

	// VoiceIdConchita is a VoiceId enum value
	VoiceIdConchita = "Conchita"

	// VoiceIdEnrique is a VoiceId enum value
	VoiceIdEnrique = "Enrique"

	// VoiceIdMiguel is a VoiceId enum value
	VoiceIdMiguel = "Miguel"

	// VoiceIdPenelope is a VoiceId enum value
	VoiceIdPenelope = "Penelope"

	// VoiceIdChantal is a VoiceId enum value
	VoiceIdChantal = "Chantal"

	// VoiceIdCeline is a VoiceId enum value
	VoiceIdCeline = "Celine"

	// VoiceIdMathieu is a VoiceId enum value
	VoiceIdMathieu = "Mathieu"

	// VoiceIdDora is a VoiceId enum value
	VoiceIdDora = "Dora"

	// VoiceIdKarl is a VoiceId enum value
	VoiceIdKarl = "Karl"

	// VoiceIdCarla is a VoiceId enum value
	VoiceIdCarla = "Carla"

	// VoiceIdGiorgio is a VoiceId enum value
	VoiceIdGiorgio = "Giorgio"

	// VoiceIdMizuki is a VoiceId enum value
	VoiceIdMizuki = "Mizuki"

	// VoiceIdLiv is a VoiceId enum value
	VoiceIdLiv = "Liv"

	// VoiceIdLotte is a VoiceId enum value
	VoiceIdLotte = "Lotte"

	// VoiceIdRuben is a VoiceId enum value
	VoiceIdRuben = "Ruben"

	// VoiceIdEwa is a VoiceId enum value
	VoiceIdEwa = "Ewa"

	// VoiceIdJacek is a VoiceId enum value
	VoiceIdJacek = "Jacek"

	// VoiceIdJan is a VoiceId enum value
	VoiceIdJan = "Jan"

	// VoiceIdMaja is a VoiceId enum value
	VoiceIdMaja = "Maja"

	// VoiceIdRicardo is a VoiceId enum value
	VoiceIdRicardo = "Ricardo"

	// VoiceIdVitoria is a VoiceId enum value
	VoiceIdVitoria = "Vitoria"

	// VoiceIdCristiano is a VoiceId enum value
	VoiceIdCristiano = "Cristiano"

	// VoiceIdInes is a VoiceId enum value
	VoiceIdInes = "Ines"

	// VoiceIdCarmen is a VoiceId enum value
	VoiceIdCarmen = "Carmen"

	// VoiceIdMaxim is a VoiceId enum value
	VoiceIdMaxim = "Maxim"

	// VoiceIdTatyana is a VoiceId enum value
	VoiceIdTatyana = "Tatyana"

	// VoiceIdAstrid is a VoiceId enum value
	VoiceIdAstrid = "Astrid"

	// VoiceIdFiliz is a VoiceId enum value
	VoiceIdFiliz = "Filiz"

	// VoiceIdVicki is a VoiceId enum value
	VoiceIdVicki = "Vicki"
)
View Source
const (

	// 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"

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

	// 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"

	// 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"

	// ErrCodeTextLengthExceededException for service response error code
	// "TextLengthExceededException".
	//
	// The value of the "Text" parameter is longer than the accepted limits. The
	// limit for input text is a maximum of 3000 characters total, of which no more
	// than 1500 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 (http://docs.aws.amazon.com/polly/latest/dg/API_LexiconAttributes.html).
	ErrCodeUnsupportedPlsLanguageException = "UnsupportedPlsLanguageException"
)
View Source
const (
	ServiceName = "polly"     // Service endpoint prefix API calls made to.
	EndpointsID = ServiceName // Service ID for Regions and Endpoints metadata.
)

Service information constants

Variables

This section is empty.

Functions

This section is empty.

Types

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"`
	// contains filtered or unexported fields
}

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

func (DeleteLexiconInput) GoString

func (s DeleteLexiconInput) GoString() string

GoString returns the string representation

func (*DeleteLexiconInput) SetName

SetName sets the Name field's value.

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
}

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

func (DeleteLexiconOutput) GoString

func (s DeleteLexiconOutput) GoString() string

GoString returns the string representation

func (DeleteLexiconOutput) String

func (s DeleteLexiconOutput) String() string

String returns the string representation

type DescribeVoicesInput

type DescribeVoicesInput struct {

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

	// 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
}

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

func (DescribeVoicesInput) GoString

func (s DescribeVoicesInput) GoString() string

GoString returns the string representation

func (*DescribeVoicesInput) SetLanguageCode

func (s *DescribeVoicesInput) SetLanguageCode(v string) *DescribeVoicesInput

SetLanguageCode sets the LanguageCode field's value.

func (*DescribeVoicesInput) SetNextToken

func (s *DescribeVoicesInput) SetNextToken(v string) *DescribeVoicesInput

SetNextToken sets the NextToken field's value.

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
}

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

func (DescribeVoicesOutput) GoString

func (s DescribeVoicesOutput) GoString() string

GoString returns the string representation

func (*DescribeVoicesOutput) SetNextToken

func (s *DescribeVoicesOutput) SetNextToken(v string) *DescribeVoicesOutput

SetNextToken sets the NextToken field's value.

func (*DescribeVoicesOutput) SetVoices

func (s *DescribeVoicesOutput) SetVoices(v []*Voice) *DescribeVoicesOutput

SetVoices sets the Voices field's value.

func (DescribeVoicesOutput) String

func (s DescribeVoicesOutput) String() string

String returns the string representation

type GetLexiconInput

type GetLexiconInput struct {

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

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

func (GetLexiconInput) GoString

func (s GetLexiconInput) GoString() string

GoString returns the string representation

func (*GetLexiconInput) SetName

func (s *GetLexiconInput) SetName(v string) *GetLexiconInput

SetName sets the Name field's value.

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
}

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

func (GetLexiconOutput) GoString

func (s GetLexiconOutput) GoString() string

GoString returns the string representation

func (*GetLexiconOutput) SetLexicon

func (s *GetLexiconOutput) SetLexicon(v *Lexicon) *GetLexiconOutput

SetLexicon sets the Lexicon field's value.

func (*GetLexiconOutput) SetLexiconAttributes

func (s *GetLexiconOutput) SetLexiconAttributes(v *LexiconAttributes) *GetLexiconOutput

SetLexiconAttributes sets the LexiconAttributes field's value.

func (GetLexiconOutput) String

func (s GetLexiconOutput) String() string

String returns the string representation

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"`
	// 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/). Please also see https://docs.aws.amazon.com/goto/WebAPI/polly-2016-06-10/Lexicon

func (Lexicon) GoString

func (s Lexicon) GoString() string

GoString returns the string representation

func (*Lexicon) SetContent

func (s *Lexicon) SetContent(v string) *Lexicon

SetContent sets the Content field's value.

func (*Lexicon) SetName

func (s *Lexicon) SetName(v string) *Lexicon

SetName sets the Name field's value.

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 *string `type:"string" enum:"LanguageCode"`

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

	// 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 (http://docs.aws.amazon.com/polly/latest/dg/managing-lexicons.html). Please also see https://docs.aws.amazon.com/goto/WebAPI/polly-2016-06-10/LexiconAttributes

func (LexiconAttributes) GoString

func (s LexiconAttributes) GoString() string

GoString returns the string representation

func (*LexiconAttributes) SetAlphabet

func (s *LexiconAttributes) SetAlphabet(v string) *LexiconAttributes

SetAlphabet sets the Alphabet field's value.

func (*LexiconAttributes) SetLanguageCode

func (s *LexiconAttributes) SetLanguageCode(v string) *LexiconAttributes

SetLanguageCode sets the LanguageCode field's value.

func (*LexiconAttributes) SetLastModified

func (s *LexiconAttributes) SetLastModified(v time.Time) *LexiconAttributes

SetLastModified sets the LastModified field's value.

func (*LexiconAttributes) SetLexemesCount

func (s *LexiconAttributes) SetLexemesCount(v int64) *LexiconAttributes

SetLexemesCount sets the LexemesCount field's value.

func (*LexiconAttributes) SetLexiconArn

func (s *LexiconAttributes) SetLexiconArn(v string) *LexiconAttributes

SetLexiconArn sets the LexiconArn field's value.

func (*LexiconAttributes) SetSize

func (s *LexiconAttributes) SetSize(v int64) *LexiconAttributes

SetSize sets the Size field's value.

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"`
	// contains filtered or unexported fields
}

Describes the content of the lexicon. Please also see https://docs.aws.amazon.com/goto/WebAPI/polly-2016-06-10/LexiconDescription

func (LexiconDescription) GoString

func (s LexiconDescription) GoString() string

GoString returns the string representation

func (*LexiconDescription) SetAttributes

SetAttributes sets the Attributes field's value.

func (*LexiconDescription) SetName

SetName sets the Name field's value.

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
}

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

func (ListLexiconsInput) GoString

func (s ListLexiconsInput) GoString() string

GoString returns the string representation

func (*ListLexiconsInput) SetNextToken

func (s *ListLexiconsInput) SetNextToken(v string) *ListLexiconsInput

SetNextToken sets the NextToken field's value.

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
}

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

func (ListLexiconsOutput) GoString

func (s ListLexiconsOutput) GoString() string

GoString returns the string representation

func (*ListLexiconsOutput) SetLexicons

SetLexicons sets the Lexicons field's value.

func (*ListLexiconsOutput) SetNextToken

func (s *ListLexiconsOutput) SetNextToken(v string) *ListLexiconsOutput

SetNextToken sets the NextToken field's value.

func (ListLexiconsOutput) String

func (s ListLexiconsOutput) String() string

String returns the string representation

type Polly

type Polly struct {
	*client.Client
}

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

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

func New

func New(p client.ConfigProvider, cfgs ...*aws.Config) *Polly

New creates a new instance of the Polly client with a session. If additional configuration is needed for the client instance use the optional aws.Config parameter to add your extra config.

Example:

// Create a Polly client from just a session.
svc := polly.New(mySession)

// Create a Polly client with additional configuration
svc := polly.New(mySession, aws.NewConfig().WithRegion("us-west-2"))

func (*Polly) DeleteLexicon

func (c *Polly) DeleteLexicon(input *DeleteLexiconInput) (*DeleteLexiconOutput, error)

DeleteLexicon 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 (http://docs.aws.amazon.com/polly/latest/dg/managing-lexicons.html).

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Polly's API operation DeleteLexicon for usage and error information.

Returned Error Codes:

  • ErrCodeLexiconNotFoundException "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.

  • ErrCodeServiceFailureException "ServiceFailureException" An unknown condition has caused a service failure.

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 (
	"fmt"

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

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

	result, err := svc.DeleteLexicon(input)
	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 (*Polly) DeleteLexiconRequest

func (c *Polly) DeleteLexiconRequest(input *DeleteLexiconInput) (req *request.Request, output *DeleteLexiconOutput)

DeleteLexiconRequest generates a "aws/request.Request" representing the client's request for the DeleteLexicon operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See DeleteLexicon for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the DeleteLexicon method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the DeleteLexiconRequest method.
req, resp := client.DeleteLexiconRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

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

func (*Polly) DeleteLexiconWithContext

func (c *Polly) DeleteLexiconWithContext(ctx aws.Context, input *DeleteLexiconInput, opts ...request.Option) (*DeleteLexiconOutput, error)

DeleteLexiconWithContext is the same as DeleteLexicon with the addition of the ability to pass a context and additional request options.

See DeleteLexicon for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Polly) DescribeVoices

func (c *Polly) DescribeVoices(input *DescribeVoicesInput) (*DescribeVoicesOutput, error)

DescribeVoices 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.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Polly's API operation DescribeVoices for usage and error information.

Returned Error Codes:

  • ErrCodeInvalidNextTokenException "InvalidNextTokenException" The NextToken is invalid. Verify that it's spelled correctly, and then try again.

  • ErrCodeServiceFailureException "ServiceFailureException" An unknown condition has caused a service failure.

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 (
	"fmt"

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

func main() {
	svc := polly.New(session.New())
	input := &polly.DescribeVoicesInput{
		LanguageCode: aws.String("en-GB"),
	}

	result, err := svc.DescribeVoices(input)
	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 (*Polly) DescribeVoicesRequest

func (c *Polly) DescribeVoicesRequest(input *DescribeVoicesInput) (req *request.Request, output *DescribeVoicesOutput)

DescribeVoicesRequest generates a "aws/request.Request" representing the client's request for the DescribeVoices operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See DescribeVoices for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the DescribeVoices method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the DescribeVoicesRequest method.
req, resp := client.DescribeVoicesRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

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

func (*Polly) DescribeVoicesWithContext

func (c *Polly) DescribeVoicesWithContext(ctx aws.Context, input *DescribeVoicesInput, opts ...request.Option) (*DescribeVoicesOutput, error)

DescribeVoicesWithContext is the same as DescribeVoices with the addition of the ability to pass a context and additional request options.

See DescribeVoices for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Polly) GetLexicon

func (c *Polly) GetLexicon(input *GetLexiconInput) (*GetLexiconOutput, error)

GetLexicon API operation for Amazon Polly.

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

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Polly's API operation GetLexicon for usage and error information.

Returned Error Codes:

  • ErrCodeLexiconNotFoundException "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.

  • ErrCodeServiceFailureException "ServiceFailureException" An unknown condition has caused a service failure.

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 (
	"fmt"

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

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

	result, err := svc.GetLexicon(input)
	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 (*Polly) GetLexiconRequest

func (c *Polly) GetLexiconRequest(input *GetLexiconInput) (req *request.Request, output *GetLexiconOutput)

GetLexiconRequest generates a "aws/request.Request" representing the client's request for the GetLexicon operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See GetLexicon for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the GetLexicon method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the GetLexiconRequest method.
req, resp := client.GetLexiconRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

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

func (*Polly) GetLexiconWithContext

func (c *Polly) GetLexiconWithContext(ctx aws.Context, input *GetLexiconInput, opts ...request.Option) (*GetLexiconOutput, error)

GetLexiconWithContext is the same as GetLexicon with the addition of the ability to pass a context and additional request options.

See GetLexicon for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Polly) ListLexicons

func (c *Polly) ListLexicons(input *ListLexiconsInput) (*ListLexiconsOutput, error)

ListLexicons API operation for Amazon Polly.

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

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Polly's API operation ListLexicons for usage and error information.

Returned Error Codes:

  • ErrCodeInvalidNextTokenException "InvalidNextTokenException" The NextToken is invalid. Verify that it's spelled correctly, and then try again.

  • ErrCodeServiceFailureException "ServiceFailureException" An unknown condition has caused a service failure.

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 (
	"fmt"

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

func main() {
	svc := polly.New(session.New())
	input := &polly.ListLexiconsInput{}

	result, err := svc.ListLexicons(input)
	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 (*Polly) ListLexiconsRequest

func (c *Polly) ListLexiconsRequest(input *ListLexiconsInput) (req *request.Request, output *ListLexiconsOutput)

ListLexiconsRequest generates a "aws/request.Request" representing the client's request for the ListLexicons operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See ListLexicons for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the ListLexicons method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the ListLexiconsRequest method.
req, resp := client.ListLexiconsRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

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

func (*Polly) ListLexiconsWithContext

func (c *Polly) ListLexiconsWithContext(ctx aws.Context, input *ListLexiconsInput, opts ...request.Option) (*ListLexiconsOutput, error)

ListLexiconsWithContext is the same as ListLexicons with the addition of the ability to pass a context and additional request options.

See ListLexicons for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Polly) PutLexicon

func (c *Polly) PutLexicon(input *PutLexiconInput) (*PutLexiconOutput, error)

PutLexicon 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 (http://docs.aws.amazon.com/polly/latest/dg/managing-lexicons.html).

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Polly's API operation PutLexicon for usage and error information.

Returned Error Codes:

  • ErrCodeInvalidLexiconException "InvalidLexiconException" Amazon Polly can't find the specified lexicon. Verify that the lexicon's name is spelled correctly, and then try again.

  • ErrCodeUnsupportedPlsAlphabetException "UnsupportedPlsAlphabetException" The alphabet specified by the lexicon is not a supported alphabet. Valid values are x-sampa and ipa.

  • ErrCodeUnsupportedPlsLanguageException "UnsupportedPlsLanguageException" The language specified in the lexicon is unsupported. For a list of supported languages, see Lexicon Attributes (http://docs.aws.amazon.com/polly/latest/dg/API_LexiconAttributes.html).

  • ErrCodeLexiconSizeExceededException "LexiconSizeExceededException" The maximum size of the specified lexicon would be exceeded by this operation.

  • ErrCodeMaxLexemeLengthExceededException "MaxLexemeLengthExceededException" The maximum size of the lexeme would be exceeded by this operation.

  • ErrCodeMaxLexiconsNumberExceededException "MaxLexiconsNumberExceededException" The maximum number of lexicons would be exceeded by this operation.

  • ErrCodeServiceFailureException "ServiceFailureException" An unknown condition has caused a service failure.

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 (
	"fmt"

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

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

	result, err := svc.PutLexicon(input)
	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 (*Polly) PutLexiconRequest

func (c *Polly) PutLexiconRequest(input *PutLexiconInput) (req *request.Request, output *PutLexiconOutput)

PutLexiconRequest generates a "aws/request.Request" representing the client's request for the PutLexicon operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See PutLexicon for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the PutLexicon method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the PutLexiconRequest method.
req, resp := client.PutLexiconRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

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

func (*Polly) PutLexiconWithContext

func (c *Polly) PutLexiconWithContext(ctx aws.Context, input *PutLexiconInput, opts ...request.Option) (*PutLexiconOutput, error)

PutLexiconWithContext is the same as PutLexicon with the addition of the ability to pass a context and additional request options.

See PutLexicon for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Polly) SynthesizeSpeech

func (c *Polly) SynthesizeSpeech(input *SynthesizeSpeechInput) (*SynthesizeSpeechOutput, error)

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

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Polly's API operation SynthesizeSpeech for usage and error information.

Returned Error Codes:

  • ErrCodeTextLengthExceededException "TextLengthExceededException" The value of the "Text" parameter is longer than the accepted limits. The limit for input text is a maximum of 3000 characters total, of which no more than 1500 can be billed characters. SSML tags are not counted as billed characters.

  • ErrCodeInvalidSampleRateException "InvalidSampleRateException" The specified sample rate is not valid.

  • ErrCodeInvalidSsmlException "InvalidSsmlException" The SSML you provided is invalid. Verify the SSML syntax, spelling of tags and values, and then try again.

  • ErrCodeLexiconNotFoundException "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.

  • ErrCodeServiceFailureException "ServiceFailureException" An unknown condition has caused a service failure.

  • ErrCodeMarksNotSupportedForFormatException "MarksNotSupportedForFormatException" Speech marks are not supported for the OutputFormat selected. Speech marks are only available for content in json format.

  • ErrCodeSsmlMarksNotSupportedForTextTypeException "SsmlMarksNotSupportedForTextTypeException" SSML speech marks are not supported for plain text-type input.

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 (
	"fmt"

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

func main() {
	svc := polly.New(session.New())
	input := &polly.SynthesizeSpeechInput{
		LexiconNames: []*string{
			aws.String("example"),
		},
		OutputFormat: aws.String("mp3"),
		SampleRate:   aws.String("8000"),
		Text:         aws.String("All Gaul is divided into three parts"),
		TextType:     aws.String("text"),
		VoiceId:      aws.String("Joanna"),
	}

	result, err := svc.SynthesizeSpeech(input)
	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())
			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 (*Polly) SynthesizeSpeechRequest

func (c *Polly) SynthesizeSpeechRequest(input *SynthesizeSpeechInput) (req *request.Request, output *SynthesizeSpeechOutput)

SynthesizeSpeechRequest generates a "aws/request.Request" representing the client's request for the SynthesizeSpeech operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See SynthesizeSpeech for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the SynthesizeSpeech method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the SynthesizeSpeechRequest method.
req, resp := client.SynthesizeSpeechRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

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

func (*Polly) SynthesizeSpeechWithContext

func (c *Polly) SynthesizeSpeechWithContext(ctx aws.Context, input *SynthesizeSpeechInput, opts ...request.Option) (*SynthesizeSpeechOutput, error)

SynthesizeSpeechWithContext is the same as SynthesizeSpeech with the addition of the ability to pass a context and additional request options.

See SynthesizeSpeech for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

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"`
	// contains filtered or unexported fields
}

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

func (PutLexiconInput) GoString

func (s PutLexiconInput) GoString() string

GoString returns the string representation

func (*PutLexiconInput) SetContent

func (s *PutLexiconInput) SetContent(v string) *PutLexiconInput

SetContent sets the Content field's value.

func (*PutLexiconInput) SetName

func (s *PutLexiconInput) SetName(v string) *PutLexiconInput

SetName sets the Name field's value.

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
}

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

func (PutLexiconOutput) GoString

func (s PutLexiconOutput) GoString() string

GoString returns the string representation

func (PutLexiconOutput) String

func (s PutLexiconOutput) String() string

String returns the string representation

type SynthesizeSpeechInput

type SynthesizeSpeechInput struct {

	// 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 (http://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.
	//
	// OutputFormat is a required field
	OutputFormat *string `type:"string" required:"true" enum:"OutputFormat"`

	// The audio frequency specified in Hz.
	//
	// The valid values for mp3 and ogg_vorbis are "8000", "16000", and "22050".
	// The default value is "22050".
	//
	// 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 []*string `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 (http://docs.aws.amazon.com/polly/latest/dg/ssml.html).
	TextType *string `type:"string" enum:"TextType"`

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

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

func (SynthesizeSpeechInput) GoString

func (s SynthesizeSpeechInput) GoString() string

GoString returns the string representation

func (*SynthesizeSpeechInput) SetLexiconNames

func (s *SynthesizeSpeechInput) SetLexiconNames(v []*string) *SynthesizeSpeechInput

SetLexiconNames sets the LexiconNames field's value.

func (*SynthesizeSpeechInput) SetOutputFormat

func (s *SynthesizeSpeechInput) SetOutputFormat(v string) *SynthesizeSpeechInput

SetOutputFormat sets the OutputFormat field's value.

func (*SynthesizeSpeechInput) SetSampleRate

func (s *SynthesizeSpeechInput) SetSampleRate(v string) *SynthesizeSpeechInput

SetSampleRate sets the SampleRate field's value.

func (*SynthesizeSpeechInput) SetSpeechMarkTypes

func (s *SynthesizeSpeechInput) SetSpeechMarkTypes(v []*string) *SynthesizeSpeechInput

SetSpeechMarkTypes sets the SpeechMarkTypes field's value.

func (*SynthesizeSpeechInput) SetText

SetText sets the Text field's value.

func (*SynthesizeSpeechInput) SetTextType

SetTextType sets the TextType field's value.

func (*SynthesizeSpeechInput) SetVoiceId

SetVoiceId sets the VoiceId field's value.

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
}

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

func (SynthesizeSpeechOutput) GoString

func (s SynthesizeSpeechOutput) GoString() string

GoString returns the string representation

func (*SynthesizeSpeechOutput) SetAudioStream

SetAudioStream sets the AudioStream field's value.

func (*SynthesizeSpeechOutput) SetContentType

SetContentType sets the ContentType field's value.

func (*SynthesizeSpeechOutput) SetRequestCharacters

func (s *SynthesizeSpeechOutput) SetRequestCharacters(v int64) *SynthesizeSpeechOutput

SetRequestCharacters sets the RequestCharacters field's value.

func (SynthesizeSpeechOutput) String

func (s SynthesizeSpeechOutput) String() string

String returns the string representation

type Voice

type Voice struct {

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

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

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

	// 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"`
	// contains filtered or unexported fields
}

Description of the voice. Please also see https://docs.aws.amazon.com/goto/WebAPI/polly-2016-06-10/Voice

func (Voice) GoString

func (s Voice) GoString() string

GoString returns the string representation

func (*Voice) SetGender

func (s *Voice) SetGender(v string) *Voice

SetGender sets the Gender field's value.

func (*Voice) SetId

func (s *Voice) SetId(v string) *Voice

SetId sets the Id field's value.

func (*Voice) SetLanguageCode

func (s *Voice) SetLanguageCode(v string) *Voice

SetLanguageCode sets the LanguageCode field's value.

func (*Voice) SetLanguageName

func (s *Voice) SetLanguageName(v string) *Voice

SetLanguageName sets the LanguageName field's value.

func (*Voice) SetName

func (s *Voice) SetName(v string) *Voice

SetName sets the Name field's value.

func (Voice) String

func (s Voice) String() string

String returns the string representation

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