Schnellstart: Erstellen von Untertiteln mit Sprache-in-Text

Referenzdokumentation | Paket (NuGet) | Zusätzliche Beispiele auf GitHub

In diesem Schnellstart führen Sie eine Konsolen-App aus, um mit Sprache-in-Text Untertitel zu erstellen.

Tipp

Probieren Sie Speech Studio aus, und wählen Sie einen Beispielvideoclip aus, um das in Echtzeit oder offline verarbeitete Untertitelergebnis zu sehen.

Voraussetzungen

Einrichten der Umgebung

Das Speech SDK ist als NuGet-Paket verfügbar und implementiert .NET Standard 2.0. Sie installieren das Speech SDK im weiteren Verlauf dieses Leitfadens. Überprüfen Sie jedoch zunächst im SDK-Installationsleitfaden, ob weitere Anforderungen gelten.

Sie müssen auch GStreamer für komprimierte Eingabeaudios installieren.

Festlegen von Umgebungsvariablen

Ihre Anwendung muss authentifiziert werden, um auf die Azure KI Services-Ressourcen zugreifen zu können. In der Produktionsumgebung sollten Sie eine sichere Methode zum Speichern Ihrer Anmeldeinformationen sowie zum Zugriff darauf verwenden. Schreiben Sie beispielsweise nach dem Abrufen eines Schlüssels für Ihre Speech-Ressource diesen Schlüssel in eine neue Umgebungsvariable auf dem lokalen Computer, auf dem die Anwendung ausgeführt wird.

Tipp

Fügen Sie den Schlüssel nicht direkt in Ihren Code ein, und machen Sie ihn nicht öffentlich. Weitere Authentifizierungsoptionen wie z. B. Azure Key Vault finden Sie unter Sicherheit in Azure KI Services.

Um die Umgebungsvariable für Ihren Speech-Ressourcenschlüssel festzulegen, öffnen Sie ein Konsolenfenster und befolgen die Anweisungen für Ihr Betriebssystem und Ihre Entwicklungsumgebung.

  • Zum Festlegen der Umgebungsvariablen SPEECH_KEY ersetzen Sie your-key durch einen der Schlüssel für Ihre Ressource.
  • Zum Festlegen der Umgebungsvariablen SPEECH_REGION ersetzen Sie your-region durch eine der Regionen für Ihre Ressource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Hinweis

Wenn Sie nur in der aktuellen Konsole auf die Umgebungsvariable zugreifen müssen, können Sie die Variable mit set anstatt setx festlegen.

Nachdem Sie die Umgebungsvariablen hinzugefügt haben, müssen Sie möglicherweise alle Programme neu starten, die die Umgebungsvariablen lesen müssen, einschließlich des Konsolenfensters. Wenn Sie beispielsweise Visual Studio als Editor verwenden, starten Sie Visual Studio neu, bevor Sie das Beispiel ausführen.

Erstellen von Untertiteln aus Sprache

Führen Sie diese Schritte aus, um das Schnellstartbeispiel für Untertitel zu erstellen und auszuführen.

  1. Kopieren Sie die scenarios/csharp/dotnetcore/captioning/ Beispieldateien aus GitHub. Wenn Git installiert ist, öffnen Sie eine Eingabeaufforderung, und führen Sie den Befehl git clone aus, um das Repository mit den Speech SDK-Beispielen herunterzuladen.
    git clone https://github.com/Azure-Samples/cognitive-services-speech-sdk.git
    
  2. Öffnen Sie eine Eingabeaufforderung, und wechseln Sie zum Projektverzeichnis.
    cd <your-local-path>/scenarios/csharp/dotnetcore/captioning/captioning/
    
  3. Erstellen Sie das Projekt mit der .NET-CLI.
    dotnet build
    
  4. Führen Sie die Anwendung mit Ihren bevorzugten Befehlszeilenargumenten aus. Weitere Informationen zu den verfügbaren Optionen finden Sie unter Verwendung und Argumente. Dies ist ein Beispiel hierfür:
    dotnet run --input caption.this.mp4 --format any --output caption.output.txt --srt --realTime --threshold 5 --delay 0 --profanity mask --phrases "Contoso;Jessie;Rehaan"
    

    Wichtig

    Stellen Sie sicher, dass die durch --input und --output angegebenen Pfade gültig sind. Andernfalls müssen Sie die Pfade ändern.

    Stellen Sie sicher, dass Sie die Umgebungsvariablen SPEECH_KEY und SPEECH_REGION wie oben beschrieben festlegen. Andernfalls verwenden Sie die Argumente --key und --region.

Überprüfen der Ergebnisse

Wenn Sie im obigen Beispiel die Option realTime verwenden, werden die Teilergebnisse von Recognizing-Ereignissen in die Ausgabe einbezogen. In diesem Beispiel enthält nur das letzte Ereignis Recognized die Kommas. Kommas stellen nicht den einzigen Unterschied zwischen Recognizing- und Recognized-Ereignissen dar. Weitere Informationen finden Sie unter Abrufen von Teilergebnissen.

1
00:00:00,170 --> 00:00:00,380
The

2
00:00:00,380 --> 00:00:01,770
The rainbow

3
00:00:01,770 --> 00:00:02,560
The rainbow has seven

4
00:00:02,560 --> 00:00:03,820
The rainbow has seven colors

5
00:00:03,820 --> 00:00:05,050
The rainbow has seven colors red

6
00:00:05,050 --> 00:00:05,850
The rainbow has seven colors red
orange

7
00:00:05,850 --> 00:00:06,440
The rainbow has seven colors red
orange yellow

8
00:00:06,440 --> 00:00:06,730
The rainbow has seven colors red
orange yellow green

9
00:00:06,730 --> 00:00:07,160
orange, yellow, green, blue,
indigo and Violet.

Wenn Sie die Option --offline verwenden, sind die Ergebnisse ab dem letzten Recognized-Ereignis stabil. Teilergebnisse sind nicht in der Ausgabe enthalten:

1
00:00:00,170 --> 00:00:05,540
The rainbow has seven colors, red,
orange, yellow, green, blue,

2
00:00:05,540 --> 00:00:07,160
indigo and Violet.

Das Ausgabeformat für Zeitintervalle von SRT (SubRip Text) ist hh:mm:ss,fff. Weitere Informationen finden Sie unter Untertitelausgabeformat.

Verwendung und Argumente

Syntax: captioning --input <input file>

Beispiele für Verbindungsoptionen:

  • --key: Der Schlüssel Ihrer Speech-Ressource. Überschreibt die SPEECH_KEY-Umgebungsvariable. Sie müssen die Umgebungsvariable festlegen (empfohlen) oder die Option --key verwenden.
  • --region REGION: Die Region Ihrer Speech-Ressource. Überschreibt die SPEECH_REGION-Umgebungsvariable. Sie müssen die Umgebungsvariable festlegen (empfohlen) oder die Option --region verwenden. Beispiele: westus, northeurope

Beispiele für Eingabeoptionen:

  • --input FILE: Eingabe von Audio aus einer Datei. Die Standardeingabe ist das Mikrofon.
  • --format FORMAT: Verwenden des komprimierten Audioformats. Nur mit --file gültig. Gültige Werte sind alaw, any, flac, mp3, mulaw und ogg_opus. Standardwert: any. Um eine wav-Datei zu verwenden, geben Sie das Format nicht an. Diese Option ist nicht mit dem JavaScript-Untertitelbeispiel verfügbar. Für komprimierte Audiodateien, wie z. B. MP4, installieren Sie GStreamer und lesen Sie den Abschnitt Verwenden komprimierter Eingabe-Audiodaten.

Beispiele für Sprachoptionen:

  • --language LANG: Geben Sie eine Sprache an, indem Sie eines der zugehörigen unterstützten Gebietsschemata verwenden. Hiermit können Sie Untertitel in Zeilen unterteilen. Der Standardwert ist en-US.

Beispiele für Erkennungsoptionen:

  • --offline: Ausgabe von Offlineergebnissen. Überschreibt --realTime. Der Standardmodus für die Ausgabe lautet „Offline“.
  • --realTime: Ausgabe von Echtzeitergebnissen.

Die Echtzeitausgabe enthält Ergebnisse von Recognizing-Ereignissen. Die standardmäßige Offlineausgabe umfasst nur Ergebnisse von Recognized-Ereignissen. Diese werden immer in die Konsole geschrieben, nie in eine Ausgabedatei. Die Option --quiet überschreibt dies. Weitere Informationen finden Sie unter Abrufen von Spracherkennungsergebnissen.

Beispiele für Genauigkeitsoptionen:

Beispiele für Ausgabeoptionen:

  • --help: Diese Hilfe anzeigen und beenden.
  • --output FILE: Untertitel in die angegebene file ausgeben. Dieses Flag ist erforderlich.
  • --srt: Untertitel im SRT-Format (SubRip-Text) ausgeben. Das Standardformat ist WebVTT (Web VideoText Tracks). Weitere Informationen zu SRT- und WebVTT-Untertiteldateiformaten finden Sie unter Untertitelausgabeformat.
  • --maxLineLength LENGTH: Legt die maximale Anzahl von Zeichen pro Zeile für einen Untertitel auf LENGTH fest. Der Mindestwert lautet 20. Der Standardwert beträgt 37 (30 für Chinesisch).
  • --lines LINES: Legt Sie die Anzahl von Zeilen für einen Untertitel auf LINES fest. Der Mindestwert lautet 1. Standard ist 2.
  • --delay MILLISECONDS: Gibt an, um wie viele Millisekunden die Anzeige jedes Untertitels verzögert werden soll, um ein Echtzeiterlebnis zu simulieren. Diese Option ist nur anwendbar, wenn Sie das Flag realTime verwenden. Der Mindestwert lautet 0.0. Der Standard ist 1000.
  • --remainTime MILLISECONDS: Gibt an, wie viele Millisekunden ein Untertitel auf dem Bildschirm angezeigt werden soll, wenn er nicht durch einen anderen ersetzt wird. Der Mindestwert lautet 0.0. Der Standard ist 1000.
  • --quiet: Unterdrücken der Konsolenausgabe, außer bei Fehlern.
  • --profanity OPTION: Gültige Werte: roh, entfernen, Maske. Weitere Informationen finden Sie unter Obszönitätsfilter-Konzepte.
  • --threshold NUMBER: Festlegen des Schwellenwerts für stabile Teilergebnisse. Standardwert: 3. Diese Option ist nur anwendbar, wenn Sie das Flag realTime verwenden. Weitere Informationen finden Sie unter Konzepte zum Abrufen von Teilergebnissen.

Bereinigen von Ressourcen

Sie können das Azure-Portal oder die Azure-Befehlszeilenschnittstelle (CLI) verwenden, um die erstellte Speech-Ressource zu entfernen.

Referenzdokumentation | Paket (NuGet) | Zusätzliche Beispiele auf GitHub

In diesem Schnellstart führen Sie eine Konsolen-App aus, um mit Sprache-in-Text Untertitel zu erstellen.

Tipp

Probieren Sie Speech Studio aus, und wählen Sie einen Beispielvideoclip aus, um das in Echtzeit oder offline verarbeitete Untertitelergebnis zu sehen.

Voraussetzungen

Einrichten der Umgebung

Das Speech SDK ist als NuGet-Paket verfügbar und implementiert .NET Standard 2.0. Sie installieren das Speech SDK im weiteren Verlauf dieses Leitfadens. Überprüfen Sie jedoch zunächst im SDK-Installationsleitfaden, ob weitere Anforderungen gelten.

Sie müssen auch GStreamer für komprimierte Eingabeaudios installieren.

Festlegen von Umgebungsvariablen

Ihre Anwendung muss authentifiziert werden, um auf die Azure KI Services-Ressourcen zugreifen zu können. In der Produktionsumgebung sollten Sie eine sichere Methode zum Speichern Ihrer Anmeldeinformationen sowie zum Zugriff darauf verwenden. Schreiben Sie beispielsweise nach dem Abrufen eines Schlüssels für Ihre Speech-Ressource diesen Schlüssel in eine neue Umgebungsvariable auf dem lokalen Computer, auf dem die Anwendung ausgeführt wird.

Tipp

Fügen Sie den Schlüssel nicht direkt in Ihren Code ein, und machen Sie ihn nicht öffentlich. Weitere Authentifizierungsoptionen wie z. B. Azure Key Vault finden Sie unter Sicherheit in Azure KI Services.

Um die Umgebungsvariable für Ihren Speech-Ressourcenschlüssel festzulegen, öffnen Sie ein Konsolenfenster und befolgen die Anweisungen für Ihr Betriebssystem und Ihre Entwicklungsumgebung.

  • Zum Festlegen der Umgebungsvariablen SPEECH_KEY ersetzen Sie your-key durch einen der Schlüssel für Ihre Ressource.
  • Zum Festlegen der Umgebungsvariablen SPEECH_REGION ersetzen Sie your-region durch eine der Regionen für Ihre Ressource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Hinweis

Wenn Sie nur in der aktuellen Konsole auf die Umgebungsvariable zugreifen müssen, können Sie die Variable mit set anstatt setx festlegen.

Nachdem Sie die Umgebungsvariablen hinzugefügt haben, müssen Sie möglicherweise alle Programme neu starten, die die Umgebungsvariablen lesen müssen, einschließlich des Konsolenfensters. Wenn Sie beispielsweise Visual Studio als Editor verwenden, starten Sie Visual Studio neu, bevor Sie das Beispiel ausführen.

Erstellen von Untertiteln aus Sprache

Führen Sie die folgenden Schritte aus, um das Schnellstartcodebeispiel für Untertitel mit Visual Studio Community 2022 unter Windows zu erstellen und auszuführen.

  1. scenarios/cpp/windows/captioning/ von GitHub in ein lokales Verzeichnis oder laden Sie sie herunter.

  2. Öffnen Sie die Projektmappendatei captioning.sln in Visual Studio Community 2022.

  3. Installieren Sie das Speech SDK mit dem NuGet-Paket-Manager in Ihrem Projekt.

    Install-Package Microsoft.CognitiveServices.Speech
    
  4. Öffnen Sie Projekt>Eigenschaften>Allgemein. Legen Sie die Konfiguration auf All configurations fest. Setzen Sie den C++ Sprachenstandard auf ISO C++17 Standard (/std:c++17).

  5. Öffnen Sie Build>Konfigurations-Manager.

    • Legen Sie in einer 64-Bit-Windows-Installation die Aktive Lösungsplattform auf x64 fest.
    • Legen Sie in einer 32-Bit-Windows-Installation die Aktive Lösungsplattform auf x86 fest.
  6. Öffnen Sie Projekt>Eigenschaften>Debugging. Geben Sie ihre bevorzugten Befehlszeilenargumente bei Befehlsargumenten ein. Weitere Informationen zu den verfügbaren Optionen finden Sie unter Verwendung und Argumente. Beispiel:

    --input caption.this.mp4 --format any --output caption.output.txt --srt --realTime --threshold 5 --delay 0 --profanity mask --phrases "Contoso;Jessie;Rehaan"
    

    Wichtig

    Stellen Sie sicher, dass die durch --input und --output angegebenen Pfade gültig sind. Andernfalls müssen Sie die Pfade ändern.

    Stellen Sie sicher, dass Sie die Umgebungsvariablen SPEECH_KEY und SPEECH_REGION wie oben beschrieben festlegen. Andernfalls verwenden Sie die Argumente --key und --region.

  7. Erstellen Sie die Konsolenanwendung, und führen Sie sie aus.

Überprüfen der Ergebnisse

Wenn Sie im obigen Beispiel die Option realTime verwenden, werden die Teilergebnisse von Recognizing-Ereignissen in die Ausgabe einbezogen. In diesem Beispiel enthält nur das letzte Ereignis Recognized die Kommas. Kommas stellen nicht den einzigen Unterschied zwischen Recognizing- und Recognized-Ereignissen dar. Weitere Informationen finden Sie unter Abrufen von Teilergebnissen.

1
00:00:00,170 --> 00:00:00,380
The

2
00:00:00,380 --> 00:00:01,770
The rainbow

3
00:00:01,770 --> 00:00:02,560
The rainbow has seven

4
00:00:02,560 --> 00:00:03,820
The rainbow has seven colors

5
00:00:03,820 --> 00:00:05,050
The rainbow has seven colors red

6
00:00:05,050 --> 00:00:05,850
The rainbow has seven colors red
orange

7
00:00:05,850 --> 00:00:06,440
The rainbow has seven colors red
orange yellow

8
00:00:06,440 --> 00:00:06,730
The rainbow has seven colors red
orange yellow green

9
00:00:06,730 --> 00:00:07,160
orange, yellow, green, blue,
indigo and Violet.

Wenn Sie die Option --offline verwenden, sind die Ergebnisse ab dem letzten Recognized-Ereignis stabil. Teilergebnisse sind nicht in der Ausgabe enthalten:

1
00:00:00,170 --> 00:00:05,540
The rainbow has seven colors, red,
orange, yellow, green, blue,

2
00:00:05,540 --> 00:00:07,160
indigo and Violet.

Das Ausgabeformat für Zeitintervalle von SRT (SubRip Text) ist hh:mm:ss,fff. Weitere Informationen finden Sie unter Untertitelausgabeformat.

Verwendung und Argumente

Syntax: captioning --input <input file>

Beispiele für Verbindungsoptionen:

  • --key: Der Schlüssel Ihrer Speech-Ressource. Überschreibt die SPEECH_KEY-Umgebungsvariable. Sie müssen die Umgebungsvariable festlegen (empfohlen) oder die Option --key verwenden.
  • --region REGION: Die Region Ihrer Speech-Ressource. Überschreibt die SPEECH_REGION-Umgebungsvariable. Sie müssen die Umgebungsvariable festlegen (empfohlen) oder die Option --region verwenden. Beispiele: westus, northeurope

Beispiele für Eingabeoptionen:

  • --input FILE: Eingabe von Audio aus einer Datei. Die Standardeingabe ist das Mikrofon.
  • --format FORMAT: Verwenden des komprimierten Audioformats. Nur mit --file gültig. Gültige Werte sind alaw, any, flac, mp3, mulaw und ogg_opus. Standardwert: any. Um eine wav-Datei zu verwenden, geben Sie das Format nicht an. Diese Option ist nicht mit dem JavaScript-Untertitelbeispiel verfügbar. Für komprimierte Audiodateien, wie z. B. MP4, installieren Sie GStreamer und lesen Sie den Abschnitt Verwenden komprimierter Eingabe-Audiodaten.

Beispiele für Sprachoptionen:

  • --language LANG: Geben Sie eine Sprache an, indem Sie eines der zugehörigen unterstützten Gebietsschemata verwenden. Hiermit können Sie Untertitel in Zeilen unterteilen. Der Standardwert ist en-US.

Beispiele für Erkennungsoptionen:

  • --offline: Ausgabe von Offlineergebnissen. Überschreibt --realTime. Der Standardmodus für die Ausgabe lautet „Offline“.
  • --realTime: Ausgabe von Echtzeitergebnissen.

Die Echtzeitausgabe enthält Ergebnisse von Recognizing-Ereignissen. Die standardmäßige Offlineausgabe umfasst nur Ergebnisse von Recognized-Ereignissen. Diese werden immer in die Konsole geschrieben, nie in eine Ausgabedatei. Die Option --quiet überschreibt dies. Weitere Informationen finden Sie unter Abrufen von Spracherkennungsergebnissen.

Beispiele für Genauigkeitsoptionen:

Beispiele für Ausgabeoptionen:

  • --help: Diese Hilfe anzeigen und beenden.
  • --output FILE: Untertitel in die angegebene file ausgeben. Dieses Flag ist erforderlich.
  • --srt: Untertitel im SRT-Format (SubRip-Text) ausgeben. Das Standardformat ist WebVTT (Web VideoText Tracks). Weitere Informationen zu SRT- und WebVTT-Untertiteldateiformaten finden Sie unter Untertitelausgabeformat.
  • --maxLineLength LENGTH: Legt die maximale Anzahl von Zeichen pro Zeile für einen Untertitel auf LENGTH fest. Der Mindestwert lautet 20. Der Standardwert beträgt 37 (30 für Chinesisch).
  • --lines LINES: Legt Sie die Anzahl von Zeilen für einen Untertitel auf LINES fest. Der Mindestwert lautet 1. Standard ist 2.
  • --delay MILLISECONDS: Gibt an, um wie viele Millisekunden die Anzeige jedes Untertitels verzögert werden soll, um ein Echtzeiterlebnis zu simulieren. Diese Option ist nur anwendbar, wenn Sie das Flag realTime verwenden. Der Mindestwert lautet 0.0. Der Standard ist 1000.
  • --remainTime MILLISECONDS: Gibt an, wie viele Millisekunden ein Untertitel auf dem Bildschirm angezeigt werden soll, wenn er nicht durch einen anderen ersetzt wird. Der Mindestwert lautet 0.0. Der Standard ist 1000.
  • --quiet: Unterdrücken der Konsolenausgabe, außer bei Fehlern.
  • --profanity OPTION: Gültige Werte: roh, entfernen, Maske. Weitere Informationen finden Sie unter Obszönitätsfilter-Konzepte.
  • --threshold NUMBER: Festlegen des Schwellenwerts für stabile Teilergebnisse. Standardwert: 3. Diese Option ist nur anwendbar, wenn Sie das Flag realTime verwenden. Weitere Informationen finden Sie unter Konzepte zum Abrufen von Teilergebnissen.

Bereinigen von Ressourcen

Sie können das Azure-Portal oder die Azure-Befehlszeilenschnittstelle (CLI) verwenden, um die erstellte Speech-Ressource zu entfernen.

Referenzdokumentation | Paket (Go) | Zusätzliche Beispiele auf GitHub

In diesem Schnellstart führen Sie eine Konsolen-App aus, um mit Sprache-in-Text Untertitel zu erstellen.

Tipp

Probieren Sie Speech Studio aus, und wählen Sie einen Beispielvideoclip aus, um das in Echtzeit oder offline verarbeitete Untertitelergebnis zu sehen.

Voraussetzungen

Einrichten der Umgebung

Überprüfen Sie, ob es plattformspezifische Installationsschritte gibt.

Sie müssen auch GStreamer für komprimierte Eingabeaudios installieren.

Erstellen von Untertiteln aus Sprache

Führen Sie diese Schritte aus, um das Schnellstartbeispiel für Untertitel zu erstellen und auszuführen.

  1. scenarios/go/captioning/ von GitHub in ein lokales Verzeichnis oder laden Sie sie herunter.

  2. Öffnen Sie im gleichen Verzeichnis wie captioning.go eine Eingabeaufforderung.

  3. Führen Sie die folgenden Befehle aus, um eine Datei namens go.mod zu erstellen, die mit dem auf GitHub gehosteten Speech SDK verknüpft ist.

    go mod init captioning
    go get github.com/Microsoft/cognitive-services-speech-sdk-go
    
  4. Erstellen Sie das GO-Modul.

    go build
    
  5. Führen Sie die Anwendung mit Ihren bevorzugten Befehlszeilenargumenten aus. Weitere Informationen zu den verfügbaren Optionen finden Sie unter Verwendung und Argumente. Beispiel:

    go run captioning --key YourSubscriptionKey --region YourServiceRegion --input caption.this.mp4 --format any --output caption.output.txt --srt --recognizing --threshold 5 --profanity mask --phrases "Contoso;Jessie;Rehaan"
    

    Ersetzen Sie YourSubscriptionKey durch den Schlüssel Ihrer Speech-Ressource und YourServiceRegion durch die Region Ihrer Speech-Ressource, wie z. B. westus oder northeurope. Stellen Sie sicher, dass die durch --input und --output angegebenen Pfade gültig sind. Andernfalls müssen Sie die Pfade ändern.

    Wichtig

    Denken Sie daran, den Schlüssel aus Ihrem Code zu entfernen, wenn Sie fertig sind, und ihn niemals zu veröffentlichen. Verwenden Sie für die Produktion eine sichere Art der Speicherung und des Zugriffs auf Ihre Anmeldeinformationen wie Azure Key Vault. Weitere Informationen finden Sie im Artikel zur Azure KI Services-Sicherheit.

Überprüfen der Ergebnisse

Die Ausgabedatei mit vollständigen Untertiteln wird in caption.output.txtgeschrieben. Zwischenergebnisse werden in der Konsole angezeigt:

00:00:00,180 --> 00:00:01,600
Welcome to

00:00:00,180 --> 00:00:01,820
Welcome to applied

00:00:00,180 --> 00:00:02,420
Welcome to applied mathematics

00:00:00,180 --> 00:00:02,930
Welcome to applied mathematics course

00:00:00,180 --> 00:00:03,100
Welcome to applied Mathematics course 2

00:00:00,180 --> 00:00:03,230
Welcome to applied Mathematics course 201.

Das Ausgabeformat für Zeitintervalle von SRT (SubRip Text) ist hh:mm:ss,fff. Weitere Informationen finden Sie unter Untertitelausgabeformat.

Verwendung und Argumente

Syntax: go run captioning.go helper.go --key <key> --region <region> --input <input file>

Beispiele für Verbindungsoptionen:

  • --key: Der Schlüssel Ihrer Speech-Ressource.
  • --region REGION: Die Region Ihrer Speech-Ressource. Beispiele: westus, northeurope

Beispiele für Eingabeoptionen:

  • --input FILE: Eingabe von Audio aus einer Datei. Die Standardeingabe ist das Mikrofon.
  • --format FORMAT: Verwenden des komprimierten Audioformats. Nur mit --file gültig. Gültige Werte sind alaw, any, flac, mp3, mulaw und ogg_opus. Standardwert: any. Um eine wav-Datei zu verwenden, geben Sie das Format nicht an. Diese Option ist nicht mit dem JavaScript-Untertitelbeispiel verfügbar. Für komprimierte Audiodateien, wie z. B. MP4, installieren Sie GStreamer und lesen Sie den Abschnitt Verwenden komprimierter Eingabe-Audiodaten.

Beispiele für Sprachoptionen:

  • --languages LANG1,LANG2: Aktivieren der Sprachenerkennung für angegebene Sprachen. Beispiel: en-US,ja-JP. Diese Option ist nur mit den Beispiel-Untertiteln in C++, C# und Python verfügbar. Weitere Informationen finden Sie unter Sprachenerkennung.

Beispiele für Erkennungsoptionen:

  • --recognizing: Ausgabe Recognizing der Ergebnisse von Ereignissen. Die Standardausgabe ist nur Recognized Ergebnisse von Ereignissen. Diese werden immer in die Konsole geschrieben, nie in eine Ausgabedatei. Die Option --quiet überschreibt dies. Weitere Informationen finden Sie unter Abrufen von Spracherkennungsergebnissen.

Beispiele für Genauigkeitsoptionen:

Beispiele für Ausgabeoptionen:

  • --help: Diese Hilfe anzeigen und beenden.
  • --output FILE: Untertitel in die angegebene file ausgeben. Dieses Flag ist erforderlich.
  • --srt: Untertitel im SRT-Format (SubRip-Text) ausgeben. Das Standardformat ist WebVTT (Web VideoText Tracks). Weitere Informationen zu SRT- und WebVTT-Untertiteldateiformaten finden Sie unter Untertitelausgabeformat.
  • --quiet: Unterdrücken der Konsolenausgabe, außer bei Fehlern.
  • --profanity OPTION: Gültige Werte: roh, entfernen, Maske. Weitere Informationen finden Sie unter Obszönitätsfilter-Konzepte.
  • --threshold NUMBER: Festlegen des Schwellenwerts für stabile Teilergebnisse. Standardwert: 3. Weitere Informationen finden Sie unter Konzepte zum Abrufen von Teilergebnissen.

Bereinigen von Ressourcen

Sie können das Azure-Portal oder die Azure-Befehlszeilenschnittstelle (CLI) verwenden, um die erstellte Speech-Ressource zu entfernen.

Referenzdokumentation | Zusätzliche Beispiele auf GitHub

In diesem Schnellstart führen Sie eine Konsolen-App aus, um mit Sprache-in-Text Untertitel zu erstellen.

Tipp

Probieren Sie Speech Studio aus, und wählen Sie einen Beispielvideoclip aus, um das in Echtzeit oder offline verarbeitete Untertitelergebnis zu sehen.

Voraussetzungen

Einrichten der Umgebung

Bevor Sie anfangen können, müssen Sie das Speech SDK installieren. Das Beispiel in diesem Schnellstart funktioniert mit dem Microsoft Build of OpenJDK 17.

  1. Installieren Sie Apache Maven. Führen Sie dann mvn -v aus, um die erfolgreiche Installation zu bestätigen.
  2. Erstellen Sie im Stammverzeichnis Ihres Projekts eine neue Datei pom.xml und kopieren Sie Folgendes hinein:
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <groupId>com.microsoft.cognitiveservices.speech.samples</groupId>
        <artifactId>quickstart-eclipse</artifactId>
        <version>1.0.0-SNAPSHOT</version>
        <build>
            <sourceDirectory>src</sourceDirectory>
            <plugins>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.7.0</version>
                <configuration>
                <source>1.8</source>
                <target>1.8</target>
                </configuration>
            </plugin>
            </plugins>
        </build>
        <dependencies>
            <dependency>
            <groupId>com.microsoft.cognitiveservices.speech</groupId>
            <artifactId>client-sdk</artifactId>
            <version>1.37.0</version>
            </dependency>
        </dependencies>
    </project>
    
  3. Installieren Sie das Speech SDK und Abhängigkeiten.
    mvn clean dependency:copy-dependencies
    
  4. Sie müssen auch GStreamer für komprimierte Eingabeaudios installieren.

Festlegen von Umgebungsvariablen

Ihre Anwendung muss authentifiziert werden, um auf die Azure KI Services-Ressourcen zugreifen zu können. In der Produktionsumgebung sollten Sie eine sichere Methode zum Speichern Ihrer Anmeldeinformationen sowie zum Zugriff darauf verwenden. Schreiben Sie beispielsweise nach dem Abrufen eines Schlüssels für Ihre Speech-Ressource diesen Schlüssel in eine neue Umgebungsvariable auf dem lokalen Computer, auf dem die Anwendung ausgeführt wird.

Tipp

Fügen Sie den Schlüssel nicht direkt in Ihren Code ein, und machen Sie ihn nicht öffentlich. Weitere Authentifizierungsoptionen wie z. B. Azure Key Vault finden Sie unter Sicherheit in Azure KI Services.

Um die Umgebungsvariable für Ihren Speech-Ressourcenschlüssel festzulegen, öffnen Sie ein Konsolenfenster und befolgen die Anweisungen für Ihr Betriebssystem und Ihre Entwicklungsumgebung.

  • Zum Festlegen der Umgebungsvariablen SPEECH_KEY ersetzen Sie your-key durch einen der Schlüssel für Ihre Ressource.
  • Zum Festlegen der Umgebungsvariablen SPEECH_REGION ersetzen Sie your-region durch eine der Regionen für Ihre Ressource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Hinweis

Wenn Sie nur in der aktuellen Konsole auf die Umgebungsvariable zugreifen müssen, können Sie die Variable mit set anstatt setx festlegen.

Nachdem Sie die Umgebungsvariablen hinzugefügt haben, müssen Sie möglicherweise alle Programme neu starten, die die Umgebungsvariablen lesen müssen, einschließlich des Konsolenfensters. Wenn Sie beispielsweise Visual Studio als Editor verwenden, starten Sie Visual Studio neu, bevor Sie das Beispiel ausführen.

Erstellen von Untertiteln aus Sprache

Führen Sie diese Schritte aus, um das Schnellstartbeispiel für Untertitel zu erstellen und auszuführen.

  1. scenarios/java/jre/captioning/ von GitHub in Ihr Projektverzeichnis. Die pom.xml-Datei, die Sie in der Umgebungseinrichtung erstellt haben, muss sich auch in diesem Verzeichnis befinden.
  2. Öffnen Sie eine Eingabeaufforderung, und führen Sie diesen Befehl aus, um die Projektdateien zu kompilieren.
    javac Captioning.java -cp ".;target\dependency\*" -encoding UTF-8
    
  3. Führen Sie die Anwendung mit Ihren bevorzugten Befehlszeilenargumenten aus. Weitere Informationen zu den verfügbaren Optionen finden Sie unter Verwendung und Argumente. Dies ist ein Beispiel hierfür:
    java -cp ".;target\dependency\*" Captioning --input caption.this.mp4 --format any --output caption.output.txt --srt --realTime --threshold 5 --delay 0 --profanity mask --phrases "Contoso;Jessie;Rehaan"
    

    Wichtig

    Stellen Sie sicher, dass die durch --input und --output angegebenen Pfade gültig sind. Andernfalls müssen Sie die Pfade ändern.

    Stellen Sie sicher, dass Sie die Umgebungsvariablen SPEECH_KEY und SPEECH_REGION wie oben beschrieben festlegen. Andernfalls verwenden Sie die Argumente --key und --region.

Überprüfen der Ergebnisse

Wenn Sie im obigen Beispiel die Option realTime verwenden, werden die Teilergebnisse von Recognizing-Ereignissen in die Ausgabe einbezogen. In diesem Beispiel enthält nur das letzte Ereignis Recognized die Kommas. Kommas stellen nicht den einzigen Unterschied zwischen Recognizing- und Recognized-Ereignissen dar. Weitere Informationen finden Sie unter Abrufen von Teilergebnissen.

1
00:00:00,170 --> 00:00:00,380
The

2
00:00:00,380 --> 00:00:01,770
The rainbow

3
00:00:01,770 --> 00:00:02,560
The rainbow has seven

4
00:00:02,560 --> 00:00:03,820
The rainbow has seven colors

5
00:00:03,820 --> 00:00:05,050
The rainbow has seven colors red

6
00:00:05,050 --> 00:00:05,850
The rainbow has seven colors red
orange

7
00:00:05,850 --> 00:00:06,440
The rainbow has seven colors red
orange yellow

8
00:00:06,440 --> 00:00:06,730
The rainbow has seven colors red
orange yellow green

9
00:00:06,730 --> 00:00:07,160
orange, yellow, green, blue,
indigo and Violet.

Wenn Sie die Option --offline verwenden, sind die Ergebnisse ab dem letzten Recognized-Ereignis stabil. Teilergebnisse sind nicht in der Ausgabe enthalten:

1
00:00:00,170 --> 00:00:05,540
The rainbow has seven colors, red,
orange, yellow, green, blue,

2
00:00:05,540 --> 00:00:07,160
indigo and Violet.

Das Ausgabeformat für Zeitintervalle von SRT (SubRip Text) ist hh:mm:ss,fff. Weitere Informationen finden Sie unter Untertitelausgabeformat.

Verwendung und Argumente

Syntax: java -cp ".;target\dependency\*" Captioning --input <input file>

Beispiele für Verbindungsoptionen:

  • --key: Der Schlüssel Ihrer Speech-Ressource. Überschreibt die SPEECH_KEY-Umgebungsvariable. Sie müssen die Umgebungsvariable festlegen (empfohlen) oder die Option --key verwenden.
  • --region REGION: Die Region Ihrer Speech-Ressource. Überschreibt die SPEECH_REGION-Umgebungsvariable. Sie müssen die Umgebungsvariable festlegen (empfohlen) oder die Option --region verwenden. Beispiele: westus, northeurope

Beispiele für Eingabeoptionen:

  • --input FILE: Eingabe von Audio aus einer Datei. Die Standardeingabe ist das Mikrofon.
  • --format FORMAT: Verwenden des komprimierten Audioformats. Nur mit --file gültig. Gültige Werte sind alaw, any, flac, mp3, mulaw und ogg_opus. Standardwert: any. Um eine wav-Datei zu verwenden, geben Sie das Format nicht an. Diese Option ist nicht mit dem JavaScript-Untertitelbeispiel verfügbar. Für komprimierte Audiodateien, wie z. B. MP4, installieren Sie GStreamer und lesen Sie den Abschnitt Verwenden komprimierter Eingabe-Audiodaten.

Beispiele für Sprachoptionen:

  • --language LANG: Geben Sie eine Sprache an, indem Sie eines der zugehörigen unterstützten Gebietsschemata verwenden. Hiermit können Sie Untertitel in Zeilen unterteilen. Der Standardwert ist en-US.

Beispiele für Erkennungsoptionen:

  • --offline: Ausgabe von Offlineergebnissen. Überschreibt --realTime. Der Standardmodus für die Ausgabe lautet „Offline“.
  • --realTime: Ausgabe von Echtzeitergebnissen.

Die Echtzeitausgabe enthält Ergebnisse von Recognizing-Ereignissen. Die standardmäßige Offlineausgabe umfasst nur Ergebnisse von Recognized-Ereignissen. Diese werden immer in die Konsole geschrieben, nie in eine Ausgabedatei. Die Option --quiet überschreibt dies. Weitere Informationen finden Sie unter Abrufen von Spracherkennungsergebnissen.

Beispiele für Genauigkeitsoptionen:

Beispiele für Ausgabeoptionen:

  • --help: Diese Hilfe anzeigen und beenden.
  • --output FILE: Untertitel in die angegebene file ausgeben. Dieses Flag ist erforderlich.
  • --srt: Untertitel im SRT-Format (SubRip-Text) ausgeben. Das Standardformat ist WebVTT (Web VideoText Tracks). Weitere Informationen zu SRT- und WebVTT-Untertiteldateiformaten finden Sie unter Untertitelausgabeformat.
  • --maxLineLength LENGTH: Legt die maximale Anzahl von Zeichen pro Zeile für einen Untertitel auf LENGTH fest. Der Mindestwert lautet 20. Der Standardwert beträgt 37 (30 für Chinesisch).
  • --lines LINES: Legt Sie die Anzahl von Zeilen für einen Untertitel auf LINES fest. Der Mindestwert lautet 1. Standard ist 2.
  • --delay MILLISECONDS: Gibt an, um wie viele Millisekunden die Anzeige jedes Untertitels verzögert werden soll, um ein Echtzeiterlebnis zu simulieren. Diese Option ist nur anwendbar, wenn Sie das Flag realTime verwenden. Der Mindestwert lautet 0.0. Der Standard ist 1000.
  • --remainTime MILLISECONDS: Gibt an, wie viele Millisekunden ein Untertitel auf dem Bildschirm angezeigt werden soll, wenn er nicht durch einen anderen ersetzt wird. Der Mindestwert lautet 0.0. Der Standard ist 1000.
  • --quiet: Unterdrücken der Konsolenausgabe, außer bei Fehlern.
  • --profanity OPTION: Gültige Werte: roh, entfernen, Maske. Weitere Informationen finden Sie unter Obszönitätsfilter-Konzepte.
  • --threshold NUMBER: Festlegen des Schwellenwerts für stabile Teilergebnisse. Standardwert: 3. Diese Option ist nur anwendbar, wenn Sie das Flag realTime verwenden. Weitere Informationen finden Sie unter Konzepte zum Abrufen von Teilergebnissen.

Bereinigen von Ressourcen

Sie können das Azure-Portal oder die Azure-Befehlszeilenschnittstelle (CLI) verwenden, um die erstellte Speech-Ressource zu entfernen.

Referenzdokumentation | Paket (npm) | Zusätzliche Beispiele auf GitHub | Quellcode der Bibliothek

In diesem Schnellstart führen Sie eine Konsolen-App aus, um mit Sprache-in-Text Untertitel zu erstellen.

Tipp

Probieren Sie Speech Studio aus, und wählen Sie einen Beispielvideoclip aus, um das in Echtzeit oder offline verarbeitete Untertitelergebnis zu sehen.

Voraussetzungen

Einrichten der Umgebung

Zuallererst müssen Sie das Speech SDK für JavaScript installieren. Falls Sie lediglich den Paketnamen für die Installation benötigen, können Sie den folgenden Befehl ausführen: npm install microsoft-cognitiveservices-speech-sdk. Anweisungen zu einer geführten Installation finden Sie im SDK-Installationsleitfaden.

Erstellen von Untertiteln aus Sprache

Führen Sie diese Schritte aus, um das Schnellstartbeispiel für Untertitel zu erstellen und auszuführen.

  1. scenarios/javascript/node/captioning/ von GitHub in Ihr Projektverzeichnis.

  2. Öffnen Sie im gleichen Verzeichnis wie Captioning.js eine Eingabeaufforderung.

  3. Installieren Sie das Speech SDK für JavaScript:

    npm install microsoft-cognitiveservices-speech-sdk
    
  4. Führen Sie die Anwendung mit Ihren bevorzugten Befehlszeilenargumenten aus. Weitere Informationen zu den verfügbaren Optionen finden Sie unter Verwendung und Argumente. Beispiel:

    node captioning.js --key YourSubscriptionKey --region YourServiceRegion --input caption.this.wav --output caption.output.txt --srt --recognizing --threshold 5 --profanity mask --phrases "Contoso;Jessie;Rehaan"
    

    Ersetzen Sie YourSubscriptionKey durch den Schlüssel Ihrer Speech-Ressource und YourServiceRegion durch die Region Ihrer Speech-Ressource, wie z. B. westus oder northeurope. Stellen Sie sicher, dass die durch --input und --output angegebenen Pfade gültig sind. Andernfalls müssen Sie die Pfade ändern.

    Hinweis

    Das Speech SDK für JavaScript unterstützt keine komprimierten Eingabe-Audiodaten. Sie müssen eine WAV-Datei verwenden, wie im Beispiel dargestellt.

    Wichtig

    Denken Sie daran, den Schlüssel aus Ihrem Code zu entfernen, wenn Sie fertig sind, und ihn niemals zu veröffentlichen. Verwenden Sie für die Produktion eine sichere Art der Speicherung und des Zugriffs auf Ihre Anmeldeinformationen wie Azure Key Vault. Weitere Informationen finden Sie im Artikel zur Azure KI Services-Sicherheit.

Überprüfen der Ergebnisse

Die Ausgabedatei mit vollständigen Untertiteln wird in caption.output.txtgeschrieben. Zwischenergebnisse werden in der Konsole angezeigt:

00:00:00,180 --> 00:00:01,600
Welcome to

00:00:00,180 --> 00:00:01,820
Welcome to applied

00:00:00,180 --> 00:00:02,420
Welcome to applied mathematics

00:00:00,180 --> 00:00:02,930
Welcome to applied mathematics course

00:00:00,180 --> 00:00:03,100
Welcome to applied Mathematics course 2

00:00:00,180 --> 00:00:03,230
Welcome to applied Mathematics course 201.

Das Ausgabeformat für Zeitintervalle von SRT (SubRip Text) ist hh:mm:ss,fff. Weitere Informationen finden Sie unter Untertitelausgabeformat.

Verwendung und Argumente

Syntax: node captioning.js --key <key> --region <region> --input <input file>

Beispiele für Verbindungsoptionen:

  • --key: Der Schlüssel Ihrer Speech-Ressource.
  • --region REGION: Die Region Ihrer Speech-Ressource. Beispiele: westus, northeurope

Beispiele für Eingabeoptionen:

  • --input FILE: Eingabe von Audio aus einer Datei. Die Standardeingabe ist das Mikrofon.
  • --format FORMAT: Verwenden des komprimierten Audioformats. Nur mit --file gültig. Gültige Werte sind alaw, any, flac, mp3, mulaw und ogg_opus. Standardwert: any. Um eine wav-Datei zu verwenden, geben Sie das Format nicht an. Diese Option ist nicht mit dem JavaScript-Untertitelbeispiel verfügbar. Für komprimierte Audiodateien, wie z. B. MP4, installieren Sie GStreamer und lesen Sie den Abschnitt Verwenden komprimierter Eingabe-Audiodaten.

Beispiele für Sprachoptionen:

  • --languages LANG1,LANG2: Aktivieren der Sprachenerkennung für angegebene Sprachen. Beispiel: en-US,ja-JP. Diese Option ist nur mit den Beispiel-Untertiteln in C++, C# und Python verfügbar. Weitere Informationen finden Sie unter Sprachenerkennung.

Beispiele für Erkennungsoptionen:

  • --recognizing: Ausgabe Recognizing der Ergebnisse von Ereignissen. Die Standardausgabe ist nur Recognized Ergebnisse von Ereignissen. Diese werden immer in die Konsole geschrieben, nie in eine Ausgabedatei. Die Option --quiet überschreibt dies. Weitere Informationen finden Sie unter Abrufen von Spracherkennungsergebnissen.

Beispiele für Genauigkeitsoptionen:

Beispiele für Ausgabeoptionen:

  • --help: Diese Hilfe anzeigen und beenden.
  • --output FILE: Untertitel in die angegebene file ausgeben. Dieses Flag ist erforderlich.
  • --srt: Untertitel im SRT-Format (SubRip-Text) ausgeben. Das Standardformat ist WebVTT (Web VideoText Tracks). Weitere Informationen zu SRT- und WebVTT-Untertiteldateiformaten finden Sie unter Untertitelausgabeformat.
  • --quiet: Unterdrücken der Konsolenausgabe, außer bei Fehlern.
  • --profanity OPTION: Gültige Werte: roh, entfernen, Maske. Weitere Informationen finden Sie unter Obszönitätsfilter-Konzepte.
  • --threshold NUMBER: Festlegen des Schwellenwerts für stabile Teilergebnisse. Standardwert: 3. Weitere Informationen finden Sie unter Konzepte zum Abrufen von Teilergebnissen.

Bereinigen von Ressourcen

Sie können das Azure-Portal oder die Azure-Befehlszeilenschnittstelle (CLI) verwenden, um die erstellte Speech-Ressource zu entfernen.

Referenzdokumentation | Paket (Download) | Zusätzliche Beispiele auf GitHub

Das Speech SDK für Objective-C unterstützt das Abrufen von Spracherkennungsergebnissen für Untertitel, aber wir haben hier noch keine Anleitung dazu veröffentlicht. Wählen Sie eine andere Programmiersprache aus, um loszulegen und sich über die Konzepte zu informieren, oder verwenden Sie die Objective-C-Referenz und -Beispiele unter dem entsprechenden Link am Anfang dieses Artikels.

Referenzdokumentation | Paket (Download) | Zusätzliche Beispiele auf GitHub

Das Speech SDK für Swift unterstützt das Abrufen von Spracherkennungsergebnissen für Untertitel, aber wir haben hier noch keine Anleitung dazu veröffentlicht. Wählen Sie eine andere Programmiersprache aus, um loszulegen und sich über die Konzepte zu informieren, oder verwenden Sie die Swift-Referenz und -Beispiele unter dem entsprechenden Link am Anfang dieses Artikels.

Referenzdokumentation | Paket (PyPi) | Zusätzliche Beispiele auf GitHub

In diesem Schnellstart führen Sie eine Konsolen-App aus, um mit Sprache-in-Text Untertitel zu erstellen.

Tipp

Probieren Sie Speech Studio aus, und wählen Sie einen Beispielvideoclip aus, um das in Echtzeit oder offline verarbeitete Untertitelergebnis zu sehen.

Voraussetzungen

Einrichten der Umgebung

Das Speech SDK für Python ist als PyPI-Modul (Python Package Index) verfügbar. Das Speech SDK für Python ist mit Windows, Linux und macOS kompatibel.

  1. Installieren Sie eine Python-Version ab 3.10. Prüfen Sie zunächst im SDK-Installationsleitfaden, ob weitere Anforderungen gelten.
  2. Sie müssen auch GStreamer für komprimierte Eingabeaudios installieren.

Festlegen von Umgebungsvariablen

Ihre Anwendung muss authentifiziert werden, um auf die Azure KI Services-Ressourcen zugreifen zu können. In der Produktionsumgebung sollten Sie eine sichere Methode zum Speichern Ihrer Anmeldeinformationen sowie zum Zugriff darauf verwenden. Schreiben Sie beispielsweise nach dem Abrufen eines Schlüssels für Ihre Speech-Ressource diesen Schlüssel in eine neue Umgebungsvariable auf dem lokalen Computer, auf dem die Anwendung ausgeführt wird.

Tipp

Fügen Sie den Schlüssel nicht direkt in Ihren Code ein, und machen Sie ihn nicht öffentlich. Weitere Authentifizierungsoptionen wie z. B. Azure Key Vault finden Sie unter Sicherheit in Azure KI Services.

Um die Umgebungsvariable für Ihren Speech-Ressourcenschlüssel festzulegen, öffnen Sie ein Konsolenfenster und befolgen die Anweisungen für Ihr Betriebssystem und Ihre Entwicklungsumgebung.

  • Zum Festlegen der Umgebungsvariablen SPEECH_KEY ersetzen Sie your-key durch einen der Schlüssel für Ihre Ressource.
  • Zum Festlegen der Umgebungsvariablen SPEECH_REGION ersetzen Sie your-region durch eine der Regionen für Ihre Ressource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Hinweis

Wenn Sie nur in der aktuellen Konsole auf die Umgebungsvariable zugreifen müssen, können Sie die Variable mit set anstatt setx festlegen.

Nachdem Sie die Umgebungsvariablen hinzugefügt haben, müssen Sie möglicherweise alle Programme neu starten, die die Umgebungsvariablen lesen müssen, einschließlich des Konsolenfensters. Wenn Sie beispielsweise Visual Studio als Editor verwenden, starten Sie Visual Studio neu, bevor Sie das Beispiel ausführen.

Erstellen von Untertiteln aus Sprache

Führen Sie diese Schritte aus, um das Schnellstartbeispiel für Untertitel zu erstellen und auszuführen.

  1. scenarios/python/console/captioning/ von GitHub in ein lokales Verzeichnis oder laden Sie sie herunter.
  2. Öffnen Sie im gleichen Verzeichnis wie captioning.py eine Eingabeaufforderung.
  3. Führen Sie diesen Befehl aus, um das Speech SDK zu installieren:
    pip install azure-cognitiveservices-speech
    
  4. Führen Sie die Anwendung mit Ihren bevorzugten Befehlszeilenargumenten aus. Weitere Informationen zu den verfügbaren Optionen finden Sie unter Verwendung und Argumente. Dies ist ein Beispiel hierfür:
    python captioning.py --input caption.this.mp4 --format any --output caption.output.txt --srt --realTime --threshold 5 --delay 0 --profanity mask --phrases "Contoso;Jessie;Rehaan"
    

    Wichtig

    Stellen Sie sicher, dass die durch --input und --output angegebenen Pfade gültig sind. Andernfalls müssen Sie die Pfade ändern.

    Stellen Sie sicher, dass Sie die Umgebungsvariablen SPEECH_KEY und SPEECH_REGION wie oben beschrieben festlegen. Andernfalls verwenden Sie die Argumente --key und --region.

Überprüfen der Ergebnisse

Wenn Sie im obigen Beispiel die Option realTime verwenden, werden die Teilergebnisse von Recognizing-Ereignissen in die Ausgabe einbezogen. In diesem Beispiel enthält nur das letzte Ereignis Recognized die Kommas. Kommas stellen nicht den einzigen Unterschied zwischen Recognizing- und Recognized-Ereignissen dar. Weitere Informationen finden Sie unter Abrufen von Teilergebnissen.

1
00:00:00,170 --> 00:00:00,380
The

2
00:00:00,380 --> 00:00:01,770
The rainbow

3
00:00:01,770 --> 00:00:02,560
The rainbow has seven

4
00:00:02,560 --> 00:00:03,820
The rainbow has seven colors

5
00:00:03,820 --> 00:00:05,050
The rainbow has seven colors red

6
00:00:05,050 --> 00:00:05,850
The rainbow has seven colors red
orange

7
00:00:05,850 --> 00:00:06,440
The rainbow has seven colors red
orange yellow

8
00:00:06,440 --> 00:00:06,730
The rainbow has seven colors red
orange yellow green

9
00:00:06,730 --> 00:00:07,160
orange, yellow, green, blue,
indigo and Violet.

Wenn Sie die Option --offline verwenden, sind die Ergebnisse ab dem letzten Recognized-Ereignis stabil. Teilergebnisse sind nicht in der Ausgabe enthalten:

1
00:00:00,170 --> 00:00:05,540
The rainbow has seven colors, red,
orange, yellow, green, blue,

2
00:00:05,540 --> 00:00:07,160
indigo and Violet.

Das Ausgabeformat für Zeitintervalle von SRT (SubRip Text) ist hh:mm:ss,fff. Weitere Informationen finden Sie unter Untertitelausgabeformat.

Verwendung und Argumente

Syntax: python captioning.py --input <input file>

Beispiele für Verbindungsoptionen:

  • --key: Der Schlüssel Ihrer Speech-Ressource. Überschreibt die SPEECH_KEY-Umgebungsvariable. Sie müssen die Umgebungsvariable festlegen (empfohlen) oder die Option --key verwenden.
  • --region REGION: Die Region Ihrer Speech-Ressource. Überschreibt die SPEECH_REGION-Umgebungsvariable. Sie müssen die Umgebungsvariable festlegen (empfohlen) oder die Option --region verwenden. Beispiele: westus, northeurope

Beispiele für Eingabeoptionen:

  • --input FILE: Eingabe von Audio aus einer Datei. Die Standardeingabe ist das Mikrofon.
  • --format FORMAT: Verwenden des komprimierten Audioformats. Nur mit --file gültig. Gültige Werte sind alaw, any, flac, mp3, mulaw und ogg_opus. Standardwert: any. Um eine wav-Datei zu verwenden, geben Sie das Format nicht an. Diese Option ist nicht mit dem JavaScript-Untertitelbeispiel verfügbar. Für komprimierte Audiodateien, wie z. B. MP4, installieren Sie GStreamer und lesen Sie den Abschnitt Verwenden komprimierter Eingabe-Audiodaten.

Beispiele für Sprachoptionen:

  • --language LANG: Geben Sie eine Sprache an, indem Sie eines der zugehörigen unterstützten Gebietsschemata verwenden. Hiermit können Sie Untertitel in Zeilen unterteilen. Der Standardwert ist en-US.

Beispiele für Erkennungsoptionen:

  • --offline: Ausgabe von Offlineergebnissen. Überschreibt --realTime. Der Standardmodus für die Ausgabe lautet „Offline“.
  • --realTime: Ausgabe von Echtzeitergebnissen.

Die Echtzeitausgabe enthält Ergebnisse von Recognizing-Ereignissen. Die standardmäßige Offlineausgabe umfasst nur Ergebnisse von Recognized-Ereignissen. Diese werden immer in die Konsole geschrieben, nie in eine Ausgabedatei. Die Option --quiet überschreibt dies. Weitere Informationen finden Sie unter Abrufen von Spracherkennungsergebnissen.

Beispiele für Genauigkeitsoptionen:

Beispiele für Ausgabeoptionen:

  • --help: Diese Hilfe anzeigen und beenden.
  • --output FILE: Untertitel in die angegebene file ausgeben. Dieses Flag ist erforderlich.
  • --srt: Untertitel im SRT-Format (SubRip-Text) ausgeben. Das Standardformat ist WebVTT (Web VideoText Tracks). Weitere Informationen zu SRT- und WebVTT-Untertiteldateiformaten finden Sie unter Untertitelausgabeformat.
  • --maxLineLength LENGTH: Legt die maximale Anzahl von Zeichen pro Zeile für einen Untertitel auf LENGTH fest. Der Mindestwert lautet 20. Der Standardwert beträgt 37 (30 für Chinesisch).
  • --lines LINES: Legt Sie die Anzahl von Zeilen für einen Untertitel auf LINES fest. Der Mindestwert lautet 1. Standard ist 2.
  • --delay MILLISECONDS: Gibt an, um wie viele Millisekunden die Anzeige jedes Untertitels verzögert werden soll, um ein Echtzeiterlebnis zu simulieren. Diese Option ist nur anwendbar, wenn Sie das Flag realTime verwenden. Der Mindestwert lautet 0.0. Der Standard ist 1000.
  • --remainTime MILLISECONDS: Gibt an, wie viele Millisekunden ein Untertitel auf dem Bildschirm angezeigt werden soll, wenn er nicht durch einen anderen ersetzt wird. Der Mindestwert lautet 0.0. Der Standard ist 1000.
  • --quiet: Unterdrücken der Konsolenausgabe, außer bei Fehlern.
  • --profanity OPTION: Gültige Werte: roh, entfernen, Maske. Weitere Informationen finden Sie unter Obszönitätsfilter-Konzepte.
  • --threshold NUMBER: Festlegen des Schwellenwerts für stabile Teilergebnisse. Standardwert: 3. Diese Option ist nur anwendbar, wenn Sie das Flag realTime verwenden. Weitere Informationen finden Sie unter Konzepte zum Abrufen von Teilergebnissen.

Bereinigen von Ressourcen

Sie können das Azure-Portal oder die Azure-Befehlszeilenschnittstelle (CLI) verwenden, um die erstellte Speech-Ressource zu entfernen.

In diesem Schnellstart führen Sie eine Konsolen-App aus, um mit Sprache-in-Text Untertitel zu erstellen.

Tipp

Probieren Sie Speech Studio aus, und wählen Sie einen Beispielvideoclip aus, um das in Echtzeit oder offline verarbeitete Untertitelergebnis zu sehen.

Voraussetzungen

Einrichten der Umgebung

Befolgen Sie diese Schritte und lesen Sie die Schnellstartanleitung für Speech CLI, um weitere Anforderungen für Ihre Plattform zu erfahren.

  1. Führen Sie den folgenden .NET CLI-Befehl aus, um die Speech CLI zu installieren:

    dotnet tool install --global Microsoft.CognitiveServices.Speech.CLI
    
  2. Führen Sie die folgenden Befehle aus, um Ihren Speech-Ressourcenschlüssel und Ihre Region zu konfigurieren. Ersetzen Sie SUBSCRIPTION-KEY durch den Schlüssel Ihrer Speech-Ressource und REGION durch die Region Ihrer Speech-Ressource.

    spx config @key --set SUBSCRIPTION-KEY
    spx config @region --set REGION
    

Sie müssen auch GStreamer für komprimierte Eingabeaudios installieren.

Erstellen von Untertiteln aus Sprache

Mit der Speech-CLI können Sie sowohl SRT (SubRip-Text)- als auch WebVTT (Web Video Text Tracks)-Untertitel aus jedem beliebigen Medientyp ausgeben, der Audio enthält.

Führen Sie die folgenden Schritte aus, um Audio von einer Datei zu erkennen und sowohl WebVtt (vtt)- als auch SRT (srt)-Untertitel auszugeben.

  1. Vergewissern Sie sich, dass Sie eine Eingabedatei namens caption.this.mp4 im Pfad haben.

  2. Führen Sie den folgenden Befehl aus, um Untertitel aus der Videodatei auszugeben:

    spx recognize --file caption.this.mp4 --format any --output vtt file - --output srt file - --output each file - @output.each.detailed --property SpeechServiceResponse_StablePartialResultThreshold=5 --profanity masked --phrases "Constoso;Jessie;Rehaan"
    

    Die SRT- und WebVTT-Untertitel werden wie hier gezeigt in die Konsole ausgegeben:

    1
    00:00:00,180 --> 00:00:03,230
    Welcome to applied Mathematics course 201.
    WEBVTT
    
    00:00:00.180 --> 00:00:03.230
    Welcome to applied Mathematics course 201.
    {
      "ResultId": "561a0ea00cc14bb09bd294357df3270f",
      "Duration": "00:00:03.0500000"
    }
    

Verwendung und Argumente

Hier sind Details zu den optionalen Argumenten aus dem vorherigen Befehl:

  • --file caption.this.mp4 --format any: Eingabe von Audio aus einer Datei. Die Standardeingabe ist das Mikrofon. Für komprimierte Audiodateien, wie z. B. MP4, installieren Sie GStreamer und lesen Sie den Abschnitt Verwenden komprimierter Eingabe-Audiodaten.
  • --output vtt file - und --output srt file -: Gibt WebVTT- und SRT-Untertitel auf der Standardausgabe aus. Weitere Informationen zu SRT- und WebVTT-Untertiteldateiformaten finden Sie unter Untertitelausgabeformat. Weitere Informationen zum Argument --output finden Sie unter Ausgabeoptionen der Speech-CLI.
  • @output.each.detailed: Gibt Ergebnisse von Ereignissen mit Text, Versatz und Dauer aus. Weitere Informationen finden Sie unter Abrufen von Spracherkennungsergebnissen.
  • --property SpeechServiceResponse_StablePartialResultThreshold=5: Sie können anfordern, dass der Sprachdienst weniger Recognizing-Ereignisse zurückgibt, die genauer sind. In diesem Beispiel muss der Sprachdienst die Erkennung eines Worts mindestens fünf Mal bestätigen, bevor er die Teilergebnisse an Sie zurückgibt. Weitere Informationen finden Sie unter Konzepte zum Abrufen von Teilergebnissen.
  • --profanity masked: Sie können angeben, ob Obszönität in Erkennungsergebnissen maskiert, entfernt oder angezeigt werden soll. Weitere Informationen finden Sie unter Obszönitätsfilter-Konzepte.
  • --phrases "Constoso;Jessie;Rehaan": Sie können eine Liste der zu erkennenden Ausdrücke angeben, z. B. Contoso, Jessie und Rehaan. Weitere Informationen finden Sie unter Verbessern der Erkennung mit der Ausdrucksliste.

Bereinigen von Ressourcen

Sie können das Azure-Portal oder die Azure-Befehlszeilenschnittstelle (CLI) verwenden, um die erstellte Speech-Ressource zu entfernen.

Nächste Schritte