Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
SynthesizeSpeech
Sintetiza la entrada UTF-8, texto sin formato o SSML, en una secuencia de bytes. La entrada SSML debe ser un SSML válido y bien formado. Es posible que algunos alfabetos no estén disponibles con todas las voces (por ejemplo, es posible que las voces en inglés no lean en absoluto el cirílico) a menos que se utilice el mapeo de fonemas. Para obtener más información, consulte Cómo funciona.
Sintaxis de la solicitud
POST /v1/speech HTTP/1.1
Content-type: application/json
{
"Engine": "string
",
"LanguageCode": "string
",
"LexiconNames": [ "string
" ],
"OutputFormat": "string
",
"SampleRate": "string
",
"SpeechMarkTypes": [ "string
" ],
"Text": "string
",
"TextType": "string
",
"VoiceId": "string
"
}
Parámetros de solicitud del URI
La solicitud no utiliza ningún parámetro de URI.
Cuerpo de la solicitud
La solicitud acepta los siguientes datos en formato JSON.
- Engine
-
Especifica el motor (
standard
,neural
long-form
, ogenerative
) que Amazon Polly utilizará al procesar el texto de entrada para la síntesis de voz. Proporcione un motor que sea compatible con la voz que seleccione. Si no proporciona un motor, se selecciona el motor estándar de forma predeterminada. Si una voz elegida no es compatible con el motor estándar, se producirá un error. Para obtener información sobre las voces de Amazon Polly y qué voces están disponibles para cada motor, consulte Voces disponibles.Tipo: cadena
Valores válidos:
standard
|neural
|long-form
|generative
Obligatorio: sí
Tipo: cadena
Valores válidos:
standard | neural | long-form | generative
Obligatorio: no
- LanguageCode
-
Código de idioma opcional para la solicitud de sintetizar voz. Esto solo es necesario si se utiliza una voz bilingüe, como Aditi, que se puede utilizar tanto en inglés indio (en-IN) como en hindi (hi-IN).
Si se utiliza una voz bilingüe y no se especifica ningún código de idioma, Amazon Polly utilizará el idioma predeterminado de la voz bilingüe. El idioma predeterminado de cualquier voz es el que devuelve la DescribeVoicesoperación para el
LanguageCode
parámetro. Por ejemplo, si no se especifica ningún código de idioma, Aditi utilizará el inglés indio en lugar del hindi.Tipo: cadena
Valores válidos:
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
Obligatorio: no
- LexiconNames
-
Enumere uno o más nombres de lexicones de pronunciación que desee que el servicio aplique durante la síntesis. Los lexicones solamente se aplican al texto si el idioma especificado en ellos es el mismo que el idioma elegido. Para obtener información sobre el almacenamiento de léxicos, consulte PutLexicon.
Tipo: matriz de cadenas
Miembros de la matriz: número máximo de 5 elementos.
Patrón:
[0-9A-Za-z]{1,20}
Obligatorio: no
- OutputFormat
-
Formato en el que se codificará la salida devuelta. Para la transmisión de audio, será mp3, ogg_vorbis o pcm. Para las marcas de voz, será json.
Cuando se usa pcm, el contenido devuelto es audio/pcm en un formato firmado de 16 bits, 1 canal (mono), little-endian.
Tipo: cadena
Valores válidos:
json | mp3 | ogg_vorbis | pcm
Obligatorio: sí
- SampleRate
-
La frecuencia de audio especificada en Hz.
Los valores válidos para mp3 y ogg_vorbis son “8000”, “16 000”, “22 050” y “24 000”. El valor predeterminado para las voces estándar es “22 050". El valor predeterminado para las voces neuronales es "24 000". El valor predeterminado para las voces de formato largo es “24 000”. El valor predeterminado para las voces generativas es «24000".
Los valores válidos para el pcm son "8000" y "16 000". El valor por defecto es "16 000".
Tipo: cadena
Requerido: no
- SpeechMarkTypes
-
El tipo de marcas de voz devueltas para el texto de entrada.
Tipo: matriz de cadenas
Miembros de la matriz: número máximo de 4 elementos.
Valores válidos:
sentence | ssml | viseme | word
Obligatorio: no
- Text
-
Introduzca el texto para sintetizarlo. Si especifica
ssml
como elTextType
, siga el formato SSML para el texto de entrada.Tipo: cadena
Obligatorio: sí
- TextType
-
Especifica si el texto de entrada es texto sin formato o SSML. El valor predeterminado es texto sin formato. Para obtener más información, consulte Uso de SSML.
Tipo: cadena
Valores válidos:
ssml | text
Obligatorio: no
- VoiceId
-
ID de voz que se usará para la síntesis. Puede obtener una lista de los identificadores de voz disponibles llamando a la operación. DescribeVoices
Tipo: cadena
Valores válidos:
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
Obligatorio: sí
Sintaxis de la respuesta
HTTP/1.1 200
Content-Type: ContentType
x-amzn-RequestCharacters: RequestCharacters
AudioStream
Elementos de respuesta
Si la acción se realiza correctamente, el servicio devuelve una respuesta HTTP 200.
La respuesta devuelve los siguientes encabezados HTTP.
- ContentType
-
Especifica el tipo de transmisión de audio. Esto debería reflejar el
OutputFormat
del parámetro de su solicitud.-
Si solicita
mp3
como elOutputFormat
, elContentType
resultante es audio/mpeg. -
Si solicita
ogg_vorbis
como elOutputFormat
, elContentType
resultante es audio/ogg. -
Si solicita
pcm
como elOutputFormat
, elContentType
resultante es audio/pcm en un formato little-endian firmado de 16 bits y 1 canal (mono). -
Si lo solicita
json
comoOutputFormat
, el resultadoContentType
es application/x-json-stream.
-
- RequestCharacters
-
Número de caracteres sintetizados.
La respuesta devuelve lo siguiente como el cuerpo HTTP.
- AudioStream
-
Secuencia que contiene la voz sintetizada.
Errores
- EngineNotSupportedException
-
Este motor no es compatible con la voz que ha designado. Elija una voz nueva que sea compatible con el motor o cámbielo y reinicie la operación.
Código de estado HTTP: 400
- InvalidSampleRateException
-
La frecuencia de muestreo especificada no es válida.
Código de estado HTTP: 400
- InvalidSsmlException
-
El SSML que ha proporcionado no es válido. Compruebe la sintaxis de SSML y la ortografía de las etiquetas y los valores y, a continuación, vuelva a intentarlo.
Código de estado HTTP: 400
- LanguageNotSupportedException
-
Actualmente, el idioma especificado en esta capacidad no es compatible con Amazon Polly.
Código de estado HTTP: 400
- LexiconNotFoundException
-
Amazon Polly no encuentra el lexicón especificado. Esto puede deberse a la falta de un lexicón, a que su nombre esté mal escrito o a que se especifique un lexicón que se encuentra en una región diferente.
Compruebe que el lexicón existe, se encuentra en la región (consulte ListLexicons) y que ha escrito su nombre correctamente. Inténtelo de nuevo.
Código de estado HTTP: 404
- MarksNotSupportedForFormatException
-
Las marcas de voz no son compatibles con el
OutputFormat
seleccionado. Las marcas de voz solo están disponibles para el contenido en formatojson
.Código de estado HTTP: 400
- ServiceFailureException
-
Una condición desconocida ha provocado un fallo en el servicio.
Código de estado HTTP: 500
- SsmlMarksNotSupportedForTextTypeException
-
Las marcas de voz SSML no son compatibles con la entrada de texto simple.
Código de estado HTTP: 400
- TextLengthExceededException
-
El valor del parámetro "Text" supera los límites aceptados. Para la API
SynthesizeSpeech
, el límite de entrada de texto es de un máximo de 6000 caracteres en total, de los cuales no se pueden facturar más de 3000 caracteres. Para la APIStartSpeechSynthesisTask
, el máximo es de 200 000 caracteres, de los cuales no se pueden facturar más de 100 000 caracteres. Las etiquetas SSML no cuentan como caracteres contabilizados.Código de estado HTTP: 400
Véase también
Para obtener más información sobre el uso de esta API en uno de los AWS SDK específicos del idioma, consulta lo siguiente: