Usare l'API Sintesi vocale

Completato

Analogamente alle API Riconoscimento vocale, il servizio Voce di Azure AI offre altre API REST per la sintesi vocale:

  • L'API Sintesi vocale, che costituisce la principale modalità di esecuzione della sintesi vocale.
  • L'API Sintesi batch, progettata per supportare operazioni in batch che convertono grandi volumi di testo in audio, ad esempio per generare un audiolibro dal testo di origine.

Per altre informazioni sulle API REST, vedere la documentazione delle API REST di sintesi vocale. Nella pratica, la maggior parte delle applicazioni abilitate al riconoscimento vocale interattivo usa il servizio Voce di Azure AI tramite un SDK specifico del linguaggio di programmazione.

Uso dell'SDK di Voce di Azure AI

Come per il riconoscimento vocale, nella pratica la maggior parte delle applicazioni abilitate al riconoscimento vocale interattivo viene creata con l'SDK di Voce di Azure AI.

Il modello per l'implementazione della sintesi vocale è simile a quello del riconoscimento vocale:

A diagram showing how a SpeechSynthesizer object is created from a SpeechConfig and AudioConfig, and its SpeakTextAsync method is used to call the Speech API.

  1. Usare un oggetto SpeechConfig per incapsulare le informazioni necessarie per connettersi alla risorsa Voce di Azure AI. In particolare, la posizione e la chiave.
  2. È anche possibile usare un oggetto AudioConfig per definire il dispositivo di output per la sintesi vocale. Per impostazione predefinita, si tratta dell'altoparlante di sistema predefinito, ma è anche possibile specificare un file audio oppure, impostando in modo esplicito questo valore su un valore Null, è possibile elaborare l'oggetto del flusso audio restituito direttamente.
  3. Usare SpeechConfig e AudioConfig per creare un oggetto SpeechSynthesizer. Questo oggetto è un client proxy dell'API Sintesi vocale.
  4. Usare i metodi dell'oggetto SpeechSynthesizer per chiamare le funzioni API sottostanti. Ad esempio, il metodo SpeakTextAsync() usa il servizio Voce di Azure AI per convertire il testo in audio parlato.
  5. Elaborare la risposta del servizio Voce di Azure AI. Nel caso del metodo SpeakTextAsync, il risultato è un oggetto SpeechSynthesisResult che contiene le proprietà seguenti:
    • AudioData
    • Proprietà
    • Motivo
    • ResultId

Quando il parlato è stato sintetizzato correttamente, la proprietà Reason viene impostata sull'enumerazione SynthesizingAudioCompleted e la proprietà AudioData contiene il flusso audio (che, a seconda di AudioConfig, potrebbe essere stato inviato automaticamente a un altoparlante o a un file).