Condividi tramite


Proprietà di sintesi batch per l'avatar sintesi vocale (anteprima)

Nota

L'avatar di sintesi vocale è attualmente disponibile in anteprima pubblica. Questa versione di anteprima viene fornita senza un contratto di servizio e non è consigliabile per i carichi di lavoro di produzione. Alcune funzionalità potrebbero non essere supportate o potrebbero presentare funzionalità limitate. Per altre informazioni, vedere le Condizioni supplementari per l'uso delle anteprime di Microsoft Azure.

Le proprietà di sintesi batch possono essere raggruppate come: proprietà correlate all'avatar, proprietà correlate ai processi batch e proprietà correlate al testo per la sintesi vocale, descritte nelle tabelle seguenti.

Alcune proprietà in formato JSON sono necessarie quando si crea un nuovo processo di sintesi batch. Altre proprietà sono facoltative. La risposta di sintesi batch include altre proprietà per fornire informazioni sullo stato e sui risultati della sintesi. Ad esempio, la outputs.result proprietà contiene il percorso da cui è possibile scaricare un file video contenente il video avatar. Da outputs.summaryè possibile accedere ai dettagli di riepilogo e debug.

Proprietà avatar

Nella tabella seguente vengono descritte le proprietà avatar.

Proprietà Descrizione
avatarConfig.talkingAvatarCharacter Nome del personaggio dell'avatar che parla.

I personaggi avatar supportati sono disponibili qui.

Questa proprietà è obbligatoria.
avatarConfig.talkingAvatarStyle Nome dello stile dell'avatar di discussione.

Gli stili avatar supportati sono disponibili qui.

Questa proprietà è necessaria per l'avatar predefinito e facoltativa per l'avatar personalizzato.
avatarConfig.customized Valore bool che indica se l'avatar da usare è o meno avatar personalizzato. True per avatar personalizzato e false per avatar predefinito.

Questa proprietà è facoltativa e il valore predefinito è false.
avatarConfig.videoFormat Il formato per il file video di output può essere mp4 o webm.

Il webm formato è necessario per lo sfondo trasparente.

Questa proprietà è facoltativa e il valore predefinito è mp4.
avatarConfig.videoCodec Il codec per il video di output potrebbe essere h264, hevc o vp9.

Vp9 è necessario per lo sfondo trasparente. La velocità di sintesi sarà più lenta con il codec vp9, perché la codifica vp9 è più lenta.

Questa proprietà è facoltativa e il valore predefinito è hevc.
avatarConfig.bitrateKbps Velocità in bit per il video di output, ovvero valore intero, con unità kbps.

Questa proprietà è facoltativa e il valore predefinito è 2000.
avatarConfig.videoCrop Questa proprietà consente di ritagliare l'output video, ovvero di restituire un sottoarea rettangolo del video originale. Questa proprietà include due campi, che definiscono il vertice superiore sinistro e il vertice inferiore destro del rettangolo.

Questa proprietà è facoltativa e il comportamento predefinito consiste nell'output del video completo.
avatarConfig.videoCrop.topLeft Vertice superiore sinistro del rettangolo per il ritaglio video. Questa proprietà ha due campi x e y, per definire la posizione orizzontale e verticale del vertice.

Questa proprietà è obbligatoria quando è impostato properties.videoCrop.
avatarConfig.videoCrop.bottomRight Vertice inferiore destro del rettangolo per il ritaglio video. Questa proprietà ha due campi x e y, per definire la posizione orizzontale e verticale del vertice.

Questa proprietà è obbligatoria quando è impostato properties.videoCrop.
avatarConfig.subtitleType Il tipo di sottotitolo per il file video avatar può essere external_file, soft_embedded, hard_embeddedo none.

Questa proprietà è facoltativa e il valore predefinito è soft_embedded.
avatarConfig.backgroundImage Aggiungere un'immagine di sfondo usando la avatarConfig.backgroundImage proprietà . Il valore della proprietà deve essere un URL che punta all'immagine desiderata. Questa proprietà è facoltativa.
avatarConfig.backgroundColor Colore di sfondo del video avatar, ovvero una stringa in formato #RRGGBBAA. In questa stringa: RR, GG, BB e AA significano i canali rosso, verde, blu e alfa, con intervallo di valori esadecimali 00~FF. Il canale alfa controlla la trasparenza, con valore 00 per transparent, value FF per non trasparente e valore compreso tra 00 e FF per semitrasparente.

Questa proprietà è facoltativa e il valore predefinito è #FFFFFFFF (bianco).
outputs.result Posizione del file di risultato della sintesi batch, ovvero un file video contenente l'avatar sintetizzato.

Questa proprietà è di sola lettura.
Proprietà. DurationInMilliseconds Durata dell'output video in millisecondi.

Questa proprietà è di sola lettura.

Proprietà del processo di sintesi batch

Nella tabella seguente vengono descritte le proprietà del processo di sintesi batch.

Proprietà Descrizione
createdDateTime Data e ora di creazione del processo di sintesi batch.

Questa proprietà è di sola lettura.
description Descrizione della sintesi batch.

Questa proprietà è facoltativa.
ID ID processo di sintesi batch.

Questa proprietà è di sola lettura.
lastActionDateTime Data e ora più recenti della modifica del valore della proprietà di stato.

Questa proprietà è di sola lettura.
proprietà Set definito di impostazioni di configurazione facoltative per la sintesi batch.
properties.destinationContainerUrl I risultati della sintesi batch possono essere archiviati in un contenitore di Azure scrivibile. Se non si specifica un URI del contenitore con token di firma di accesso condiviso, il servizio Voce archivia i risultati in un contenitore gestito da Microsoft. La firma di accesso condiviso con criteri di accesso archiviati non è supportata. Quando il processo di sintesi viene eliminato, vengono eliminati anche i dati dei risultati.

Questa proprietà facoltativa non è inclusa nella risposta quando si ottiene il processo di sintesi.
properties.timeToLiveInHours Durata in ore dopo la creazione del processo di sintesi, quando i risultati della sintesi verranno eliminati automaticamente. Il tempo massimo di durata è 744 ore. La data e l'ora dell'eliminazione automatica, per i processi di sintesi con stato "Succeeded" o "Failed" viene calcolata come somma delle proprietà lastActionDateTime e timeToLive.

In caso contrario, è possibile chiamare il metodo di sintesi delete per rimuovere il processo prima.
stato Stato di elaborazione della sintesi batch.

Lo stato deve passare da "NotStarted" a "In esecuzione" e infine a "Succeeded" o "Failed".

Questa proprietà è di sola lettura.

Proprietà sintesi vocale

Nella tabella seguente vengono descritte le proprietà di sintesi vocale.

Proprietà Descrizione
customVoices Una voce neurale personalizzata è associata a un nome e al relativo ID distribuzione, come indicato di seguito: "customVoices": {"your-custom-voice-name": "502ac834-6537-4bc3-9fd6-140114daa66d"}

È possibile usare il nome della voce in synthesisConfig.voice quando inputKind è impostato su "PlainText" o all'interno del testo SSML degli input quando inputKind è impostato su "SSML".

Questa proprietà è necessaria per usare una voce personalizzata. Se si tenta di usare una voce personalizzata non definita qui, il servizio restituisce un errore.
input Testo normale o SSML da sintetizzare.

Quando inputKind è impostato su "PlainText", fornire testo normale come illustrato di seguito: "inputs": [{"content": "The rainbow has seven colors."}]. Quando inputKind è impostato su "SSML", specificare il testo nel linguaggio SSML (Speech Synthesis Markup Language), come illustrato di seguito: "inputs": [{"content": "<speak version=''1.0''' xml:lang=' 'en-US'''><voice xml:lang=''en-US''' xml:gender=''Female''' name=''en-US-AvaMultilingualNeural''''>L'arcobaleno ha sette colori."}].

Includere fino a 1.000 oggetti di testo se si desiderano più file di output video. Di seguito è riportato un esempio di testo di input che deve essere sintetizzato in due file di output video: "inputs": [{"content": "sintetizzarlo in un file"},{"content": "sintetizzarlo in un altro file"}].

Non sono necessari input di testo separati per i nuovi paragrafi. All'interno di uno degli input di testo (fino a 1.000) è possibile specificare nuovi paragrafi usando la stringa "\r\n" (nuova riga). Di seguito è riportato un esempio di testo di input con due paragrafi che devono essere sintetizzati nello stesso file di output audio: "inputs": [{"content": "sintetizzarlo in un file\r\nsynthesize in un altro paragrafo nello stesso file"}]

Questa proprietà è necessaria quando si crea un nuovo processo di sintesi batch. Questa proprietà non è inclusa nella risposta quando si ottiene il processo di sintesi.
properties.billingDetails Numero di parole elaborate e fatturate da voci personalizzateNeurali e neurali (predefinite).

Questa proprietà è di sola lettura.
synthesisConfig Impostazioni di configurazione da usare per la sintesi batch di testo normale.

Questa proprietà è applicabile solo quando inputKind è impostato su "PlainText".
synthesisConfig.pitch Passo dell'output audio.

Per informazioni sui valori accettati, vedere la tabella modificare la prosodia nella documentazione di Speech Synthesis Markup Language (SSML). I valori non validi vengono ignorati.

Questa proprietà facoltativa è applicabile solo quando inputKind è impostato su "PlainText".
synthesisConfig.rate Frequenza dell'output audio.

Per informazioni sui valori accettati, vedere la tabella modificare la prosodia nella documentazione di Speech Synthesis Markup Language (SSML). I valori non validi vengono ignorati.

Questa proprietà facoltativa è applicabile solo quando inputKind è impostato su "PlainText".
synthesisConfig.style Per alcune voci, puoi regolare lo stile di parlare per esprimere diverse emozioni come allegra, empatia e calma. È possibile ottimizzare la voce per diversi scenari, ad esempio servizio clienti, newscast e assistente vocale.

Per informazioni sugli stili disponibili per voce, vedere Stili e ruoli voce.

Questa proprietà facoltativa è applicabile solo quando inputKind è impostato su "PlainText".
synthesisConfig.voice Voce che parla l'output audio.

Per informazioni sulle voci neurali predefinite disponibili, vedere Linguaggio e supporto vocale. Per usare una voce personalizzata, è necessario specificare un mapping di ID voce e distribuzione personalizzato valido nella proprietà customVoices.

Questa proprietà è obbligatoria quando inputKind è impostato su "PlainText".
synthesisConfig.volume Volume dell'output audio.

Per informazioni sui valori accettati, vedere la tabella modificare la prosodia nella documentazione di Speech Synthesis Markup Language (SSML). I valori non validi vengono ignorati.

Questa proprietà facoltativa è applicabile solo quando inputKind è impostato su "PlainText".
inputKind Indica se la proprietà di testo di input deve essere testo normale o SSML. I possibili valori senza distinzione tra maiuscole e minuscole sono "PlainText" e "SSML". Quando inputKind è impostato su "PlainText", devi anche impostare la proprietà voice synthesisConfig.

Questa proprietà è obbligatoria.

Come modificare lo sfondo

L'API di sintesi batch avatar attualmente non supporta l'impostazione di video in background; supporta solo immagini di sfondo statiche. Tuttavia, se si vuole aggiungere uno sfondo per il video durante la post-produzione, è possibile generare video con uno sfondo trasparente.

Per impostare un'immagine di sfondo statica, usare la avatarConfig.backgroundImage proprietà e specificare un URL che punta all'immagine desiderata. Inoltre, puoi impostare il colore di sfondo del video avatar usando la avatarConfig.backgroundColor proprietà .

Per generare un video in background trasparente, è necessario impostare le proprietà seguenti sui valori necessari nella richiesta di sintesi batch:

Proprietà Valori obbligatori per la trasparenza dello sfondo
properties.videoFormat Webm
properties.videoCodec vp9
properties.backgroundColor #00000000 (o trasparente)

Clipintune è un esempio di uno strumento di modifica video che supporta il video in background trasparente generato dall'API di sintesi batch.

Alcuni software di modifica video non supportano direttamente il webm formato e supportano .mov solo l'input video in background trasparente come Adobe Premiere Pro. In questi casi, devi prima convertire il formato video da webm a .mov con uno strumento come FFMPEG.

Riga di comando FFMPEG:

ffmpeg -vcodec libvpx-vp9 -i <input.webm> -vcodec png -pix_fmt rgba metadata:s:v:0 alpha_mode="1" <output.mov>

FFMPEG può essere scaricato da ffmpeg.org. Sostituire <input.webm> e <output.mov> con il percorso locale e il nome file nella riga di comando.

Passaggi successivi