Schnellstart: Erkennen von Sprache und Konvertieren von Sprache in Text

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

In dieser Schnellstartanleitung erstellen und führen Sie eine Anwendung zum Erkennen und Transkribieren von Sprache in Text in Echtzeit aus.

Tipp

Sie können Spracherkennung in Echtzeit in Speech Studio ausprobieren, ohne sich zu registrieren oder Code zu schreiben.

Weitere Informationen zum asynchronen Transkribieren von Audiodateien finden Sie unter Was ist die Batch-Transkription?. Wenn Sie nicht sicher sind, welche Spracherkennungslösung für Sie geeignet ist, finden Sie unter Was ist Spracherkennung? weitere Informationen.

Voraussetzungen

Einrichten der Umgebung

Das Speech SDK ist als NuGet-Paket verfügbar und implementiert .NET Standard 2.0. Sie installieren das Speech SDK weiter unten in diesem Leitfaden. Alle weiteren Anforderungen finden Sie unter Installieren des Speech SDK.

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.

Erkennen von Spracheingaben per Mikrofon

Führen Sie die folgenden Schritte aus, um eine Konsolenanwendung zu erstellen und das Speech SDK zu installieren.

  1. Öffnen Sie ein Eingabeaufforderungsfenster in dem Ordner, in dem das neue Projekt angezeigt werden soll. Führen Sie diesen Befehl aus, um eine Konsolenanwendung mit der .NET CLI zu erstellen.

    dotnet new console
    

    Mit diesem Befehl wird die Program.cs-Datei im Projektverzeichnis erstellt.

  2. Installieren Sie das Speech SDK mit der .NET-CLI in Ihrem neuen Projekt.

    dotnet add package Microsoft.CognitiveServices.Speech
    
  3. Ersetzen Sie den Inhalt von Program.cs durch den folgenden Code:

    using System;
    using System.IO;
    using System.Threading.Tasks;
    using Microsoft.CognitiveServices.Speech;
    using Microsoft.CognitiveServices.Speech.Audio;
    
    class Program 
    {
        // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION"
        static string speechKey = Environment.GetEnvironmentVariable("SPEECH_KEY");
        static string speechRegion = Environment.GetEnvironmentVariable("SPEECH_REGION");
    
        static void OutputSpeechRecognitionResult(SpeechRecognitionResult speechRecognitionResult)
        {
            switch (speechRecognitionResult.Reason)
            {
                case ResultReason.RecognizedSpeech:
                    Console.WriteLine($"RECOGNIZED: Text={speechRecognitionResult.Text}");
                    break;
                case ResultReason.NoMatch:
                    Console.WriteLine($"NOMATCH: Speech could not be recognized.");
                    break;
                case ResultReason.Canceled:
                    var cancellation = CancellationDetails.FromResult(speechRecognitionResult);
                    Console.WriteLine($"CANCELED: Reason={cancellation.Reason}");
    
                    if (cancellation.Reason == CancellationReason.Error)
                    {
                        Console.WriteLine($"CANCELED: ErrorCode={cancellation.ErrorCode}");
                        Console.WriteLine($"CANCELED: ErrorDetails={cancellation.ErrorDetails}");
                        Console.WriteLine($"CANCELED: Did you set the speech resource key and region values?");
                    }
                    break;
            }
        }
    
        async static Task Main(string[] args)
        {
            var speechConfig = SpeechConfig.FromSubscription(speechKey, speechRegion);        
            speechConfig.SpeechRecognitionLanguage = "en-US";
    
            using var audioConfig = AudioConfig.FromDefaultMicrophoneInput();
            using var speechRecognizer = new SpeechRecognizer(speechConfig, audioConfig);
    
            Console.WriteLine("Speak into your microphone.");
            var speechRecognitionResult = await speechRecognizer.RecognizeOnceAsync();
            OutputSpeechRecognitionResult(speechRecognitionResult);
        }
    }
    
  4. Um die Sprache für die Spracherkennung zu ändern, ersetzen Sie en-US durch eine andere en-US. Verwenden Sie für Spanisch (Spanien) z. B. es-ES. Wenn Sie keine Sprache angeben, lautet der Standardwert en-US. Ausführliche Informationen zum Identifizieren einer von mehreren Sprachen, die gesprochen werden können, finden Sie unter Sprachenerkennung.

  5. Führen Sie die neue Konsolenanwendung aus, um die Spracherkennung über ein Mikrofon zu starten:

    dotnet run
    

    Wichtig

    Stellen Sie sicher, dass Sie die SPEECH_KEY- und SPEECH_REGION-Umgebungsvariablen festlegen. Wenn Sie diese Variablen nicht festlegen, wird für das Beispiel eine Fehlermeldung ausgegeben.

  6. Sprechen Sie in Ihr Mikrofon, wenn Sie dazu aufgefordert werden. Die Wörter, die Sie sprechen, sollten als Text angezeigt werden:

    Speak into your microphone.
    RECOGNIZED: Text=I'm excited to try speech to text.
    

Hinweise

Im Folgenden finden Sie einige weitere Überlegungen dazu:

  • In diesem Beispiel wird der Vorgang RecognizeOnceAsync verwendet, um Äußerungen von bis zu 30 Sekunden oder bis zur Erkennung von Stille zu transkribieren. Informationen zur kontinuierlichen Erkennung längerer Audiodaten, einschließlich mehrsprachiger Konversationen, finden Sie unter Erkennen von Sprache.

  • Verwenden Sie FromWavFileInput anstelle von FromDefaultMicrophoneInput, um Sprache aus einer Audiodatei zu erkennen:

    using var audioConfig = AudioConfig.FromWavFileInput("YourAudioFile.wav");
    
  • Wenn Sie komprimierte Audiodateien wie beispielsweise MP4 verwenden, installieren Sie GStreamer, und verwenden Sie PullAudioInputStream oder PushAudioInputStream. Weitere Informationen finden Sie unter Verwenden von komprimierten Eingabeaudiodaten.

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 dieser Schnellstartanleitung erstellen und führen Sie eine Anwendung zum Erkennen und Transkribieren von Sprache in Text in Echtzeit aus.

Tipp

Sie können Spracherkennung in Echtzeit in Speech Studio ausprobieren, ohne sich zu registrieren oder Code zu schreiben.

Weitere Informationen zum asynchronen Transkribieren von Audiodateien finden Sie unter Was ist die Batch-Transkription?. Wenn Sie nicht sicher sind, welche Spracherkennungslösung für Sie geeignet ist, finden Sie unter Was ist Spracherkennung? weitere Informationen.

Voraussetzungen

Einrichten der Umgebung

Das Speech SDK ist als NuGet-Paket verfügbar und implementiert .NET Standard 2.0. Sie installieren das Speech SDK weiter unten in diesem Leitfaden. Weitere Anforderungen finden Sie unter Installieren des Speech SDK.

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.

Erkennen von Spracheingaben per Mikrofon

Führen Sie die folgenden Schritte aus, um eine Konsolenanwendung zu erstellen und das Speech SDK zu installieren.

  1. Erstellen Sie in Visual Studio Community in neues C++-Konsolenprojekt mit dem Namen SpeechRecognition.

  2. Klicken Sie auf Tools>NuGet-Paket-Manager>Paket-Manager-Konsole. Führen Sie diesen Befehl in der Paket-Manager-Konsole aus:

    Install-Package Microsoft.CognitiveServices.Speech
    
  3. Ersetzen Sie den Inhalt von SpeechRecognition.cpp durch den folgenden Code.

    #include <iostream> 
    #include <stdlib.h>
    #include <speechapi_cxx.h>
    
    using namespace Microsoft::CognitiveServices::Speech;
    using namespace Microsoft::CognitiveServices::Speech::Audio;
    
    std::string GetEnvironmentVariable(const char* name);
    
    int main()
    {
        // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION"
        auto speechKey = GetEnvironmentVariable("SPEECH_KEY");
        auto speechRegion = GetEnvironmentVariable("SPEECH_REGION");
    
        if ((size(speechKey) == 0) || (size(speechRegion) == 0)) {
            std::cout << "Please set both SPEECH_KEY and SPEECH_REGION environment variables." << std::endl;
            return -1;
        }
    
        auto speechConfig = SpeechConfig::FromSubscription(speechKey, speechRegion);
    
        speechConfig->SetSpeechRecognitionLanguage("en-US");
    
        auto audioConfig = AudioConfig::FromDefaultMicrophoneInput();
        auto speechRecognizer = SpeechRecognizer::FromConfig(speechConfig, audioConfig);
    
        std::cout << "Speak into your microphone.\n";
        auto result = speechRecognizer->RecognizeOnceAsync().get();
    
        if (result->Reason == ResultReason::RecognizedSpeech)
        {
            std::cout << "RECOGNIZED: Text=" << result->Text << std::endl;
        }
        else if (result->Reason == ResultReason::NoMatch)
        {
            std::cout << "NOMATCH: Speech could not be recognized." << std::endl;
        }
        else if (result->Reason == ResultReason::Canceled)
        {
            auto cancellation = CancellationDetails::FromResult(result);
            std::cout << "CANCELED: Reason=" << (int)cancellation->Reason << std::endl;
    
            if (cancellation->Reason == CancellationReason::Error)
            {
                std::cout << "CANCELED: ErrorCode=" << (int)cancellation->ErrorCode << std::endl;
                std::cout << "CANCELED: ErrorDetails=" << cancellation->ErrorDetails << std::endl;
                std::cout << "CANCELED: Did you set the speech resource key and region values?" << std::endl;
            }
        }
    }
    
    std::string GetEnvironmentVariable(const char* name)
    {
    #if defined(_MSC_VER)
        size_t requiredSize = 0;
        (void)getenv_s(&requiredSize, nullptr, 0, name);
        if (requiredSize == 0)
        {
            return "";
        }
        auto buffer = std::make_unique<char[]>(requiredSize);
        (void)getenv_s(&requiredSize, buffer.get(), requiredSize, name);
        return buffer.get();
    #else
        auto value = getenv(name);
        return value ? value : "";
    #endif
    }
    
  4. Um die Sprache für die Spracherkennung zu ändern, ersetzen Sie en-US durch eine andere en-US. Verwenden Sie für Spanisch (Spanien) z. B. es-ES. Wenn Sie keine Sprache angeben, lautet der Standardwert en-US. Ausführliche Informationen zum Identifizieren einer von mehreren Sprachen, die gesprochen werden können, finden Sie unter Sprachenerkennung.

  5. Erstellen Sie die neue Konsolenanwendung, und führen Sie sie aus, um die Spracherkennung über ein Mikrofon zu starten.

    Wichtig

    Stellen Sie sicher, dass Sie die SPEECH_KEY- und SPEECH_REGION-Umgebungsvariablen festlegen. Wenn Sie diese Variablen nicht festlegen, wird für das Beispiel eine Fehlermeldung ausgegeben.

  6. Sprechen Sie in Ihr Mikrofon, wenn Sie dazu aufgefordert werden. Die Wörter, die Sie sprechen, sollten als Text angezeigt werden:

    Speak into your microphone.
    RECOGNIZED: Text=I'm excited to try speech to text.
    

Hinweise

Im Folgenden finden Sie einige weitere Überlegungen dazu:

  • In diesem Beispiel wird der Vorgang RecognizeOnceAsync verwendet, um Äußerungen von bis zu 30 Sekunden oder bis zur Erkennung von Stille zu transkribieren. Informationen zur kontinuierlichen Erkennung längerer Audiodaten, einschließlich mehrsprachiger Konversationen, finden Sie unter Erkennen von Sprache.

  • Verwenden Sie FromWavFileInput anstelle von FromDefaultMicrophoneInput, um Sprache aus einer Audiodatei zu erkennen:

    auto audioConfig = AudioConfig::FromWavFileInput("YourAudioFile.wav");
    
  • Wenn Sie komprimierte Audiodateien wie beispielsweise MP4 verwenden, installieren Sie GStreamer, und verwenden Sie PullAudioInputStream oder PushAudioInputStream. Weitere Informationen finden Sie unter Verwenden von komprimierten Eingabeaudiodaten.

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 dieser Schnellstartanleitung erstellen und führen Sie eine Anwendung zum Erkennen und Transkribieren von Sprache in Text in Echtzeit aus.

Tipp

Sie können Spracherkennung in Echtzeit in Speech Studio ausprobieren, ohne sich zu registrieren oder Code zu schreiben.

Weitere Informationen zum asynchronen Transkribieren von Audiodateien finden Sie unter Was ist die Batch-Transkription?. Wenn Sie nicht sicher sind, welche Spracherkennungslösung für Sie geeignet ist, finden Sie unter Was ist Spracherkennung? weitere Informationen.

Voraussetzungen

Einrichten der Umgebung

Installieren Sie das Speech SDK für Go. Weitere Informationen zu Anforderungen und Anweisungen finden Sie unter Installieren des Speech SDK.

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.

Erkennen von Spracheingaben per Mikrofon

Führen Sie die folgenden Schritte aus, um ein GO-Modul zu erstellen.

  1. Öffnen Sie ein Eingabeaufforderungsfenster in dem Ordner, in dem das neue Projekt angezeigt werden soll. Erstellen Sie eine neue Datei namens speech-recognition.go.

  2. Kopieren Sie den folgenden Code in die Datei speech-recognition.go:

    package main
    
    import (
        "bufio"
        "fmt"
        "os"
    
        "github.com/Microsoft/cognitive-services-speech-sdk-go/audio"
        "github.com/Microsoft/cognitive-services-speech-sdk-go/speech"
    )
    
    func sessionStartedHandler(event speech.SessionEventArgs) {
        defer event.Close()
        fmt.Println("Session Started (ID=", event.SessionID, ")")
    }
    
    func sessionStoppedHandler(event speech.SessionEventArgs) {
        defer event.Close()
        fmt.Println("Session Stopped (ID=", event.SessionID, ")")
    }
    
    func recognizingHandler(event speech.SpeechRecognitionEventArgs) {
        defer event.Close()
        fmt.Println("Recognizing:", event.Result.Text)
    }
    
    func recognizedHandler(event speech.SpeechRecognitionEventArgs) {
        defer event.Close()
        fmt.Println("Recognized:", event.Result.Text)
    }
    
    func cancelledHandler(event speech.SpeechRecognitionCanceledEventArgs) {
        defer event.Close()
        fmt.Println("Received a cancellation: ", event.ErrorDetails)
        fmt.Println("Did you set the speech resource key and region values?")
    }
    
    func main() {
        // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION"
        speechKey :=  os.Getenv("SPEECH_KEY")
        speechRegion := os.Getenv("SPEECH_REGION")
    
        audioConfig, err := audio.NewAudioConfigFromDefaultMicrophoneInput()
        if err != nil {
            fmt.Println("Got an error: ", err)
            return
        }
        defer audioConfig.Close()
        speechConfig, err := speech.NewSpeechConfigFromSubscription(speechKey, speechRegion)
        if err != nil {
            fmt.Println("Got an error: ", err)
            return
        }
        defer speechConfig.Close()
        speechRecognizer, err := speech.NewSpeechRecognizerFromConfig(speechConfig, audioConfig)
        if err != nil {
            fmt.Println("Got an error: ", err)
            return
        }
        defer speechRecognizer.Close()
        speechRecognizer.SessionStarted(sessionStartedHandler)
        speechRecognizer.SessionStopped(sessionStoppedHandler)
        speechRecognizer.Recognizing(recognizingHandler)
        speechRecognizer.Recognized(recognizedHandler)
        speechRecognizer.Canceled(cancelledHandler)
        speechRecognizer.StartContinuousRecognitionAsync()
        defer speechRecognizer.StopContinuousRecognitionAsync()
        bufio.NewReader(os.Stdin).ReadBytes('\n')
    }
    
  3. Führen Sie die folgenden Befehle aus, um eine Datei namens go.mod zu erstellen, die mit auf GitHub gehosteten Komponenten verknüpft ist:

    go mod init speech-recognition
    go get github.com/Microsoft/cognitive-services-speech-sdk-go
    

    Wichtig

    Stellen Sie sicher, dass Sie die SPEECH_KEY- und SPEECH_REGION-Umgebungsvariablen festlegen. Wenn Sie diese Variablen nicht festlegen, wird für das Beispiel eine Fehlermeldung ausgegeben.

  4. Erstellen Sie den Code, und führen Sie ihn aus:

    go build
    go run speech-recognition
    

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 dieser Schnellstartanleitung erstellen und führen Sie eine Anwendung zum Erkennen und Transkribieren von Sprache in Text in Echtzeit aus.

Tipp

Sie können Spracherkennung in Echtzeit in Speech Studio ausprobieren, ohne sich zu registrieren oder Code zu schreiben.

Weitere Informationen zum asynchronen Transkribieren von Audiodateien finden Sie unter Was ist die Batch-Transkription?. Wenn Sie nicht sicher sind, welche Spracherkennungslösung für Sie geeignet ist, finden Sie unter Was ist Spracherkennung? weitere Informationen.

Voraussetzungen

Einrichten der Umgebung

Um Ihre Umgebung einzurichten, installieren Sie das Speech SDK. Das Beispiel in diesem Schnellstart funktioniert mit der Java-Runtime.

  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 folgende Code in diese Datei:

    <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
    

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.

Erkennen von Spracheingaben per Mikrofon

Führen Sie die folgenden Schritte aus, um eine Konsolenanwendung für die Spracherkennung zu erstellen.

  1. Erstellen Sie im gleichen Projektstammverzeichnis eine Datei namens SpeechRecognition.java.

  2. Kopieren Sie den folgenden Code in die Datei SpeechRecognition.java:

    import com.microsoft.cognitiveservices.speech.*;
    import com.microsoft.cognitiveservices.speech.audio.AudioConfig;
    
    import java.util.concurrent.ExecutionException;
    import java.util.concurrent.Future;
    
    public class SpeechRecognition {
        // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION"
        private static String speechKey = System.getenv("SPEECH_KEY");
        private static String speechRegion = System.getenv("SPEECH_REGION");
    
        public static void main(String[] args) throws InterruptedException, ExecutionException {
            SpeechConfig speechConfig = SpeechConfig.fromSubscription(speechKey, speechRegion);
            speechConfig.setSpeechRecognitionLanguage("en-US");
            recognizeFromMicrophone(speechConfig);
        }
    
        public static void recognizeFromMicrophone(SpeechConfig speechConfig) throws InterruptedException, ExecutionException {
            AudioConfig audioConfig = AudioConfig.fromDefaultMicrophoneInput();
            SpeechRecognizer speechRecognizer = new SpeechRecognizer(speechConfig, audioConfig);
    
            System.out.println("Speak into your microphone.");
            Future<SpeechRecognitionResult> task = speechRecognizer.recognizeOnceAsync();
            SpeechRecognitionResult speechRecognitionResult = task.get();
    
            if (speechRecognitionResult.getReason() == ResultReason.RecognizedSpeech) {
                System.out.println("RECOGNIZED: Text=" + speechRecognitionResult.getText());
            }
            else if (speechRecognitionResult.getReason() == ResultReason.NoMatch) {
                System.out.println("NOMATCH: Speech could not be recognized.");
            }
            else if (speechRecognitionResult.getReason() == ResultReason.Canceled) {
                CancellationDetails cancellation = CancellationDetails.fromResult(speechRecognitionResult);
                System.out.println("CANCELED: Reason=" + cancellation.getReason());
    
                if (cancellation.getReason() == CancellationReason.Error) {
                    System.out.println("CANCELED: ErrorCode=" + cancellation.getErrorCode());
                    System.out.println("CANCELED: ErrorDetails=" + cancellation.getErrorDetails());
                    System.out.println("CANCELED: Did you set the speech resource key and region values?");
                }
            }
    
            System.exit(0);
        }
    }
    
  3. Um die Sprache für die Spracherkennung zu ändern, ersetzen Sie en-US durch eine andere en-US. Verwenden Sie für Spanisch (Spanien) z. B. es-ES. Wenn Sie keine Sprache angeben, lautet der Standardwert en-US. Ausführliche Informationen zum Identifizieren einer von mehreren Sprachen, die gesprochen werden können, finden Sie unter Sprachenerkennung.

  4. Führen Sie die neue Konsolenanwendung aus, um die Spracherkennung über ein Mikrofon zu starten:

    javac SpeechRecognition.java -cp ".;target\dependency\*"
    java -cp ".;target\dependency\*" SpeechRecognition
    

    Wichtig

    Stellen Sie sicher, dass Sie die SPEECH_KEY- und SPEECH_REGION-Umgebungsvariablen festlegen. Wenn Sie diese Variablen nicht festlegen, wird für das Beispiel eine Fehlermeldung ausgegeben.

  5. Sprechen Sie in Ihr Mikrofon, wenn Sie dazu aufgefordert werden. Die Wörter, die Sie sprechen, sollten als Text angezeigt werden:

    Speak into your microphone.
    RECOGNIZED: Text=I'm excited to try speech to text.
    

Hinweise

Im Folgenden finden Sie einige weitere Überlegungen dazu:

  • In diesem Beispiel wird der Vorgang RecognizeOnceAsync verwendet, um Äußerungen von bis zu 30 Sekunden oder bis zur Erkennung von Stille zu transkribieren. Informationen zur kontinuierlichen Erkennung längerer Audiodaten, einschließlich mehrsprachiger Konversationen, finden Sie unter Erkennen von Sprache.

  • Verwenden Sie fromWavFileInput anstelle von fromDefaultMicrophoneInput, um Sprache aus einer Audiodatei zu erkennen:

    AudioConfig audioConfig = AudioConfig.fromWavFileInput("YourAudioFile.wav");
    
  • Wenn Sie komprimierte Audiodateien wie beispielsweise MP4 verwenden, installieren Sie GStreamer, und verwenden Sie PullAudioInputStream oder PushAudioInputStream. Weitere Informationen finden Sie unter Verwenden von komprimierten Eingabeaudiodaten.

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 dieser Schnellstartanleitung erstellen und führen Sie eine Anwendung zum Erkennen und Transkribieren von Sprache in Text in Echtzeit aus.

Tipp

Sie können Spracherkennung in Echtzeit in Speech Studio ausprobieren, ohne sich zu registrieren oder Code zu schreiben.

Weitere Informationen zum asynchronen Transkribieren von Audiodateien finden Sie unter Was ist die Batch-Transkription?. Wenn Sie nicht sicher sind, welche Spracherkennungslösung für Sie geeignet ist, finden Sie unter Was ist Spracherkennung? weitere Informationen.

Voraussetzungen

Sie benötigen auch eine WAV-Audiodatei auf Ihrem lokalen Computer. Sie können Ihre eigene WAV-Datei (bis zu 30 Sekunden) verwenden oder die Beispieldatei https://crbn.us/whatstheweatherlike.wav herunterladen.

Einrichten der Umgebung

Um Ihre Umgebung einzurichten, installieren Sie das Speech SDK für JavaScript. Führen Sie den folgenden Befehl aus: npm install microsoft-cognitiveservices-speech-sdk. Anweisungen zu einer geführten Installation finden Sie unter Installieren des Speech SDK.

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.

Erkennen von Sprache aus einer Datei

Führen Sie die folgenden Schritte aus, um eine Node.js-Konsolenanwendung für die Spracherkennung zu erstellen.

  1. Öffnen Sie ein Eingabeaufforderungsfenster, in dem Sie das neue Projekt anlegen möchten und erstellen Sie eine neue Datei namens SpeechRecognition.js.

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

    npm install microsoft-cognitiveservices-speech-sdk
    
  3. Kopieren Sie den folgenden Code in die Datei SpeechRecognition.js:

    const fs = require("fs");
    const sdk = require("microsoft-cognitiveservices-speech-sdk");
    
    // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION"
    const speechConfig = sdk.SpeechConfig.fromSubscription(process.env.SPEECH_KEY, process.env.SPEECH_REGION);
    speechConfig.speechRecognitionLanguage = "en-US";
    
    function fromFile() {
        let audioConfig = sdk.AudioConfig.fromWavFileInput(fs.readFileSync("YourAudioFile.wav"));
        let speechRecognizer = new sdk.SpeechRecognizer(speechConfig, audioConfig);
    
        speechRecognizer.recognizeOnceAsync(result => {
            switch (result.reason) {
                case sdk.ResultReason.RecognizedSpeech:
                    console.log(`RECOGNIZED: Text=${result.text}`);
                    break;
                case sdk.ResultReason.NoMatch:
                    console.log("NOMATCH: Speech could not be recognized.");
                    break;
                case sdk.ResultReason.Canceled:
                    const cancellation = sdk.CancellationDetails.fromResult(result);
                    console.log(`CANCELED: Reason=${cancellation.reason}`);
    
                    if (cancellation.reason == sdk.CancellationReason.Error) {
                        console.log(`CANCELED: ErrorCode=${cancellation.ErrorCode}`);
                        console.log(`CANCELED: ErrorDetails=${cancellation.errorDetails}`);
                        console.log("CANCELED: Did you set the speech resource key and region values?");
                    }
                    break;
            }
            speechRecognizer.close();
        });
    }
    fromFile();
    
  4. Ersetzen Sie in SpeechRecognition.js den Dateinamen YourAudioFile.wav durch Ihre eigene WAV-Datei. In diesem Beispiel wird nur die Sprache aus einer WAV-Datei erkannt. Informationen zu anderen Audioformaten finden Sie unter Verwenden von komprimierten Eingabeaudiodaten. In diesem Beispiel werden bis zu 30 Sekunden an Audiodaten unterstützt.

  5. Um die Sprache für die Spracherkennung zu ändern, ersetzen Sie en-US durch eine andere en-US. Verwenden Sie für Spanisch (Spanien) z. B. es-ES. Wenn Sie keine Sprache angeben, lautet der Standardwert en-US. Ausführliche Informationen zum Identifizieren einer von mehreren Sprachen, die gesprochen werden können, finden Sie unter Sprachenerkennung.

  6. Führen Sie die neue Konsolenanwendung aus, um die Spracherkennung aus einer Datei zu starten:

    node.exe SpeechRecognition.js
    

    Wichtig

    Stellen Sie sicher, dass Sie die SPEECH_KEY- und SPEECH_REGION-Umgebungsvariablen festlegen. Wenn Sie diese Variablen nicht festlegen, wird für das Beispiel eine Fehlermeldung ausgegeben.

    Die Sprache aus der Audiodatei sollte als Text ausgegeben werden:

    RECOGNIZED: Text=I'm excited to try speech to text.
    

Hinweise

In diesem Beispiel wird der Vorgang recognizeOnceAsync verwendet, um Äußerungen von bis zu 30 Sekunden oder bis zur Erkennung von Stille zu transkribieren. Informationen zur kontinuierlichen Erkennung längerer Audiodaten, einschließlich mehrsprachiger Konversationen, finden Sie unter Erkennen von Sprache.

Hinweis

Die Spracherkennung über ein Mikrofon wird in Node.js nicht unterstützt. Sie wird nur in einer browserbasierten JavaScript-Umgebung unterstützt. Weitere Informationen finden Sie im React-Beispiel und unter Implementierung der Spracherkennung über ein Mikrofon auf GitHub.

Das React-Beispiel zeigt Entwurfsmuster für den Austausch und die Verwaltung von Authentifizierungstoken. Außerdem wird die Erfassung von Audiodaten über ein Mikrofon oder aus einer Datei für die Konvertierung von Sprache in Text veranschaulicht.

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

In dieser Schnellstartanleitung erstellen und führen Sie eine Anwendung zum Erkennen und Transkribieren von Sprache in Text in Echtzeit aus.

Tipp

Sie können Spracherkennung in Echtzeit in Speech Studio ausprobieren, ohne sich zu registrieren oder Code zu schreiben.

Weitere Informationen zum asynchronen Transkribieren von Audiodateien finden Sie unter Was ist die Batch-Transkription?. Wenn Sie nicht sicher sind, welche Spracherkennungslösung für Sie geeignet ist, finden Sie unter Was ist Spracherkennung? weitere Informationen.

Voraussetzungen

Einrichten der Umgebung

Das Speech SDK für Objective-C wird als Frameworkpaket verteilt. Das Framework unterstützt sowohl Objective-C als auch Swift unter iOS und macOS.

Das Speech SDK kann in Xcode-Projekten als CocoaPod verwendet oder direkt heruntergeladen und manuell verknüpft werden. In dieser Anleitung wird ein CocoaPod verwendet. Installieren Sie den CocoaPod-Abhängigkeits-Manager entsprechend den Anweisungen in der Installationsanleitung.

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.

Erkennen von Spracheingaben per Mikrofon

Führen Sie die folgenden Schritte aus, um Sprache in einer macOS-Anwendung zu erkennen.

  1. Klonen Sie das Repository Azure-Samples/cognitive-services-speech-sdk, um das Beispielprojekt zum Erkennen von Spracheingaben per Mikrofon in Objective-C unter macOS abzurufen. Das Repository enthält auch iOS-Beispiele.

  2. Navigieren Sie in einem Konsolenfenster zum Verzeichnis der heruntergeladenen Beispiel-App helloworld.

  3. Führen Sie den Befehl pod install aus. Mit diesem Befehl wird ein Xcode-Arbeitsbereich helloworld.xcworkspace generiert, der die Beispiel-App und das Speech SDK als Abhängigkeit enthält.

  4. Öffnen Sie den Arbeitsbereich helloworld.xcworkspace in Xcode.

  5. Öffnen Sie die Datei AppDelegate.m, und suchen Sie wie hier gezeigt nach der buttonPressed-Methode.

    - (void)buttonPressed:(NSButton *)button {
        // Creates an instance of a speech config with specified subscription key and service region.
        NSString *speechKey = [[[NSProcessInfo processInfo] environment] objectForKey:@"SPEECH_KEY"];
        NSString *serviceRegion = [[[NSProcessInfo processInfo] environment] objectForKey:@"SPEECH_REGION"];
    
        SPXAudioConfiguration *audioConfig = [[SPXAudioConfiguration alloc] initWithMicrophone:nil];
        SPXSpeechConfiguration *speechConfig = [[SPXSpeechConfiguration alloc] initWithSubscription:speechKey region:serviceRegion];
        SPXSpeechRecognizer *speechRecognizer = [[SPXSpeechRecognizer alloc] initWithSpeechConfiguration:speechConfig language:@"en-US" audioConfiguration:audioConfig];
    
        NSLog(@"Speak into your microphone.");
    
        SPXSpeechRecognitionResult *speechResult = [speechRecognizer recognizeOnce];
    
        // Checks result.
        if (SPXResultReason_Canceled == speechResult.reason) {
            SPXCancellationDetails *details = [[SPXCancellationDetails alloc] initFromCanceledRecognitionResult:speechResult];
            NSLog(@"Speech recognition was canceled: %@. Did you set the speech resource key and region values?", details.errorDetails);
            [self.label setStringValue:([NSString stringWithFormat:@"Canceled: %@", details.errorDetails])];
        } else if (SPXResultReason_RecognizedSpeech == speechResult.reason) {
            NSLog(@"Speech recognition result received: %@", speechResult.text);
            [self.label setStringValue:(speechResult.text)];
        } else {
            NSLog(@"There was an error.");
            [self.label setStringValue:(@"Speech Recognition Error")];
        }
    }
    
  6. Verwenden Sie in AppDelegate.m die zuvor festgelegten Umgebungsvariablen für den Speech-Ressourcenschlüssel und die Region.

    NSString *speechKey = [[[NSProcessInfo processInfo] environment] objectForKey:@"SPEECH_KEY"];
    NSString *serviceRegion = [[[NSProcessInfo processInfo] environment] objectForKey:@"SPEECH_REGION"];
    
  7. Um die Sprache für die Spracherkennung zu ändern, ersetzen Sie en-US durch eine andere en-US. Verwenden Sie für Spanisch (Spanien) z. B. es-ES. Wenn Sie keine Sprache angeben, lautet der Standardwert en-US. Ausführliche Informationen zum Identifizieren einer von mehreren Sprachen, die gesprochen werden können, finden Sie unter Sprachenerkennung.

  8. Um die Debugausgabe anzuzeigen, wählen Sie Ansicht>Debugbereich>Konsole aktivieren aus.

  9. Um den Beispielcode zu erstellen und auszuführen, wählen Sie Produkt->Ausführung aus dem Menü oder klicken Sie auf die Schaltfläche Wiedergeben.

Wichtig

Stellen Sie sicher, dass Sie die SPEECH_KEY- und SPEECH_REGION-Umgebungsvariablen festlegen. Wenn Sie diese Variablen nicht festlegen, wird für das Beispiel eine Fehlermeldung ausgegeben.

Nachdem Sie die Schaltfläche in der Anwendung ausgewählt und ein paar Worte gesagt haben, sollten Sie den von Ihnen gesprochenen Text im unteren Teil des Bildschirms sehen. Wenn Sie die Anwendung zum ersten Mal starten, werden Sie aufgefordert, der Anwendung Zugriff auf das Mikrofon Ihres Computers zu gewähren.

Hinweise

Im Folgenden finden Sie einige weitere Überlegungen dazu:

  • In diesem Beispiel wird der Vorgang recognizeOnce verwendet, um Äußerungen von bis zu 30 Sekunden oder bis zur Erkennung von Stille zu transkribieren. Informationen zur kontinuierlichen Erkennung längerer Audiodaten, einschließlich mehrsprachiger Konversationen, finden Sie unter Erkennen von Sprache.

  • Verwenden Sie initWithWavFileInput anstelle von initWithMicrophone, um Sprache aus einer Audiodatei zu erkennen:

    SPXAudioConfiguration *audioConfig = [[SPXAudioConfiguration alloc] initWithWavFileInput:YourAudioFile];
    

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

In dieser Schnellstartanleitung erstellen und führen Sie eine Anwendung zum Erkennen und Transkribieren von Sprache in Text in Echtzeit aus.

Tipp

Sie können Spracherkennung in Echtzeit in Speech Studio ausprobieren, ohne sich zu registrieren oder Code zu schreiben.

Weitere Informationen zum asynchronen Transkribieren von Audiodateien finden Sie unter Was ist die Batch-Transkription?. Wenn Sie nicht sicher sind, welche Spracherkennungslösung für Sie geeignet ist, finden Sie unter Was ist Spracherkennung? weitere Informationen.

Voraussetzungen

Einrichten der Umgebung

Das Speech SDK für Swift wird als Frameworkpaket verteilt. Das Framework unterstützt sowohl Objective-C als auch Swift unter iOS und macOS.

Das Speech SDK kann in Xcode-Projekten als CocoaPod verwendet oder direkt heruntergeladen und manuell verknüpft werden. In dieser Anleitung wird ein CocoaPod verwendet. Installieren Sie den CocoaPod-Abhängigkeits-Manager entsprechend den Anweisungen in der Installationsanleitung.

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.

Erkennen von Spracheingaben per Mikrofon

Führen Sie die folgenden Schritte aus, um Sprache in einer macOS-Anwendung zu erkennen.

  1. Klonen Sie das Repository Azure-Samples/cognitive-services-speech-sdk, um das Beispielprojekt zum Erkennen von Spracheingaben per Mikrofon in Swift unter macOS abzurufen. Das Repository enthält auch iOS-Beispiele.

  2. Navigieren Sie in einem Terminal zum Verzeichnis der heruntergeladenen Beispiel-App (helloworld).

  3. Führen Sie den Befehl pod install aus. Mit diesem Befehl wird ein Xcode-Arbeitsbereich helloworld.xcworkspace generiert, der die Beispiel-App und das Speech SDK als Abhängigkeit enthält.

  4. Öffnen Sie den Arbeitsbereich helloworld.xcworkspace in Xcode.

  5. Öffnen Sie die Datei AppDelegate.swift, und suchen Sie wie hier gezeigt nach den Methoden applicationDidFinishLaunching und recognizeFromMic.

    import Cocoa
    
    @NSApplicationMain
    class AppDelegate: NSObject, NSApplicationDelegate {
        var label: NSTextField!
        var fromMicButton: NSButton!
    
        var sub: String!
        var region: String!
    
        @IBOutlet weak var window: NSWindow!
    
        func applicationDidFinishLaunching(_ aNotification: Notification) {
            print("loading")
            // load subscription information
            sub = ProcessInfo.processInfo.environment["SPEECH_KEY"]
            region = ProcessInfo.processInfo.environment["SPEECH_REGION"]
    
            label = NSTextField(frame: NSRect(x: 100, y: 50, width: 200, height: 200))
            label.textColor = NSColor.black
            label.lineBreakMode = .byWordWrapping
    
            label.stringValue = "Recognition Result"
            label.isEditable = false
    
            self.window.contentView?.addSubview(label)
    
            fromMicButton = NSButton(frame: NSRect(x: 100, y: 300, width: 200, height: 30))
            fromMicButton.title = "Recognize"
            fromMicButton.target = self
            fromMicButton.action = #selector(fromMicButtonClicked)
            self.window.contentView?.addSubview(fromMicButton)
        }
    
        @objc func fromMicButtonClicked() {
            DispatchQueue.global(qos: .userInitiated).async {
                self.recognizeFromMic()
            }
        }
    
        func recognizeFromMic() {
            var speechConfig: SPXSpeechConfiguration?
            do {
                try speechConfig = SPXSpeechConfiguration(subscription: sub, region: region)
            } catch {
                print("error \(error) happened")
                speechConfig = nil
            }
            speechConfig?.speechRecognitionLanguage = "en-US"
    
            let audioConfig = SPXAudioConfiguration()
    
            let reco = try! SPXSpeechRecognizer(speechConfiguration: speechConfig!, audioConfiguration: audioConfig)
    
            reco.addRecognizingEventHandler() {reco, evt in
                print("intermediate recognition result: \(evt.result.text ?? "(no result)")")
                self.updateLabel(text: evt.result.text, color: .gray)
            }
    
            updateLabel(text: "Listening ...", color: .gray)
            print("Listening...")
    
            let result = try! reco.recognizeOnce()
            print("recognition result: \(result.text ?? "(no result)"), reason: \(result.reason.rawValue)")
            updateLabel(text: result.text, color: .black)
    
            if result.reason != SPXResultReason.recognizedSpeech {
                let cancellationDetails = try! SPXCancellationDetails(fromCanceledRecognitionResult: result)
                print("cancelled: \(result.reason), \(cancellationDetails.errorDetails)")
                print("Did you set the speech resource key and region values?")
                updateLabel(text: "Error: \(cancellationDetails.errorDetails)", color: .red)
            }
        }
    
        func updateLabel(text: String?, color: NSColor) {
            DispatchQueue.main.async {
                self.label.stringValue = text!
                self.label.textColor = color
            }
        }
    }
    
  6. Verwenden Sie in AppDelegate.m die zuvor festgelegten Umgebungsvariablen für den Speech-Ressourcenschlüssel und die Region.

    sub = ProcessInfo.processInfo.environment["SPEECH_KEY"]
    region = ProcessInfo.processInfo.environment["SPEECH_REGION"]
    
  7. Um die Sprache für die Spracherkennung zu ändern, ersetzen Sie en-US durch eine andere en-US. Verwenden Sie für Spanisch (Spanien) z. B. es-ES. Wenn Sie keine Sprache angeben, lautet der Standardwert en-US. Ausführliche Informationen zum Identifizieren einer von mehreren Sprachen, die gesprochen werden können, finden Sie unter Sprachenerkennung.

  8. Um die Debugausgabe anzuzeigen, wählen Sie Ansicht>Debugbereich>Konsole aktivieren aus.

  9. Erstellen Sie den Beispielcode, und führen Sie ihn aus, indem Sie im Menü Produkt>Ausführen auswählen oder auf die Schaltfläche Wiedergeben klicken.

    Wichtig

    Stellen Sie sicher, dass Sie die SPEECH_KEY- und SPEECH_REGION-Umgebungsvariablen festlegen. Wenn Sie diese Variablen nicht festlegen, wird für das Beispiel eine Fehlermeldung ausgegeben.

Nachdem Sie die Schaltfläche in der Anwendung ausgewählt und ein paar Worte gesagt haben, sollten Sie den von Ihnen gesprochenen Text im unteren Teil des Bildschirms sehen. Wenn Sie die Anwendung zum ersten Mal starten, werden Sie aufgefordert, der Anwendung Zugriff auf das Mikrofon Ihres Computers zu gewähren.

Hinweise

In diesem Beispiel wird der Vorgang recognizeOnce verwendet, um Äußerungen von bis zu 30 Sekunden oder bis zur Erkennung von Stille zu transkribieren. Informationen zur kontinuierlichen Erkennung längerer Audiodaten, einschließlich mehrsprachiger Konversationen, finden Sie unter Erkennen von Sprache.

Bereinigen von Ressourcen

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

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

In dieser Schnellstartanleitung erstellen und führen Sie eine Anwendung zum Erkennen und Transkribieren von Sprache in Text in Echtzeit aus.

Tipp

Sie können Spracherkennung in Echtzeit in Speech Studio ausprobieren, ohne sich zu registrieren oder Code zu schreiben.

Weitere Informationen zum asynchronen Transkribieren von Audiodateien finden Sie unter Was ist die Batch-Transkription?. Wenn Sie nicht sicher sind, welche Spracherkennungslösung für Sie geeignet ist, finden Sie unter Was ist Spracherkennung? weitere Informationen.

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.

Installieren Sie eine Python-Version ab 3.7. Weitere Anforderungen finden Sie unter Installieren des Speech SDK.

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.

Erkennen von Spracheingaben per Mikrofon

Führen Sie die folgenden Schritte aus, um eine Konsolenanwendung zu erstellen.

  1. Öffnen Sie ein Eingabeaufforderungsfenster in dem Ordner, in dem das neue Projekt angezeigt werden soll. Erstellen Sie eine neue Datei namens speech_recognition.py.

  2. Führen Sie diesen Befehl aus, um das Speech SDK zu installieren:

    pip install azure-cognitiveservices-speech
    
  3. Kopieren Sie den folgenden Code in die Datei speech_recognition.py:

    import os
    import azure.cognitiveservices.speech as speechsdk
    
    def recognize_from_microphone():
        # This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION"
        speech_config = speechsdk.SpeechConfig(subscription=os.environ.get('SPEECH_KEY'), region=os.environ.get('SPEECH_REGION'))
        speech_config.speech_recognition_language="en-US"
    
        audio_config = speechsdk.audio.AudioConfig(use_default_microphone=True)
        speech_recognizer = speechsdk.SpeechRecognizer(speech_config=speech_config, audio_config=audio_config)
    
        print("Speak into your microphone.")
        speech_recognition_result = speech_recognizer.recognize_once_async().get()
    
        if speech_recognition_result.reason == speechsdk.ResultReason.RecognizedSpeech:
            print("Recognized: {}".format(speech_recognition_result.text))
        elif speech_recognition_result.reason == speechsdk.ResultReason.NoMatch:
            print("No speech could be recognized: {}".format(speech_recognition_result.no_match_details))
        elif speech_recognition_result.reason == speechsdk.ResultReason.Canceled:
            cancellation_details = speech_recognition_result.cancellation_details
            print("Speech Recognition canceled: {}".format(cancellation_details.reason))
            if cancellation_details.reason == speechsdk.CancellationReason.Error:
                print("Error details: {}".format(cancellation_details.error_details))
                print("Did you set the speech resource key and region values?")
    
    recognize_from_microphone()
    
  4. Um die Sprache für die Spracherkennung zu ändern, ersetzen Sie en-US durch eine andere en-US. Verwenden Sie für Spanisch (Spanien) z. B. es-ES. Wenn Sie keine Sprache angeben, lautet der Standardwert en-US. Ausführliche Informationen zum Identifizieren einer von mehreren Sprachen, die gesprochen werden können, finden Sie unter Sprachenerkennung.

  5. Führen Sie die neue Konsolenanwendung aus, um die Spracherkennung über ein Mikrofon zu starten:

    python speech_recognition.py
    

    Wichtig

    Stellen Sie sicher, dass Sie die SPEECH_KEY- und SPEECH_REGION-Umgebungsvariablen festlegen. Wenn Sie diese Variablen nicht festlegen, wird für das Beispiel eine Fehlermeldung ausgegeben.

  6. Sprechen Sie in Ihr Mikrofon, wenn Sie dazu aufgefordert werden. Die Wörter, die Sie sprechen, sollten als Text angezeigt werden:

    Speak into your microphone.
    RECOGNIZED: Text=I'm excited to try speech to text.
    

Hinweise

Im Folgenden finden Sie einige weitere Überlegungen dazu:

  • In diesem Beispiel wird der Vorgang recognize_once_async verwendet, um Äußerungen von bis zu 30 Sekunden oder bis zur Erkennung von Stille zu transkribieren. Informationen zur kontinuierlichen Erkennung längerer Audiodaten, einschließlich mehrsprachiger Konversationen, finden Sie unter Erkennen von Sprache.

  • Verwenden Sie filename anstelle von use_default_microphone, um Sprache aus einer Audiodatei zu erkennen:

    audio_config = speechsdk.audio.AudioConfig(filename="YourAudioFile.wav")
    
  • Wenn Sie komprimierte Audiodateien wie beispielsweise MP4 verwenden, installieren Sie GStreamer, und verwenden Sie PullAudioInputStream oder PushAudioInputStream. Weitere Informationen finden Sie unter Verwenden von komprimierten Eingabeaudiodaten.

Bereinigen von Ressourcen

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

REST-API-Referenz zur Spracherkennung | REST-API-Referenz zur Spracherkennung für kurze Audiodaten | Zusätzliche Beispiele auf GitHub

In dieser Schnellstartanleitung erstellen und führen Sie eine Anwendung zum Erkennen und Transkribieren von Sprache in Text in Echtzeit aus.

Tipp

Sie können Spracherkennung in Echtzeit in Speech Studio ausprobieren, ohne sich zu registrieren oder Code zu schreiben.

Weitere Informationen zum asynchronen Transkribieren von Audiodateien finden Sie unter Was ist die Batch-Transkription?. Wenn Sie nicht sicher sind, welche Spracherkennungslösung für Sie geeignet ist, finden Sie unter Was ist Spracherkennung? weitere Informationen.

Voraussetzungen

Sie benötigen auch eine WAV-Audiodatei auf Ihrem lokalen Computer. Sie können Ihre eigene WAV-Datei (bis zu 60 Sekunden) verwenden oder die Beispieldatei https://crbn.us/whatstheweatherlike.wav herunterladen.

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.

Erkennen von Sprache aus einer Datei

Öffnen Sie ein Konsolenfenster, und führen Sie den folgenden cURL-Befehl aus. Ersetzen Sie YourAudioFile.wav durch den Pfad und den Namen Ihrer Audiodatei.

curl --location --request POST "https://%SPEECH_REGION%.stt.speech.microsoft.com/speech/recognition/conversation/cognitiveservices/v1?language=en-US&format=detailed" ^
--header "Ocp-Apim-Subscription-Key: %SPEECH_KEY%" ^
--header "Content-Type: audio/wav" ^
--data-binary "@YourAudioFile.wav"

Wichtig

Stellen Sie sicher, dass Sie die SPEECH_KEY- und SPEECH_REGION-Umgebungsvariablen festlegen. Wenn Sie diese Variablen nicht festlegen, wird für das Beispiel eine Fehlermeldung ausgegeben.

Sie sollten eine Antwort empfangen, die in etwa wie das folgende Beispiel aussieht. DisplayText sollte der Text sein, der aus Ihrer Audiodatei erkannt wurde. Der Befehl erkennt bis zu 60 Sekunden Audiodaten und konvertiert sie in Text.

{
    "RecognitionStatus": "Success",
    "DisplayText": "My voice is my passport, verify me.",
    "Offset": 6600000,
    "Duration": 32100000
}

Weitere Informationen finden Sie unter Spracherkennung-REST-API für kurze Audiodaten.

Bereinigen von Ressourcen

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

In dieser Schnellstartanleitung erstellen und führen Sie eine Anwendung zum Erkennen und Transkribieren von Sprache in Text in Echtzeit aus.

Tipp

Sie können Spracherkennung in Echtzeit in Speech Studio ausprobieren, ohne sich zu registrieren oder Code zu schreiben.

Weitere Informationen zum asynchronen Transkribieren von Audiodateien finden Sie unter Was ist die Batch-Transkription?. Wenn Sie nicht sicher sind, welche Spracherkennungslösung für Sie geeignet ist, finden Sie unter Was ist Spracherkennung? weitere Informationen.

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
    

Erkennen von Spracheingaben per Mikrofon

  1. Führen Sie den folgenden Befehl aus, um die Spracherkennung über ein Mikrofon zu starten:

    spx recognize --microphone --source en-US
    
  2. Sprechen Sie in das Mikrofon, und Sie sehen in Echtzeit die Transkription Ihrer Worte in Text. Die Speech CLI wird angehalten, wenn 30 Sekunden lang Stille herrscht oder Sie STRG+C drücken.

    Connection CONNECTED...
    RECOGNIZED: I'm excited to try speech to text.
    

Hinweise

Im Folgenden finden Sie einige weitere Überlegungen dazu:

  • Verwenden Sie --file anstelle von --microphone, um Sprache aus einer Audiodatei zu erkennen. Wenn Sie komprimierte Audiodateien wie beispielsweise MP4 verwenden, installieren Sie GStreamer, und verwenden Sie --format. Weitere Informationen finden Sie unter Verwenden von komprimierten Eingabeaudiodaten.

    spx recognize --file YourAudioFile.wav
    spx recognize --file YourAudioFile.mp4 --format any
    
  • Verwenden Sie eine Ausdrucksliste, um die Erkennungsgenauigkeit bestimmter Wörter oder Äußerungen zu verbessern. Sie fügen eine Phrasenliste linear oder mit einer Textdatei zusammen mit dem recognize-Befehl ein:

    spx recognize --microphone --phrases "Contoso;Jessie;Rehaan;"
    spx recognize --microphone --phrases @phrases.txt
    
  • Um die Sprache für die Spracherkennung zu ändern, ersetzen Sie en-US durch eine andere en-US. Verwenden Sie für Spanisch (Spanien) z. B. es-ES. Wenn Sie keine Sprache angeben, lautet der Standardwert en-US.

    spx recognize --microphone --source es-ES
    
  • Um eine kontinuierliche Erkennung von Audiodaten zu erreichen, die länger als 30 Sekunden dauern, fügen Sie --continuous an:

    spx recognize --microphone --source es-ES --continuous
    
  • Führen Sie diesen Befehl aus, um weitere Informationen zu zusätzlichen Spracherkennungsoptionen wie Dateieingabe und -ausgabe zu erhalten:

    spx help recognize
    

Bereinigen von Ressourcen

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

Nächster Schritt