Creación de archivos de audio largos (CLI) - Amazon Polly

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.

Creación de archivos de audio largos (CLI)

La funcionalidad de síntesis asíncrona de Amazon Polly utiliza tres API SpeechSynthesisTask para trabajar con grandes cantidades de texto:

  • StartSpeechSynthesisTask: inicia una tarea de síntesis nueva.

  • GetSpeechSynthesisTask: devuelve detalles acerca de una tarea de síntesis enviada con anterioridad.

  • ListSpeechSynthesisTasks: enumera todas las tareas de síntesis enviadas.

Síntesis de grandes cantidades de texto (StartSpeechSynthesisTask)

Cuando desea crear un archivo de audio mayor de lo que puede crear con SynthesizeSpeech en tiempo real, utilice la operación StartSpeechSynthesisTask. Además de los argumentos necesarios para la operación SynthesizeSpeech, StartSpeechSynthesisTask también requiere el nombre de un bucket de Amazon S3. También se dispone de otros dos otros argumentos opcionales: un prefijo de clave para el archivo de salida y el ARN de un tema de SNS si desea recibir notificaciones de estado sobre la tarea.

  • OutputS3BucketName: el nombre del bucket de Amazon S3; en el que debe cargarse la síntesis. Este bucket debe estar en la misma región que el servicio de Amazon Polly. Además, el usuario de IAM que se utiliza para realizar la llamada debe tener acceso al bucket. [Obligatorio]

  • OutputS3KeyPrefix: prefijo de clave para el archivo de salida. Utilice este parámetro si desea guardar el archivo de voz de salida en una clave similar a un directorio personalizado en su bucket. [Opcional]

  • SnsTopicArn: el ARN de tema de SNS que utilizar si desea recibir una notificación acerca del estado de la tarea. Este tema de SNS debe estar en la misma región que el servicio de Amazon Polly. Además, el usuario de IAM que se utiliza para realizar la llamada debe tener acceso al tema. [Opcional]

Por ejemplo, el siguiente ejemplo se puede utilizar para ejecutar la start-speech-synthesis-task del comando de la AWS CLI en la región Este de EE. UU. (Ohio):

El ejemplo de AWS CLI siguiente tiene formato para Unix, Linux y macOS. En Windows, sustituya la barra invertida (\) que continúa en Unix al final de cada línea por un signo de intercalación (^) y utilice comillas completas (") alrededor del texto de entrada con comillas simples (') para las etiquetas interiores.

aws polly start-speech-synthesis-task \ --region us-east-2 \ --endpoint-url "https://polly.us-east-2.amazonaws.com/" \ --output-format mp3 \ --output-s3-bucket-name your-bucket-name \ --output-s3-key-prefix optional/prefix/path/file \ --voice-id Joanna \ --text file://text_file.txt

Este comando producirá una respuesta con un aspecto similar al siguiente:

"SynthesisTask": { "OutputFormat": "mp3", "OutputUri": "https://s3.us-east-2.amazonaws.com/your-bucket-name/optional/prefix/path/file.<task_id>.mp3", "TextType": "text", "CreationTime": [..], "RequestCharacters": [..], "TaskStatus": "scheduled", "TaskId": [task_id], "VoiceId": "Joanna" }

La operación start-speech-synthesis-task devuelve varios campos nuevos:

  • OutputUri: la ubicación del archivo de voz de salida.

  • TaskId: un identificador único para la tarea de síntesis de voz generada por Amazon Polly.

  • CreationTime: una marca temporal de cuando se envió inicialmente la tarea.

  • RequestCharacters: el número de caracteres facturables en la tarea.

  • TaskStatus: proporciona información sobre el estado de la tarea enviada.

    Cuando se envía la tarea, el estado inicial mostrará scheduled. Cuando Amazon Polly inicia el procesamiento de la tarea, el estado cambiará a inProgress y posteriormente, a completed o failed. Si la tarea falla, aparecerá un mensaje de error al llamar a la ListSpeechSynthesisTasks operación GetSpeechSynthesisTask o.

Cuando la tarea se complete, el archivo de voz está disponible en la ubicación especificada en OutputUri.

Recuperación información sobre la tarea de síntesis de voz

Puede obtener información acerca de una tarea como, por ejemplo, errores, estado, etc., utilizando la operación GetSpeechSynthesisTask. Para ello, necesitará el task-id devuelto por el StartSpeechSynthesisTask.

Por ejemplo, el siguiente ejemplo se puede utilizar para ejecutar la get-speech-synthesis-task del comando de la AWS CLI:

aws polly get-speech-synthesis-task \ --region us-east-2 \ --endpoint-url "https:// polly.us-east-2.amazonaws.com/" \ --task-id task identifier

También puede mostrar todas las tareas de síntesis de voz que haya ejecutado en la región actual mediante la operación ListSpeechSynthesisTasks.

Por ejemplo, el siguiente ejemplo se puede utilizar para ejecutar la list-speech-synthesis-tasks del comando de la AWS CLI:

aws polly list-speech-synthesis-tasks \ --region us-east-2 \ --endpoint-url "https:// polly.us-east-2.amazonaws.com/"