

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Beispiel für Sprachsynthese mit Amazon Polly
<a name="synthesize-example"></a>

Diese Seite enthält ein kurzes Beispiel für die Sprachsynthese, das in der Konsole AWS CLI, und mit Python ausgeführt wurde. In diesem Beispiel wird die Sprachsynthese aus reinem Text durchgeführt, nicht aus SSML.

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

**Synthetisieren Sie Sprache auf der Konsole**

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Amazon Polly Polly-Konsole unter [https://console.aws.amazon.com/polly/](https://console.aws.amazon.com/polly/).

1. Wählen Sie die Registerkarte **Text-to-Speech**. Das Textfeld wird mit Beispieltext geladen, sodass Sie Amazon Polly schnell ausprobieren können.

1. Schalten Sie **SSL** aus.

1. Geben Sie den folgenden Text in das Eingabefeld ein oder kopieren Sie ihn in das Feld:

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

1. Wählen Sie unter **Engine** die Optionen **Generativ**, **Long Form**, **Neural** oder **Standard** aus.

1. Wählen Sie eine Sprache und AWS Region und dann eine Stimme aus. (Wenn Sie **Neural** für **Engine** auswählen, sind nur die Sprachen und Stimmen verfügbar, die NTTS unterstützen. Alle Standard- und Langform-Stimmen sind deaktiviert.)

1. Um die Rede sofort anzuhören, wählen Sie „**Zuhören**“.

1. Speichern Sie die Sprachausgabe auf einem der beiden folgenden Wege in einer Datei:

   1. Wählen Sie **Herunterladen** aus.

   1. **Um zu einem anderen Dateiformat zu wechseln, erweitern Sie **Zusätzliche Einstellungen**, aktivieren Sie **Einstellungen für das Sprachdateiformat**, wählen Sie das gewünschte Dateiformat aus (z. B. OGG MP3, PCM, MU-law oder A-law), und wählen Sie dann Herunterladen aus.** 

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

In dieser Übung rufen Sie den `SynthesizeSpeech` Vorgang auf, indem Sie den Eingabetext übergeben. Die resultierende Audioausgabe können Sie als Datei speichern und abspielen.

1. Führen Sie den `synthesize-speech` AWS CLI Befehl aus, um den Beispieltext in einer Audiodatei (`hello.mp3`) zu synthetisieren. 

   Das folgende AWS CLI Beispiel ist für Unix, Linux und macOS formatiert. Ersetzen Sie unter Windows den Unix-Fortsetzungszeichen mit umgekehrtem Schrägstrich (\\) am Ende jeder Zeile durch ein Caret (^) und setzen Sie den Eingabetext in vollständige Anführungszeichen („) und einfache Anführungszeichen (') für interne Tags.

   ```
   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
   ```

   Im Call to geben Sie einen Beispieltext an`synthesize-speech`, der von einer Stimme Ihrer Wahl synthetisiert werden soll. Sie müssen eine Sprach-ID (im folgenden Schritt erklärt) und ein Ausgabeformat angeben. Der Befehl speichert die resultierende Audioausgabe in der Datei `hello.mp3`. Zusätzlich zur MP3 Datei sendet der Vorgang die folgende Ausgabe an die Konsole. 

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

1. Geben Sie die Datei `hello.mp3` wieder, um die Sprachausgabe zu überprüfen. 

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

Sie benötigen das AWS SDK für Python (Boto), um den Python-Beispielcode testen zu können. Detaillierte Anweisungen finden Sie unter [AWS SDK für Python (Boto3)](https://aws.amazon.com/sdk-for-python/). 

Der Python-Code in diesem Beispiel führt die folgenden Aktionen aus:
+ Ruft das AWS SDK für Python (Boto) auf, um eine `SynthesizeSpeech` Anfrage an Amazon Polly zu senden (indem Text als Eingabe bereitgestellt wird). 
+ Er greift auf den resultierenden Audiostream in der Antwort zu und speichert die Audioausgabe in einer Datei (`speech.mp3`) auf der lokalen Festplatte. 
+ Er spielt die Audiodatei mit dem Standard-Audioplayer des lokalen Systems ab. 

Speichern Sie den Code in einer Datei ("example.py") und führen Sie die Datei aus.

```
"""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])
```

------

Umfassendere Beispiele finden Sie in den folgenden Artikeln:
+ [SSML auf der Konsole verwenden](ssml-to-speech-console.md) 
+ [Lexika anwenden (Sprachsynthese)](managing-lexicons-console-synthesize-speech.md) 
+ [Beispielcode und Anwendungen für Amazon Polly](samples-and-examples.md) 