La guía de API referencia de la versión AWS SDK for JavaScript 3 describe en detalle todas las API operaciones de la AWS SDK for JavaScript versión 3 (V3).
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.
Ejemplos de Amazon Polly
Este ejemplo de código de Node.js muestra:
-
Cargue el audio grabado con Amazon Polly a Amazon S3
El escenario
En este ejemplo, se utilizan una serie de módulos de Node.js para cargar automáticamente el audio grabado con Amazon Polly a Amazon S3 mediante estos métodos de la clase de cliente de Amazon S3:
Tareas previas necesarias
Para configurar y ejecutar este ejemplo, primero debe completar estas tareas:
-
Configure un entorno de proyecto para ejecutar JavaScript ejemplos de Node siguiendo las instrucciones de GitHub
. -
Cree un archivo de configuraciones compartidas con sus credenciales de usuario. Para obtener más información sobre cómo proporcionar un archivo de credenciales compartido, consulte los archivos de configuración y credenciales compartidos en la Guía de referencia de AWS SDKs and Tools.
Cree una AWS Identity and Access Management (IAM) política de roles de usuario de Amazon Cognito no autenticadaSynthesizeSpeech : permisos y un grupo de identidades de Amazon Cognito con la función asociada. IAM En la siguiente sección Cree los AWS recursos mediante AWS CloudFormation, se describe cómo crear estos recursos.
nota
En este ejemplo se utiliza Amazon Cognito, pero si no utiliza Amazon Cognito, el usuario debe tener la siguiente AWS política de permisos IAM
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "mobileanalytics:PutEvents", "cognito-sync:*" ], "Resource": "*", "Effect": "Allow" }, { "Action": "polly:SynthesizeSpeech", "Resource": "*", "Effect": "Allow" } ] }
Cree los AWS recursos mediante AWS CloudFormation
AWS CloudFormation le permite crear y aprovisionar despliegues de AWS infraestructura de forma predecible y repetitiva. Para obtener más información al respecto AWS CloudFormation, consulte la Guía del AWS CloudFormation usuario.
Para crear la AWS CloudFormation pila:
Instale y configure las AWS CLI siguientes instrucciones de la Guía del AWS CLI usuario.
Cree un archivo con un nombre
setup.yaml
en el directorio raíz de la carpeta de su proyecto y copie el contenido GitHub enél. nota
La AWS CloudFormation plantilla se generó utilizando lo que AWS CDK está disponible aquí GitHub
. Para obtener más información sobre el AWS CDK, consulte la Guía para AWS Cloud Development Kit (AWS CDK) desarrolladores. Ejecute el siguiente comando desde la línea de comandos, sustituyendo
STACK_NAME
con un nombre exclusivo para la pila.importante
El nombre de la pila debe ser único en AWS la región y en la AWS cuenta. El nombre puede tener una longitud de hasta 128 caracteres, y se permiten números y guiones.
aws cloudformation create-stack --stack-name STACK_NAME --template-body file://setup.yaml --capabilities CAPABILITY_IAM
Para obtener más información sobre los parámetros de los comandos
create-stack
, consulte la Guía de referencia de comandos de AWS CLI y la Guía del usuario de AWS CloudFormation.-
Ve a la consola AWS CloudFormation de administración, selecciona Pilas, elige el nombre de la pila y selecciona la pestaña Recursos para ver una lista de los recursos creados.
Cargue el audio grabado con Amazon Polly a Amazon S3
Cree un módulo de Node.js con el nombre de archivo polly_synthesize_to_s3.js
. Asegúrese de configurarlos SDK como se ha mostrado anteriormente, incluida la instalación de los clientes y paquetes necesarios. En el código, introduzca REGION
, y el BUCKET_NAME
. Para acceder a Amazon Polly, cree un objeto de servicio Polly
al cliente. Reemplazar "IDENTITY_POOL_ID"
con la IdentityPoolId
de la página de muestra del grupo de identidades de Amazon Cognito que ha creado para este ejemplo. Esto también se transfiere a cada objeto de cliente.
Llame al método StartSpeechSynthesisCommand
del objeto de servicio al cliente de Amazon Polly, sintetice el mensaje de voz y cárguelo en el bucket de Amazon S3.
import { StartSpeechSynthesisTaskCommand } from "@aws-sdk/client-polly"; import { pollyClient } from "./libs/pollyClient.js"; // Create the parameters const params = { OutputFormat: "mp3", OutputS3BucketName: "videoanalyzerbucket", Text: "Hello David, How are you?", TextType: "text", VoiceId: "Joanna", SampleRate: "22050", }; const run = async () => { try { await pollyClient.send(new StartSpeechSynthesisTaskCommand(params)); console.log(`Success, audio file added to ${params.OutputS3BucketName}`); } catch (err) { console.log("Error putting object", err); } }; run();
Puede encontrar este código de ejemplo aquí en GitHub