Teilen über


Eigenschaften der Batchsynthese für Text-zu-Sprache-Avatar (Vorschau)

Hinweis

Der Text-zu-Sprache-Avatar ist derzeit als öffentliche Vorschauversion verfügbar. Diese Vorschau wird ohne Vereinbarung zum Servicelevel bereitgestellt und nicht für Produktionsworkloads empfohlen. Manche Features werden möglicherweise nicht unterstützt oder sind nur eingeschränkt verwendbar. Weitere Informationen finden Sie unter Zusätzliche Nutzungsbestimmungen für Microsoft Azure-Vorschauen.

Eigenschaften der Batchsynthese können gruppiert werden als: Avatareigenschaften, Batchauftragsbezogene Eigenschaften und Text-zu-Sprache-bezogene Eigenschaften, die in den folgenden Tabellen beschrieben werden.

Einige Eigenschaften im JSON-Format sind erforderlich, wenn Sie einen neuen Batchsyntheseauftrag erstellen. Andere Eigenschaften sind optional. Die Batchsyntheseantwort enthält weitere Eigenschaften, um Informationen über den Synthesestatus und die Ergebnisse bereitzustellen. Die outputs.result-Eigenschaft enthält beispielsweise den Speicherort, an dem Sie eine Videodatei herunterladen können, die das Avatarvideo enthält. Über outputs.summary können Sie auf die Zusammenfassungs- und Debugdetails zugreifen.

Avatar-Eigenschaften

In der folgenden Tabelle werden die Avatareigenschaften beschrieben.

Eigenschaft Beschreibung
avatarConfig.talkingAvatarCharacter Der Charaktername des sprechenden Avatars.

Die unterstützten Avatar-Charaktere finden Sie hier.

Diese Eigenschaft ist erforderlich.
avatarConfig.talkingAvatarStyle Der Stilname des sprechenden Avatars.

Die unterstützten Avatarstile finden Sie hier.

Diese Eigenschaft ist für vordefinierte Avatare erforderlich und optional für benutzerdefinierte Avatare.
avatarConfig.customized Ein Boolwert, der angibt, ob der zu verwendende Avatar ein benutzerdefinierter Avatar ist oder nicht. True für benutzerdefinierte Avatare und false für vordefinierte Avatare.

Diese Eigenschaft ist optional und der Standardwert ist false.
avatarConfig.videoFormat Das Format für die Ausgabevideodatei kann mp4 oder webm sein.

Für einen transparenten Hintergrund ist das Format webm erforderlich.

Diese Eigenschaft ist optional, und der Standardwert ist mp4.
avatarConfig.videoCodec Der Codec für Ausgabevideos kann h264, hevc oder vp9 sein.

Vp9 ist für transparenten Hintergrund erforderlich. Die Synthesegeschwindigkeit sinkt mit Codec vp9, da vp9-Codierung langsamer ist.

Diese Eigenschaft ist optional, und der Standardwert ist hevc.
avatarConfig.bitrateKbps Die Bitrate für das Ausgabevideo, die ein ganzzahliger Wert mit der Einheit kbps ist.

Diese Eigenschaft ist optional, und der Standardwert ist 2000.
avatarConfig.videoCrop Mit dieser Eigenschaft können Sie die Videoausgabe beschneiden, d. h. einen rechteckigen Teilbereich des Originalvideos ausgeben. Diese Eigenschaft hat zwei Felder, die den oberen linken Scheitelpunkt und den unteren rechten Scheitelpunkt des Rechtecks definieren.

Diese Eigenschaft ist optional, und das Standardverhalten ist die Ausgabe des gesamten Videos.
avatarConfig.videoCrop.topLeft Der obere linke Scheitelpunkt des Rechtecks zum Zuschneiden von Videos. Diese Eigenschaft verfügt über zwei Felder x und y, um die horizontale und vertikale Position des Scheitelpunkts zu definieren.

Diese Eigenschaft ist erforderlich, wenn properties.videoCrop festgelegt wird.
avatarConfig.videoCrop.bottomRight Der untere rechte Scheitelpunkt des Rechtecks zum Zuschneiden von Videos. Diese Eigenschaft verfügt über zwei Felder x und y, um die horizontale und vertikale Position des Scheitelpunkts zu definieren.

Diese Eigenschaft ist erforderlich, wenn properties.videoCrop festgelegt wird.
avatarConfig.subtitleType Der Untertiteltyp für die Avatar-Videodatei kann external_file, soft_embedded, hard_embeddedoder none sein.

Diese Eigenschaft ist optional und der Standardwert ist soft_embedded.
avatarConfig.backgroundImage Fügen Sie ein Hintergrundbild mithilfe der avatarConfig.backgroundImage-Eigenschaft hinzu. Der Wert der Eigenschaft sollte eine URL sein, die auf das gewünschte Bild zeigt. Diese Eigenschaft ist optional.
avatarConfig.backgroundColor Hintergrundfarbe des Avatarvideos, bei dem es sich um eine Zeichenfolge im #RRGGBBAA Format handelt. In dieser Zeichenfolge: RR, GG, BB und AA bedeuten die roten, grünen, blauen und Alphakanäle mit Hexadezimalwertbereich 00~FF. Der Alphakanal steuert die Transparenz, wobei der Wert 00 für transparent, der Wert FF für nicht transparent und der Wert zwischen 00 und FF für halbtransparent steht.

Diese Eigenschaft ist optional, und der Standardwert ist #FFFFFFFF (weiß).
outputs.result Der Speicherort der Batchsynthese-Ergebnisdatei, die eine Videodatei mit dem synthetisierten Avatar ist.

Diese Eigenschaft ist schreibgeschützt.
properties.DurationInMilliseconds Die Dauer der Videoausgabe in Millisekunden.

Diese Eigenschaft ist schreibgeschützt.

Eigenschaften von Batchsyntheseaufträgen

In der folgenden Tabelle werden die Eigenschaften des Batchsyntheseauftrags beschrieben.

Eigenschaft Beschreibung
createdDateTime Das Datum und die Uhrzeit der Erstellung des Batchsyntheseauftrags.

Diese Eigenschaft ist schreibgeschützt.
Beschreibung Die Beschreibung der Batchsynthese.

Diese Eigenschaft ist optional.
Kennung Die Auftrags-ID der Batchsynthese.

Diese Eigenschaft ist schreibgeschützt.
lastActionDateTime Das Datum und die Uhrzeit der letzten Änderung des Statuseigenschaftswerts.

Diese Eigenschaft ist schreibgeschützt.
properties Ein definierter Satz optionaler Konfigurationseinstellungen für die Batchsynthese.
properties.destinationContainerUrl Die Ergebnisse der Batchsynthese können in einem beschreibbaren Azure-Container gespeichert werden. Wenn Sie für SAS-Token (Shared Access Signature) keinen Container angeben, speichert der Speech-Dienst die Ergebnisse in einem von Microsoft verwalteten Container. SAS mit gespeicherten Zugriffsrichtlinien wird nicht unterstützt. Wenn der Syntheseauftrag gelöscht wird, werden die Ergebnisdaten ebenfalls gelöscht.

Diese optionale Eigenschaft ist nicht in der Antwort enthalten, wenn Sie den Syntheseauftrag abrufen.
properties.timeToLiveInHours Eine Dauer (in Stunden) nach dem Erstellen des Syntheseauftrags, wenn die Syntheseergebnisse automatisch gelöscht werden. Die maximale Gültigkeitsdauer beträgt 744 Stunden. Datum und Uhrzeit der automatischen Löschung bei Syntheseaufträgen mit dem Status „Erfolgreich“ oder „Fehler“ werden als Summe der Eigenschaften „lastActionDateTime“ und „timeToLive“ berechnet.

Andernfalls können Sie die Synthesemethode delete aufrufen, um den Auftrag früher zu entfernen.
status Der Verarbeitungsstatus der Batchsynthese.

Der Status sollte von „NotStarted“ über „Running“ und schließlich zu entweder zu „Erfolgreich“ oder „Fehler“ fortschreiten.

Diese Eigenschaft ist schreibgeschützt.

Text-zu-Sprache-Eigenschaften

In der folgenden Tabelle werden die Text-zu-Sprache-Eigenschaften beschrieben.

Eigenschaft Beschreibung
customVoices Eine benutzerdefinierte neurale Stimme ist einem Namen und seiner Bereitstellungs-ID zugeordnet, wie folgt: „customVoices“: {“your-custom-voice-name": "502ac834-6537-4bc3-9fd6-140114daa66d"}

Sie können den Namen der Stimme in Ihrer synthesisConfig.voice verwenden, wenn inputKind auf „PlainText“ festgelegt ist oder innerhalb des SSML-Texts von Eingabe inputKind auf „SSML“ festgelegt ist.

Diese Eigenschaft ist erforderlich, um eine benutzerdefinierte Stimme zu verwenden. Wenn Sie versuchen, eine benutzerdefinierte Stimme zu verwenden, die hier nicht definiert ist, gibt der Dienst einen Fehler zurück.
inputs Der zu synthetisierende unformatierte oder SSML-Text.

Wenn inputKind auf „PlainText“ eingestellt ist, geben Sie einfachen Text wie hier gezeigt ein: "inputs": [{"content": "The rainbow has seven colors."}]. Wenn inputKind auf „SSML“ eingestellt ist, geben Sie Text in der Speech Synthesis Markup Language (SSML) ein, wie hier gezeigt: "inputs": [{"content": "<speak version=''1.0''' xml:lang=''en-US'''><voice xml:lang=''en-US''' xml:gender=''Female''' name=''en-US-AvaMultilingualNeural'''>The rainbow has seven colors."}].

Fügen Sie bis zu 1.000 Textobjekte ein, wenn Sie mehrere Videoausgabedateien benötigen. Hier ist ein Beispieleingabetext, der in zwei Videoausgabedateien synthetisiert werden soll: "inputs": [{"content": "synthesize this to a file"},{"content": "synthesize this to another file"}].

Sie benötigen keine separaten Texteingaben für neue Absätze. Innerhalb jeder der (bis zu 1.000) Texteingaben können Sie neue Absätze mithilfe der Zeichenfolge „\r\n“ (Zeilenumbruch) angeben. Hier sehen Sie ein Beispiel für Eingabetext mit zwei Absätzen, die in derselben Audiodatei synthetisiert werden sollen: "inputs": [{"content": "synthesize this to a file\r\nsynthesize this to another paragraph in the same file"}]

Diese Eigenschaft ist erforderlich, wenn Sie einen neuen Batchsyntheseauftrag erstellen. Diese Eigenschaft ist nicht in der Antwort enthalten, wenn Sie den Syntheseauftrag abrufen.
properties.billingDetails Die Anzahl der Wörter, die von CustomNeural im Gegensatz zu neuralen (vordefinierten) Stimmen verarbeitet und abgerechnet wurden.

Diese Eigenschaft ist schreibgeschützt.
synthesisConfig Die Konfigurationseinstellungen, die für die Batchsynthese von unformatiertem Text verwendet werden sollen.

Diese Eigenschaft ist nur verfügbar, wenn inputKind auf „PlainText“ festgelegt ist.
synthesisConfig.pitch Die Tonhöhe der Audioausgabe.

Informationen zu den akzeptierten Werten finden Sie in der Tabelle zum Anpassen der Prosodie in der SSML-Dokumentation (Speech Synthesis Markup Language). Ungültige Werte werden ignoriert.

Diese optionale Eigenschaft ist nur verfügbar, wenn inputKind auf „PlainText“ festgelegt ist.
synthesisConfig.rate Die Rate der Audioausgabe.

Informationen zu den akzeptierten Werten finden Sie in der Tabelle zum Anpassen der Prosodie in der SSML-Dokumentation (Speech Synthesis Markup Language). Ungültige Werte werden ignoriert.

Diese optionale Eigenschaft ist nur verfügbar, wenn inputKind auf „PlainText“ festgelegt ist.
synthesisConfig.style Für einige Stimmen können Sie die Sprechweise anpassen, um verschiedene Emotionen wie Fröhlichkeit, Empathie oder Ruhe auszudrücken. Sie können die Stimme auch für verschiedene Szenarios wie den Kundendienst, Nachrichtenbeiträge und die Verwendung des Sprach-Assistenten optimieren.

Informationen zu den verfügbaren Sprechweisen pro Stimme finden Sie unter Sprachstile und -rollen.

Diese optionale Eigenschaft ist nur verfügbar, wenn inputKind auf „PlainText“ festgelegt ist.
synthesisConfig.voice Die Stimme, die die Audioausgabe spricht.

Informationen zu den verfügbaren vordefinierten neuronalen Stimmen finden Sie unter Unterstützung von Sprachen und Stimmen. Zum Verwenden einer benutzerdefinierten Stimme müssen Sie in der Eigenschaft CustomVoices eine gültige Zuordnung von benutzerdefinierter Stimme und Bereitstellungs-ID angeben.

Diese Eigenschaft ist erforderlich, wenn inputKind auf „PlainText“ festgelegt ist.
synthesisConfig.volume Die Lautstärke der Audioausgabe.

Informationen zu den akzeptierten Werten finden Sie in der Tabelle zum Anpassen der Prosodie in der SSML-Dokumentation (Speech Synthesis Markup Language). Ungültige Werte werden ignoriert.

Diese optionale Eigenschaft ist nur verfügbar, wenn inputKind auf „PlainText“ festgelegt ist.
inputKind Gibt an, ob die Texteigenschaft Eingabe sich auf unformatierten Text oder SSML beziehen soll. Die möglichen Werte sind „PlainText“ und „SSML“ (ohne Beachtung der Groß-/Kleinschreibung). Wenn inputKind auf „PlainText“ festgelegt ist, müssen Sie auch die SynthesisConfig-VoIP-Eigenschaft festlegen.

Diese Eigenschaft ist erforderlich.

So bearbeiten Sie den Hintergrund

Die Avatar-Batchsynthese-API unterstützt derzeit das Festlegen von Hintergrundvideos nicht. Nur statische Hintergrundbilder werden unterstützt. Wenn Sie jedoch während der Nachproduktion einen Hintergrund für Ihr Video hinzufügen möchten, können Sie Videos mit einem transparenten Hintergrund generieren.

Verwenden Sie zum Festlegen eines statischen Hintergrundbilds die avatarConfig.backgroundImage-Eigenschaft, und geben Sie eine URL an, die auf das gewünschte Bild zeigt. Darüber hinaus können Sie die Hintergrundfarbe des Avatarvideos mithilfe der avatarConfig.backgroundColor-Eigenschaft festlegen.

Um ein transparentes Hintergrundvideo zu generieren, müssen Sie die folgenden Eigenschaften auf die erforderlichen Werte in der Batchsyntheseanforderung festlegen:

Eigenschaft Erforderliche Werte für Hintergrundtransparenz
properties.videoFormat webm
properties.videoCodec vp9
properties.backgroundColor #0000000000 (oder transparent)

Clipchamp ist ein Beispiel für ein Videobearbeitungstool, das das transparente Hintergrundvideo unterstützt, das von der Batchsynthese-API generiert wird.

Manche Videobearbeitungsprogramme unterstützen das webm-Format nicht direkt, sondern nur das .mov-Format der Eingabe von Videos mit transparentem Hintergrund wie Adobe Premiere Pro. In solchen Fällen müssen Sie zuerst das Videoformat von webm zu .mov mit einem Tool wie FFMPEG konvertieren.

FFMpeg-Befehlszeile:

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

FFMPEG kann von ffmpeg.org heruntergeladen werden. Ersetzen Sie <input.webm> und <output.mov> mit Ihrem lokalen Pfad und Dateinamen in der Befehlszeile.

Nächste Schritte