SynthesizeSpeech - Amazon Polly

SynthesizeSpeech

Il seguente esempio di codice Java mostra come utilizzare le applicazioni basate su Java per eseguire la sintesi vocale con testi più corti per l'elaborazione in tempo reale.

Per ulteriori informazioni, consulta il riferimento per l'API SynthesizeSpeech.

package com.amazonaws.polly.samples; import com.amazonaws.services.polly.AmazonPolly; import com.amazonaws.services.polly.AmazonPollyClientBuilder; import com.amazonaws.services.polly.model.OutputFormat; import com.amazonaws.services.polly.model.SynthesizeSpeechRequest; import com.amazonaws.services.polly.model.SynthesizeSpeechResult; import com.amazonaws.services.polly.model.VoiceId; import java.io.File; import java.io.FileOutputStream; import java.io.InputStream; public class SynthesizeSpeechSample { AmazonPolly client = AmazonPollyClientBuilder.defaultClient(); public void synthesizeSpeech() { String outputFileName = "/tmp/speech.mp3"; SynthesizeSpeechRequest synthesizeSpeechRequest = new SynthesizeSpeechRequest() .withOutputFormat(OutputFormat.Mp3) .withVoiceId(VoiceId.Joanna) .withText("This is a sample text to be synthesized.") .withEngine("neural"); try (FileOutputStream outputStream = new FileOutputStream(new File(outputFileName))) { SynthesizeSpeechResult synthesizeSpeechResult = client.synthesizeSpeech(synthesizeSpeechRequest); byte[] buffer = new byte[2 * 1024]; int readBytes; try (InputStream in = synthesizeSpeechResult.getAudioStream()){ while ((readBytes = in.read(buffer)) > 0) { outputStream.write(buffer, 0, readBytes); } } } catch (Exception e) { System.err.println("Exception caught: " + e); } } }