Snabbstart: Taligenkänning med Speech SDK för .NET CoreQuickstart: Recognize speech with the Speech SDK for .NET Core

Snabb Starter är också tillgängliga för text till tal och tal översättning.Quickstarts are also available for text-to-speech and speech-translation.

Om du vill kan du välja ett annat programmeringsspråk och/eller miljö:If desired, choose a different programming language and/or environment:

I den här artikeln skapar du ett C# konsol program för .net Core på Windows eller MacOS med hjälp av COGNITIVE Services Speech SDK.In this article, you create a C# console application for .NET Core on Windows or macOS by using the Cognitive Services Speech SDK. Du transkriberar tal till text i realtid från datorns mikrofon.You transcribe speech to text in real time from your PC's microphone. Programmet har skapats med Speech SDK NuGet-paketet och Microsoft Visual Studio 2017 eller senare (alla versioner).The application is built with the Speech SDK NuGet package and Microsoft Visual Studio 2017 or later (any edition).

Anteckning

.NET Core är en plattformsoberoende plattform med öppen källkod som implementerar .NET Standard-specifikationen..NET Core is an open-source, cross-platform .NET platform that implements the .NET Standard specification.

Du behöver en prenumerations nyckel för tal tjänster för att slutföra den här snabb starten.You need a Speech Services subscription key to complete this Quickstart. Du kan skaffa en utan kostnad.You can get one for free. Mer information finns i testa tal tjänsterna kostnads fritt .See Try the Speech Services for free for details.

FörutsättningarPrerequisites

För den här snabbstarten krävs:This quickstart requires:

Skapa ett Visual Studio-projektCreate a Visual Studio project

  1. Starta Visual Studio 2019.Start Visual Studio 2019.

  2. Kontrollera att arbetsbelastningen .NET cross-platform development (Plattformsoberoende .NET-utveckling) är tillgänglig.Make sure the .NET cross-platform development workload is available. Välj Verktyg > Get Tools and Features (Hämta verktyg och funktioner) på menyraden i Visual Studio för att öppna installationsprogrammet för Visual Studio.Choose Tools > Get Tools and Features from the Visual Studio menu bar to open the Visual Studio installer. Om den här arbetsbelastningen redan är aktiverad stänger du dialogrutan.If this workload is already enabled, close the dialog box.

    Skärmbild av Visual Studio-installationsprogrammet med fliken Arbetsbelastningar markerad

    Annars markerar du rutan bredvid .NET Core cross-platform development (Plattformsoberoende .NET-utveckling) och väljer Ändra i det nedre högra hörnet av dialogrutan.Otherwise, select the box next to .NET Core cross-platform development, and select Modify at the lower right corner of the dialog box. Installationen av den nya funktionen tar en stund.Installation of the new feature will take a moment.

  3. Skapa en ny Visual C# .NET-konsolapp.Create a new Visual C# .NET Core Console App. I dialogrutan Nytt projekt expanderar du Installerat > Visual C# > .NET Core i den vänstra rutan.In the New Project dialog box, from the left pane, expand Installed > Visual C# > .NET Core. Välj sedan Console App (.NET Core) .Then select Console App (.NET Core). För projektnamnet anger du helloworld.For the project name, enter helloworld.

    Skärmbild av dialogrutan Nytt projektScreenshot of New Project dialog box

  4. Installera och referera till NuGet-paketet för Speech SDK.Install and reference the Speech SDK NuGet package. Högerklicka på lösningen i Solution Explorer och välj sedan Hantera NuGet-paket för lösningen.In Solution Explorer, right-click the solution and select Manage NuGet Packages for Solution.

    Skärmbild av Solution Explorer, med alternativet Hantera NuGet-paket för lösningen markeratScreenshot of Solution Explorer, with Manage NuGet Packages for Solution highlighted

  5. I fältet för paketkälla uppe till höger väljer du nuget.org. Sök efter Microsoft.CognitiveServices.Speech-paketet och installera det i helloworld-projektet.In the upper-right corner, in the Package Source field, select nuget.org. Search for the Microsoft.CognitiveServices.Speech package, and install it into the helloworld project.

    Skärmbild av dialogrutan Hantera paket för lösningenScreenshot of Manage Packages for Solution dialog box

  6. Acceptera licensvillkoren som visas för att påbörja installationen av NuGet-paketet.Accept the displayed license to begin installation of the NuGet package.

    Skärmbild av dialogrutan för att acceptera licensvillkorenScreenshot of License Acceptance dialog box

När paketet har installerats visas en bekräftelse i Package Manager-konsolen.After the package is installed, a confirmation appears in the Package Manager console.

Lägga till exempelkodAdd sample code

  1. Öppna Program.cs och ersätt all kod i den med följande.Open Program.cs, and replace all the code in it with the following.

    using System;
    using System.Threading.Tasks;
    using Microsoft.CognitiveServices.Speech;
    
    namespace helloworld
    {
        class Program
        {
            public static async Task RecognizeSpeechAsync()
            {
                // Creates an instance of a speech config with specified subscription key and service region.
                // Replace with your own subscription key // and service region (e.g., "westus").
                var config = SpeechConfig.FromSubscription("YourSubscriptionKey", "YourServiceRegion");
    
                // Creates a speech recognizer.
                using (var recognizer = new SpeechRecognizer(config))
                {
                    Console.WriteLine("Say something...");
    
                    // Starts speech recognition, and returns after a single utterance is recognized. The end of a
                    // single utterance is determined by listening for silence at the end or until a maximum of 15
                    // seconds of audio is processed.  The task returns the recognition text as result. 
                    // Note: Since RecognizeOnceAsync() returns only a single utterance, it is suitable only for single
                    // shot recognition like command or query. 
                    // For long-running multi-utterance recognition, use StartContinuousRecognitionAsync() instead.
                    var result = await recognizer.RecognizeOnceAsync();
    
                    // Checks result.
                    if (result.Reason == ResultReason.RecognizedSpeech)
                    {
                        Console.WriteLine($"We recognized: {result.Text}");
                    }
                    else if (result.Reason == ResultReason.NoMatch)
                    {
                        Console.WriteLine($"NOMATCH: Speech could not be recognized.");
                    }
                    else if (result.Reason == ResultReason.Canceled)
                    {
                        var cancellation = CancellationDetails.FromResult(result);
                        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 update the subscription info?");
                        }
                    }
                }
            }
    
            static void Main()
            {
                RecognizeSpeechAsync().Wait();
                Console.WriteLine("Please press <Return> to continue.");
                Console.ReadLine();
            }
        }
    }
    
  2. Ersätt strängen YourSubscriptionKey i samma fil med din prenumerationsnyckel.In the same file, replace the string YourSubscriptionKey with your subscription key.

  3. Ersätt även strängen YourServiceRegion med den region som är associerad med din prenumeration (till exempel westus för en kostnadsfri provprenumeration).Also replace the string YourServiceRegion with the region associated with your subscription (for example, westus for the free trial subscription).

  4. Spara ändringarna i projektet.Save changes to the project.

Skapa och kör appenBuild and run the app

  1. Skapa programmet.Build the application. I menyraden väljer du Skapa > Skapa lösning.From the menu bar, choose Build > Build Solution. Koden ska kompileras utan fel.The code should compile without errors.

    Skärmbild av Visual Studio-programmet med Skapa lösning markeratScreenshot of Visual Studio application, with Build Solution option highlighted

  2. Starta programmet.Start the application. I menyraden väljer du Felsök > Starta felsökning, eller tryck på F5.From the menu bar, choose Debug > Start Debugging, or press F5.

    Skärmbild av Visual Studio-programmet, med Starta felsökning markeratScreenshot of Visual Studio application, with Start Debugging option highlighted

  3. Ett konsolfönster öppnas där du uppmanas att säga något.A console window appears, prompting you to say something. Säg en engelsk fras eller en mening.Speak an English phrase or sentence. Ditt tal överförs till tal tjänsterna och skrivs till text som visas i samma fönster.Your speech is transmitted to the Speech Services and transcribed to text, which appears in the same window.

    Skärmbild av konsolens utdata efter lyckad taligenkänningScreenshot of console output after successful recognition

Nästa stegNext steps

Ytterligare exempel, till exempel hur man läser tal från en ljudfil, finns på GitHub.Additional samples, such as how to read speech from an audio file, are available on GitHub.

Se ocksåSee also