StartSpeechSynthesisTask
Consente la creazione di un'attività di sintesi asincrona, avviando un nuovo SpeechSynthesisTask
. Questa operazione richiede tutte le informazioni standard necessarie per la sintesi vocale, oltre al nome di un bucket Amazon S3 affinché il servizio archivi l'output dell'attività di sintesi e due parametri opzionali (OutputS3KeyPrefix
e SnsTopicArn
). Una volta creata l'attività di sintesi, questa operazione restituirà un oggetto SpeechSynthesisTask
, che includerà un identificatore di questa attività e lo stato corrente. L'oggetto SpeechSynthesisTask
è disponibile per 72 ore dopo l'avvio dell'attività di sintesi asincrona.
Sintassi della richiesta
POST /v1/synthesisTasks HTTP/1.1
Content-type: application/json
{
"Engine": "string
",
"LanguageCode": "string
",
"LexiconNames": [ "string
" ],
"OutputFormat": "string
",
"OutputS3BucketName": "string
",
"OutputS3KeyPrefix": "string
",
"SampleRate": "string
",
"SnsTopicArn": "string
",
"SpeechMarkTypes": [ "string
" ],
"Text": "string
",
"TextType": "string
",
"VoiceId": "string
"
}
Parametri della richiesta URI:
La richiesta non utilizza parametri URI.
Corpo della richiesta
La richiesta accetta i seguenti dati in formato JSON.
- Engine
-
Specifica il motore (
standard
oneural
) per Amazon Polly da utilizzare durante l'elaborazione del testo di input per la sintesi vocale. Se si utilizza una voce non supportata per il motore selezionato, si verificherà un errore.Tipo: string
Valori validi:
standard | neural
Required: No
- LanguageCode
-
Codice lingua facoltativo per la richiesta di sintesi vocale. Ciò è necessario solo se si utilizza una voce bilingue, come Aditi, che può essere utilizzata sia per l'inglese indiano (en-IN) che per l'hindi (hi-IN).
Se viene utilizzata una voce bilingue e non viene specificato alcun codice lingua, Amazon Polly utilizza la lingua predefinita della voce bilingue. La lingua predefinita per qualsiasi voce è quella restituita dall'operazione DescribeVoices per il parametro
LanguageCode
. Ad esempio, se non viene specificato alcun codice di lingua, Aditi utilizzerà l'inglese indiano anziché l'hindi.Tipo: string
Valori validi:
arb | cmn-CN | cy-GB | da-DK | de-DE | en-AU | en-GB | en-GB-WLS | en-IN | en-US | es-ES | es-MX | es-US | fr-CA | fr-FR | is-IS | it-IT | ja-JP | hi-IN | ko-KR | nb-NO | nl-NL | pl-PL | pt-BR | pt-PT | ro-RO | ru-RU | sv-SE | tr-TR | en-NZ | en-ZA
Required: No
- LexiconNames
-
Elenco di uno o più nomi di lessico di pronuncia che si desidera applicare il servizio durante la sintesi. I lessici vengono applicati solo se la lingua del lessico corrisponde alla lingua della voce.
Tipo: matrice di stringhe
Membri della matrice: numero massimo di 5 elementi.
Modello:
[0-9A-Za-z]{1,20}
Required: No
- OutputFormat
-
Il formato in cui verrà codificato l'output restituito. Per il flusso audio, questo sarà mp3, ogg_vorbis, o pcm. Per i segni vocali, questo sarà json.
Tipo: string
Valori validi:
json | mp3 | ogg_vorbis | pcm
Campo obbligatorio: sì
- OutputS3BucketName
-
Nome del bucket Amazon S3 in cui viene salvato il file di output.
Tipo: string
Pattern:
^[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9]$
Campo obbligatorio: sì
- OutputS3KeyPrefix
-
Prefisso della chiave Amazon S3 per il file vocale di output.
Tipo: string
Modello:
^[0-9a-zA-Z\/\!\-_\.\*\'\(\):;\$@=+\,\?&]{0,800}$
Required: No
- SampleRate
-
La frequenza audio specificata in Hz.
I valori validi per mp3 e ogg_vorbis sono "8000", "16000", "22050" e "24000". Il valore predefinito per le voci standard è "22050". Il valore predefinito per le voci neurali è "24000".
I valori validi per pcm sono "8000" e "16000". Il valore predefinito è "16000".
Tipo: string
Required: No
- SnsTopicArn
-
ARN per l'argomento SNS utilizzato facoltativamente per la notifica di stato per un'attività di sintesi vocale.
Tipo: string
Modello:
^arn:aws(-(cn|iso(-b)?|us-gov))?:sns:[a-z0-9_-]{1,50}:\d{12}:[a-zA-Z0-9_-]{1,256}$
Required: No
- SpeechMarkTypes
-
Tipo di segni vocali restituiti per il testo di input.
Tipo: matrice di stringhe
Membri della matrice: numero massimo di 4 elementi.
Valori validi:
sentence | ssml | viseme | word
Required: No
- Text
-
Testo di input da sintetizzare. Se si specifica ssml come TextType, seguire il formato SSML per il testo di input.
Tipo: string
Campo obbligatorio: sì
- TextType
-
Specifica se il testo di input è testo normale o SSML. Il valore di default è testo normale.
Tipo: string
Valori validi:
ssml | text
Required: No
- VoiceId
-
ID vocale da utilizzare per la sintesi.
Tipo: string
Valori validi:
Aditi | Amy | Astrid | Bianca | Brian | Camila | Carla | Carmen | Celine | Chantal | Conchita | Cristiano | Dora | Emma | Enrique | Ewa | Filiz | Gabrielle | Geraint | Giorgio | Gwyneth | Hans | Ines | Ivy | Jacek | Jan | Joanna | Joey | Justin | Karl | Kendra | Kevin | Kimberly | Lea | Liv | Lotte | Lucia | Lupe | Mads | Maja | Marlene | Mathieu | Matthew | Maxim | Mia | Miguel | Mizuki | Naja | Nicole | Olivia | Penelope | Raveena | Ricardo | Ruben | Russell | Salli | Seoyeon | Takumi | Tatyana | Vicki | Vitoria | Zeina | Zhiyu | Aria | Ayanda
Campo obbligatorio: sì
Sintassi della risposta
HTTP/1.1 200
Content-type: application/json
{
"SynthesisTask": {
"CreationTime": number,
"Engine": "string",
"LanguageCode": "string",
"LexiconNames": [ "string" ],
"OutputFormat": "string",
"OutputUri": "string",
"RequestCharacters": number,
"SampleRate": "string",
"SnsTopicArn": "string",
"SpeechMarkTypes": [ "string" ],
"TaskId": "string",
"TaskStatus": "string",
"TaskStatusReason": "string",
"TextType": "string",
"VoiceId": "string"
}
}
Elementi di risposta
Se l'operazione riesce, il servizio restituisce una risposta HTTP 200.
I dati seguenti vengono restituiti in formato JSON mediante il servizio.
- SynthesisTask
-
Oggetto SynthesisTask che fornisce informazioni e attributi su un'attività di sintesi vocale appena inviata.
Tipo: SynthesisTask oggetto
Errori
- EngineNotSupportedException
-
Questo motore non è compatibile con la voce designata. Scegli una nuova voce compatibile con il motore o cambia il motore e riavvia l'operazione.
Codice di stato HTTP: 400
- InvalidS3BucketException
-
Il nome del bucket Amazon S3 non è valido. Controlla il tuo input con i requisiti di denominazione del S3 Bucket e riprova.
Codice di stato HTTP: 400
- InvalidS3KeyException
-
Il prefisso della chiave Amazon S3 non è valido. Fornisci un nome chiave oggetto S3 valido.
Codice di stato HTTP: 400
- InvalidSampleRateException
-
La frequenza di campionamento specificata non è valida.
Codice di stato HTTP: 400
- InvalidSnsTopicArnException
-
L'ARN dell'argomento SNS fornito non è valido. Fornisci un ARN di argomento SNS valido e riprova.
Codice di stato HTTP: 400
- InvalidSsmlException
-
L'SSML fornito non è valido. Verifica la sintassi SSML, l'ortografia dei tag e dei valori, quindi riprova.
Codice di stato HTTP: 400
- LanguageNotSupportedException
-
La lingua specificata non è attualmente supportata da Amazon Polly in questa capacità.
Codice di stato HTTP: 400
- LexiconNotFoundException
-
Amazon Polly non è in grado di individuare il lessico specificato. Ciò potrebbe essere causato da un lessico mancante, il suo nome è errato o specificando un lessico che si trova in una regione diversa.
Verificare che il lessico esista, sia nella regione (consulta ListLexicons) e che hai digitato il suo nome sia corretto. Allora try again.
Codice di stato HTTP: 404
- MarksNotSupportedForFormatException
-
I contrassegni vocali non sono supportati per
OutputFormat
selezionato. I contrassegni vocali sono disponibili solo per il contenuto in formatojson
.Codice di stato HTTP: 400
- ServiceFailureException
-
Una condizione sconosciuta ha causato un errore di servizio.
Codice di stato HTTP: 500
- SsmlMarksNotSupportedForTextTypeException
-
I contrassegni vocali SSML non sono supportati per l'input di tipo testo normale.
Codice di stato HTTP: 400
- TextLengthExceededException
-
Il valore del parametro "Testo" è più lungo dei limiti accettati. Per il API
SynthesizeSpeech
, il limite per il testo di input è un massimo di 6000 caratteri totali, di cui non più di 3000 caratteri possono essere fatturati. Per il APIStartSpeechSynthesisTask
, il massimo è 200.000 caratteri, di cui non più di 100.000 caratteri possono essere fatturati. I tag SSML non vengono conteggiati come caratteri fatturati.Codice di stato HTTP: 400
Vedi anche
Per ulteriori informazioni sull'utilizzo di questa API in uno degli SDK AWS specifici della lingua, consulta quanto segue: