StartSpeechSynthesisStream - Amazon Polly

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

StartSpeechSynthesisStream

Synthèse l'entrée UTF-8, le texte brut ou le SSML via une connexion de streaming bidirectionnelle. Spécifiez les paramètres de synthèse dans les en-têtes HTTP/2, envoyez du texte de manière incrémentielle sous forme d'événements sur le flux d'entrée et recevez le son synthétisé dès qu'il est disponible.

Cette opération sert de contrepartie bidirectionnelle à SynthesizeSpeech :

Syntaxe de la demande

POST /v1/synthesisStream HTTP/1.1 x-amzn-Engine: Engine x-amzn-LanguageCode: LanguageCode x-amzn-LexiconNames: LexiconNames x-amzn-OutputFormat: OutputFormat x-amzn-SampleRate: SampleRate x-amzn-VoiceId: VoiceId Content-type: application/json { "CloseStreamEvent": { }, "TextEvent": { "FlushStreamConfiguration": { "Force": boolean }, "Text": "string", "TextType": "string" } }

Paramètres de demande URI

La demande utilise les paramètres URI suivants.

Engine

Spécifie le moteur qu'Amazon Polly doit utiliser lors du traitement du texte d'entrée pour la synthèse vocale. Actuellement, seul le generative moteur est pris en charge. Si vous spécifiez une voix que le moteur sélectionné ne prend pas en charge, Amazon Polly renvoie un message d'erreur.

Valeurs valides : standard | neural | long-form | generative

Obligatoire : oui

LanguageCode

Paramètre facultatif qui définit le code de langue pour la demande de synthèse vocale. Spécifiez ce paramètre uniquement si vous utilisez une voix bilingue. Si une voix bilingue est utilisée et qu'aucun code de langue n'est spécifié, Amazon Polly utilise la langue par défaut de la voix bilingue.

Valeurs valides : 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 | ca-ES | de-AT | yue-CN | ar-AE | fi-FI | en-IE | nl-BE | fr-BE | cs-CZ | de-CH | en-SG

LexiconNames

Les noms d'un ou de plusieurs lexiques de prononciation que le service doit appliquer lors de la synthèse. Amazon Polly applique les lexiques uniquement lorsque la langue du lexique correspond à la langue vocale.

Membres du tableau : Nombre maximum de 5 éléments.

Modèle : [0-9A-Za-z]{1,20}

OutputFormat

Format audio du discours synthétisé. Actuellement, Amazon Polly ne prend pas en charge les marques vocales JSON.

Valeurs valides : json | mp3 | ogg_opus | ogg_vorbis | pcm

Obligatoire : oui

SampleRate

Fréquence audio, spécifiée en Hz.

VoiceId

La voix à utiliser en synthèse. Pour obtenir la liste des voix disponibles IDs, utilisez l'DescribeVoicesopération.

Valeurs valides : 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 | Arlet | Hannah | Arthur | Daniel | Liam | Pedro | Kajal | Hiujin | Laura | Elin | Ida | Suvi | Ola | Hala | Andres | Sergio | Remi | Adriano | Thiago | Ruth | Stephen | Kazuha | Tomoko | Niamh | Sofie | Lisa | Isabelle | Zayd | Danielle | Gregory | Burcu | Jitka | Sabrina | Jasmine | Jihye | Ambre | Beatrice | Florian | Lennart | Lorenzo | Tiffany

Obligatoire : oui

Corps de la demande

Cette demande accepte les données suivantes au format JSON.

CloseStreamEvent

Un événement indiquant la fin du flux d'entrée.

Type : objet CloseStreamEvent

Obligatoire : non

TextEvent

Un événement de texte contenant du contenu à synthétiser.

Type : objet TextEvent

Obligatoire : non

Syntaxe de la réponse

HTTP/1.1 200 Content-type: application/json { "AudioEvent": { "AudioChunk": blob }, "ServiceFailureException": { }, "ServiceQuotaExceededException": { }, "StreamClosedEvent": { "RequestCharacters": number }, "ThrottlingException": { }, "ValidationException": { } }

Eléments de réponse

Si l’action aboutit, le service renvoie une réponse HTTP 200.

Les données suivantes sont renvoyées au format JSON par le service.

AudioEvent

Un événement audio contenant de la parole synthétisée.

Type : objet AudioEvent

ServiceFailureException

Une situation inconnue a provoqué une panne de service.

Type : Exception

Code d’état HTTP : 500

ServiceQuotaExceededException

Une exception indiquant qu'un quota de service serait dépassé.

Type : Exception

Code d'état HTTP : 402

StreamClosedEvent

Un événement, avec des informations récapitulatives, indiquant que le stream est fermé.

Type : objet StreamClosedEvent

ThrottlingException

Exception indiquant que la demande a été limitée.

Type : Exception

Code d’état HTTP : 400

ValidationException

Exception indiquant que la validation de l'entrée a échoué.

Type : Exception

Code d’état HTTP : 400

Erreurs

ServiceFailureException

Une situation inconnue a provoqué une panne de service.

Code d’état HTTP : 500

ServiceQuotaExceededException

La demande entraînerait le dépassement d'un quota de service.

quotaCode

Le code de quota identifiant le quota spécifique.

serviceCode

Le code de service identifiant le service d'origine.

Code d'état HTTP : 402

ThrottlingException

La demande a été refusée en raison de la limitation des demandes.

throttlingReasons

Une liste des raisons expliquant pourquoi la demande a été limitée.

Code d’état HTTP : 400

ValidationException

L'entrée ne satisfait pas les contraintes spécifiées par le service.

fields

Les champs à l'origine de l'erreur de validation.

reason

La raison pour laquelle la demande n'a pas pu être validée.

Code d’état HTTP : 400

Voir aussi

Pour plus d'informations sur l'utilisation de cette API dans l'un des langages spécifiques AWS SDKs, consultez ce qui suit :