

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Esempio di sintesi vocale con Amazon Polly
<a name="synthesize-example"></a>

Questa pagina presenta un breve esempio di sintesi vocale eseguito nella console, in e con Python. AWS CLI Questo esempio esegue la sintesi vocale da testo semplice, non da SSML.

------
#### [ Console ]

**Sintetizza il parlato sulla console**

1. Accedi Console di gestione AWS e apri la console Amazon Polly all'indirizzo. [https://console.aws.amazon.com/polly/](https://console.aws.amazon.com/polly/)

1. Scegli la scheda **Text-to-Speech** (Sintesi vocale). Il campo di testo verrà caricato con un testo di esempio in modo da poter provare rapidamente Amazon Polly.

1. Disattiva **SSML**.

1. Digita o incolla questo testo nella casella di input.

   ```
   He was caught up in the game. In the middle of the 10/3/2014 W3C meeting he shouted, "Score!" quite loudly.
   ```

1. **In **Engine**, scegli **Generative**, **Long Form**, **Neural** o Standard.**

1. Scegli una lingua e una AWS regione, quindi scegli una voce. (Se selezioni **Neural** for **Engine**, sono disponibili solo le lingue e le voci che supportano NTTS. Tutte le voci Standard e Long Form sono disabilitate.)

1. Per ascoltare immediatamente la sintesi vocale, scegli **Listen** (Ascolta).

1. Per salvare la sintesi vocale in un file, esegui una delle operazioni seguenti:

   1. Scegli **Scarica**.

   1. **Per passare a un formato di file diverso, espandi **Impostazioni aggiuntive**, attiva **Impostazioni del formato di file vocale**, scegli il formato di file desiderato (ad esempio OGG MP3, PCM, Mu-Law o A-law), quindi scegli Scarica.** 

------
#### [ AWS CLI ]

In questo esercizio, richiamerete l'`SynthesizeSpeech`operazione passando il testo di input. Puoi salvare l'audio risultante come un file e verificarne il contenuto.

1. Eseguite il `synthesize-speech` AWS CLI comando per sintetizzare il testo di esempio in un file audio ()`hello.mp3`. 

   L' AWS CLI esempio seguente è formattato per Unix, Linux e macOS. Per Windows, sostituisci il carattere di continuazione Unix barra rovesciata (\\) al termine di ogni riga con un accento circonflesso (^) e usa virgolette (") attorno al testo di input con virgolette singole (') per i tag interni.

   ```
   aws polly synthesize-speech \
       --output-format mp3 \
       --voice-id Joanna \
       --text 'Hello, my name is Joanna. I learned about the W3C on 10/3 of last year.' \
       hello.mp3
   ```

   Nella chiamata a`synthesize-speech`, fornisci un testo di esempio da sintetizzare con una voce a tua scelta. È necessario fornire un ID vocale (spiegato nel passaggio successivo) e un formato di output. Il comando consente di salvare l'audio risultante nel file `hello.mp3`. Oltre al MP3 file, l'operazione invia il seguente output alla console. 

   ```
   {
           "ContentType": "audio/mpeg", 
           "RequestCharacters": "71"
   }
   ```

1. Riproduci il file `hello.mp3` risultante per verificare la sintesi vocale. 

------
#### [ Python ]

Per eseguire il test del codice di esempio Python, è necessario AWS SDK per Python (Boto). Per istruzioni, consultare [AWS SDK per Python (Boto3)](https://aws.amazon.com/sdk-for-python/). 

Il codice Python in questo esempio esegue le seguenti azioni:
+ Lo richiama AWS SDK per Python (Boto) per inviare una `SynthesizeSpeech` richiesta ad Amazon Polly (fornendo del testo come input). 
+ Viene eseguito l'accesso al flusso audio risultante nella risposta e viene salvato l'audio in un file sul disco locale (`speech.mp3`). 
+ Viene riprodotto il file audio con il lettore audio di default per il sistema locale. 

Salva il codice in un file (example.py) ed eseguilo.

```
"""Getting Started Example for Python 2.7+/3.3+"""
from boto3 import Session
from botocore.exceptions import BotoCoreError, ClientError
from contextlib import closing
import os
import sys
import subprocess
from tempfile import gettempdir

# Create a client using the credentials and region defined in the [adminuser]
# section of the AWS credentials file (~/.aws/credentials).
session = Session(profile_name="adminuser")
polly = session.client("polly")

try:
    # Request speech synthesis
    response = polly.synthesize_speech(Text="Hello world!", OutputFormat="mp3",
                                        VoiceId="Joanna")
except (BotoCoreError, ClientError) as error:
    # The service returned an error, exit gracefully
    print(error)
    sys.exit(-1)

# Access the audio stream from the response
if "AudioStream" in response:
    # Note: Closing the stream is important because the service throttles on the
    # number of parallel connections. Here we are using contextlib.closing to
    # ensure the close method of the stream object will be called automatically
    # at the end of the with statement's scope.
        with closing(response["AudioStream"]) as stream:
           output = os.path.join(gettempdir(), "speech.mp3")

           try:
            # Open a file for writing the output as a binary stream
                with open(output, "wb") as file:
                   file.write(stream.read())
           except IOError as error:
              # Could not write to file, exit gracefully
              print(error)
              sys.exit(-1)

else:
    # The response didn't contain audio data, exit gracefully
    print("Could not stream audio")
    sys.exit(-1)

# Play the audio using the platform's default player
if sys.platform == "win32":
    os.startfile(output)
else:
    # The following works on macOS and Linux. (Darwin = mac, xdg-open = linux).
    opener = "open" if sys.platform == "darwin" else "xdg-open"
    subprocess.call([opener, output])
```

------

Per esempi più dettagliati, consulta gli argomenti seguenti:
+ [Utilizzo di SSML sulla console](ssml-to-speech-console.md) 
+ [Applicazione dei lessici (sintesi vocale)](managing-lexicons-console-synthesize-speech.md) 
+ [Codice di esempio e applicazioni per Amazon Polly](samples-and-examples.md) 