Quickstart: Spraak herkennen en converteren naar tekst
Belangrijk
Items die in dit artikel zijn gemarkeerd (preview) zijn momenteel beschikbaar als openbare preview. Deze preview wordt aangeboden zonder een service level agreement en we raden deze niet aan voor productieworkloads. Misschien worden bepaalde functies niet ondersteund of zijn de mogelijkheden ervan beperkt. Zie Aanvullende gebruiksvoorwaarden voor Microsoft Azure-previews voor meer informatie.
In deze quickstart probeert u realtime spraak naar tekst in Azure AI Studio.
Vereisten
- Azure-abonnement: Maak een gratis abonnement aan.
- Sommige functies van AI-services zijn gratis te proberen in AI Studio. Voor toegang tot alle mogelijkheden die in dit artikel worden beschreven, moet u AI-services verbinden met uw hub in AI Studio.
Realtime spraak naar tekst proberen
Ga naar de startpagina in AI Studio en selecteer VERVOLGENS AI Services in het linkerdeelvenster.
Selecteer Spraak in de lijst met AI-services.
Selecteer realtime spraak naar tekst.
Selecteer in de sectie Uitproberen de AI-servicesverbinding van uw hub. Zie AI-services verbinden met uw hub in AI Studio voor meer informatie over AI-servicesverbindingen.
Selecteer Geavanceerde opties weergeven om spraak-naar-tekstopties te configureren, zoals:
- Taalidentificatie: wordt gebruikt om talen te identificeren die in audio worden gesproken in vergelijking met een lijst met ondersteunde talen. Zie Taalidentificatie voor meer informatie over opties voor taalidentificatie, zoals aan het begin en continue herkenning.
- Sprekerscheiding: wordt gebruikt om luidsprekers in audio te identificeren en te scheiden. Diarization maakt onderscheid tussen de verschillende sprekers die deelnemen aan het gesprek. De Speech-service biedt informatie over welke spreker een bepaald deel van getranscribeerde spraak sprak. Zie de quickstart voor sprekerverwijdering voor meer informatie over spreker diarisatie .
- Aangepast eindpunt: gebruik een geïmplementeerd model van aangepaste spraak om de nauwkeurigheid van herkenning te verbeteren. Als u het basislijnmodel van Microsoft wilt gebruiken, laat u deze ingesteld op Geen. Zie Custom Speech voor meer informatie over aangepaste spraak.
- Uitvoerindeling: kies tussen eenvoudige en gedetailleerde uitvoerindelingen. Eenvoudige uitvoer bevat weergave-indeling en tijdstempels. Gedetailleerde uitvoer bevat meer indelingen (zoals weergave, lexical, ITN en gemaskeerde ITN), tijdstempels en N-best lijsten.
- Frasenlijst: verbeter de nauwkeurigheid van transcriptie door een lijst met bekende zinnen op te geven, zoals namen van personen of specifieke locaties. Gebruik komma's of puntkomma's om elke waarde in de frasenlijst te scheiden. Zie Frasenlijsten voor meer informatie over woordgroepenlijsten.
Selecteer een audiobestand dat u wilt uploaden of audio in realtime wilt opnemen. In dit voorbeeld gebruiken we het
Call1_separated_16k_health_insurance.wav
bestand dat beschikbaar is in de Speech SDK-opslagplaats op GitHub. U kunt het bestand downloaden of uw eigen audiobestand gebruiken.U kunt de realtime spraak-naar-tekstresultaten bekijken in de sectie Resultaten .
Referentiedocumentatiepakket (NuGet) | Aanvullende voorbeelden op GitHub |
In deze quickstart maakt en voert u een toepassing uit om spraak in realtime te herkennen en transcriberen naar tekst.
Als u in plaats daarvan audiobestanden asynchroon wilt transcriberen, raadpleegt u Wat is batchtranscriptie. Als u niet zeker weet welke spraak-naar-tekstoplossing geschikt is voor u, raadpleegt u Wat is spraak-naar-tekst?
Vereisten
- Een Azure-abonnement. U kunt er gratis een maken.
- Maak een spraakresource in Azure Portal.
- Haal de spraakresourcesleutel en -regio op. Nadat uw Spraak-resource is geïmplementeerd, selecteert u Ga naar de resource om sleutels weer te geven en te beheren.
De omgeving instellen
De Speech SDK is beschikbaar als een NuGet-pakket en implementeert .NET Standard 2.0. U installeert de Speech SDK verderop in deze handleiding. Zie De Speech SDK installeren voor andere vereisten.
Omgevingsvariabelen instellen
U moet uw toepassing verifiëren voor toegang tot Azure AI-services. In dit artikel leest u hoe u omgevingsvariabelen gebruikt om uw referenties op te slaan. Vervolgens hebt u vanuit uw code toegang tot de omgevingsvariabelen om uw toepassing te verifiëren. Gebruik voor productie een veiligere manier om uw referenties op te slaan en te openen.
Belangrijk
We raden Microsoft Entra ID-verificatie aan met beheerde identiteiten voor Azure-resources om te voorkomen dat referenties worden opgeslagen met uw toepassingen die in de cloud worden uitgevoerd.
Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.
Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.
Als u de omgevingsvariabelen voor uw Spraak-resourcesleutel en -regio wilt instellen, opent u een consolevenster en volgt u de instructies voor uw besturingssysteem en ontwikkelomgeving.
- Als u de
SPEECH_KEY
omgevingsvariabele wilt instellen, vervangt u uw sleutel door een van de sleutels voor uw resource. - Als u de
SPEECH_REGION
omgevingsvariabele wilt instellen, vervangt u uw regio door een van de regio's voor uw resource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Notitie
Als u alleen toegang nodig hebt tot de omgevingsvariabelen in de huidige console, kunt u de omgevingsvariabele instellen in set
plaats van setx
.
Nadat u de omgevingsvariabelen hebt toegevoegd, moet u mogelijk alle programma's opnieuw opstarten die de omgevingsvariabelen moeten lezen, inclusief het consolevenster. Als u Bijvoorbeeld Visual Studio als editor gebruikt, start u Visual Studio opnieuw voordat u het voorbeeld uitvoert.
Spraak herkennen met een microfoon
Tip
Probeer de Azure AI Speech Toolkit uit om eenvoudig voorbeelden te bouwen en uit te voeren in Visual Studio Code.
Volg deze stappen om een consoletoepassing te maken en de Speech SDK te installeren.
Open een opdrachtpromptvenster in de map waarin u het nieuwe project wilt opnemen. Voer deze opdracht uit om een consoletoepassing te maken met de .NET CLI.
dotnet new console
Met deze opdracht maakt u het Program.cs-bestand in de projectmap.
Installeer de Speech SDK in uw nieuwe project met de .NET CLI.
dotnet add package Microsoft.CognitiveServices.Speech
Vervang de inhoud van Program.cs door de volgende 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); } }
Als u de taal voor spraakherkenning wilt wijzigen, vervangt u deze door
en-US
een andere ondersteunde taal. Gebruik bijvoorbeeldes-ES
voor Spaans (Spanje). Als u geen taal opgeeft, is de standaardwaardeen-US
. Zie Taalidentificatie voor meer informatie over het identificeren van een van meerdere talen die kunnen worden gesproken.Voer de nieuwe consoletoepassing uit om spraakherkenning vanaf een microfoon te starten:
dotnet run
Belangrijk
Zorg ervoor dat u de
SPEECH_KEY
enSPEECH_REGION
omgevingsvariabelen instelt. Als u deze variabelen niet instelt, mislukt het voorbeeld met een foutbericht.Spreek in uw microfoon wanneer u hierom wordt gevraagd. Wat u spreekt, moet worden weergegeven als tekst:
Speak into your microphone. RECOGNIZED: Text=I'm excited to try speech to text.
Opmerkingen
Hier volgen enkele andere overwegingen:
In dit voorbeeld wordt de
RecognizeOnceAsync
bewerking gebruikt om utterances van maximaal 30 seconden te transcriberen of totdat stilte wordt gedetecteerd. Zie Spraak herkennen voor informatie over continue herkenning voor langere audio, inclusief meertalige gesprekken.Als u spraak uit een audiobestand wilt herkennen, gebruikt
FromWavFileInput
u in plaats vanFromDefaultMicrophoneInput
:using var audioConfig = AudioConfig.FromWavFileInput("YourAudioFile.wav");
Voor gecomprimeerde audiobestanden zoals MP4 installeert u GStreamer en gebruikt
PullAudioInputStream
ofPushAudioInputStream
. Zie Gecomprimeerde invoeraudio gebruiken voor meer informatie.
Resources opschonen
U kunt de Azure-portal of Azure CLI (Opdrachtregelinterface) gebruiken om de spraakresource te verwijderen die u hebt gemaakt.
Referentiedocumentatiepakket (NuGet) | Aanvullende voorbeelden op GitHub |
In deze quickstart maakt en voert u een toepassing uit om spraak in realtime te herkennen en transcriberen naar tekst.
Als u in plaats daarvan audiobestanden asynchroon wilt transcriberen, raadpleegt u Wat is batchtranscriptie. Als u niet zeker weet welke spraak-naar-tekstoplossing geschikt is voor u, raadpleegt u Wat is spraak-naar-tekst?
Vereisten
- Een Azure-abonnement. U kunt er gratis een maken.
- Maak een spraakresource in Azure Portal.
- Haal de spraakresourcesleutel en -regio op. Nadat uw Spraak-resource is geïmplementeerd, selecteert u Ga naar de resource om sleutels weer te geven en te beheren.
De omgeving instellen
De Speech SDK is beschikbaar als een NuGet-pakket en implementeert .NET Standard 2.0. U installeert de Speech SDK verderop in deze handleiding. Zie De Speech SDK installeren voor andere vereisten.
Omgevingsvariabelen instellen
U moet uw toepassing verifiëren voor toegang tot Azure AI-services. In dit artikel leest u hoe u omgevingsvariabelen gebruikt om uw referenties op te slaan. Vervolgens hebt u vanuit uw code toegang tot de omgevingsvariabelen om uw toepassing te verifiëren. Gebruik voor productie een veiligere manier om uw referenties op te slaan en te openen.
Belangrijk
We raden Microsoft Entra ID-verificatie aan met beheerde identiteiten voor Azure-resources om te voorkomen dat referenties worden opgeslagen met uw toepassingen die in de cloud worden uitgevoerd.
Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.
Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.
Als u de omgevingsvariabelen voor uw Spraak-resourcesleutel en -regio wilt instellen, opent u een consolevenster en volgt u de instructies voor uw besturingssysteem en ontwikkelomgeving.
- Als u de
SPEECH_KEY
omgevingsvariabele wilt instellen, vervangt u uw sleutel door een van de sleutels voor uw resource. - Als u de
SPEECH_REGION
omgevingsvariabele wilt instellen, vervangt u uw regio door een van de regio's voor uw resource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Notitie
Als u alleen toegang nodig hebt tot de omgevingsvariabelen in de huidige console, kunt u de omgevingsvariabele instellen in set
plaats van setx
.
Nadat u de omgevingsvariabelen hebt toegevoegd, moet u mogelijk alle programma's opnieuw opstarten die de omgevingsvariabelen moeten lezen, inclusief het consolevenster. Als u Bijvoorbeeld Visual Studio als editor gebruikt, start u Visual Studio opnieuw voordat u het voorbeeld uitvoert.
Spraak herkennen met een microfoon
Tip
Probeer de Azure AI Speech Toolkit uit om eenvoudig voorbeelden te bouwen en uit te voeren in Visual Studio Code.
Volg deze stappen om een consoletoepassing te maken en de Speech SDK te installeren.
Maak een nieuw C++-consoleproject in Visual Studio Community met de naam
SpeechRecognition
.Selecteer Tools>Nuget Pakketbeheer> Pakketbeheer Console. Voer in de Pakketbeheer Console deze opdracht uit:
Install-Package Microsoft.CognitiveServices.Speech
Vervang de inhoud door
SpeechRecognition.cpp
de volgende 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 }
Als u de taal voor spraakherkenning wilt wijzigen, vervangt u deze door
en-US
een andere ondersteunde taal. Gebruik bijvoorbeeldes-ES
voor Spaans (Spanje). Als u geen taal opgeeft, is de standaardwaardeen-US
. Zie Taalidentificatie voor meer informatie over het identificeren van een van meerdere talen die kunnen worden gesproken.Bouw uw nieuwe consoletoepassing en voer deze uit om spraakherkenning vanaf een microfoon te starten.
Belangrijk
Zorg ervoor dat u de
SPEECH_KEY
enSPEECH_REGION
omgevingsvariabelen instelt. Als u deze variabelen niet instelt, mislukt het voorbeeld met een foutbericht.Spreek in uw microfoon wanneer u hierom wordt gevraagd. Wat u spreekt, moet worden weergegeven als tekst:
Speak into your microphone. RECOGNIZED: Text=I'm excited to try speech to text.
Opmerkingen
Hier volgen enkele andere overwegingen:
In dit voorbeeld wordt de
RecognizeOnceAsync
bewerking gebruikt om utterances van maximaal 30 seconden te transcriberen of totdat stilte wordt gedetecteerd. Zie Spraak herkennen voor informatie over continue herkenning voor langere audio, inclusief meertalige gesprekken.Als u spraak uit een audiobestand wilt herkennen, gebruikt
FromWavFileInput
u in plaats vanFromDefaultMicrophoneInput
:auto audioConfig = AudioConfig::FromWavFileInput("YourAudioFile.wav");
Voor gecomprimeerde audiobestanden zoals MP4 installeert u GStreamer en gebruikt
PullAudioInputStream
ofPushAudioInputStream
. Zie Gecomprimeerde invoeraudio gebruiken voor meer informatie.
Resources opschonen
U kunt de Azure-portal of Azure CLI (Opdrachtregelinterface) gebruiken om de spraakresource te verwijderen die u hebt gemaakt.
Referentiedocumentatiepakket (Go) | Aanvullende voorbeelden op GitHub |
In deze quickstart maakt en voert u een toepassing uit om spraak in realtime te herkennen en transcriberen naar tekst.
Als u in plaats daarvan audiobestanden asynchroon wilt transcriberen, raadpleegt u Wat is batchtranscriptie. Als u niet zeker weet welke spraak-naar-tekstoplossing geschikt is voor u, raadpleegt u Wat is spraak-naar-tekst?
Vereisten
- Een Azure-abonnement. U kunt er gratis een maken.
- Maak een spraakresource in Azure Portal.
- Haal de spraakresourcesleutel en -regio op. Nadat uw Spraak-resource is geïmplementeerd, selecteert u Ga naar de resource om sleutels weer te geven en te beheren.
De omgeving instellen
Installeer de Speech SDK voor Go. Zie De Speech SDK installeren voor vereisten en instructies.
Omgevingsvariabelen instellen
U moet uw toepassing verifiëren voor toegang tot Azure AI-services. In dit artikel leest u hoe u omgevingsvariabelen gebruikt om uw referenties op te slaan. Vervolgens hebt u vanuit uw code toegang tot de omgevingsvariabelen om uw toepassing te verifiëren. Gebruik voor productie een veiligere manier om uw referenties op te slaan en te openen.
Belangrijk
We raden Microsoft Entra ID-verificatie aan met beheerde identiteiten voor Azure-resources om te voorkomen dat referenties worden opgeslagen met uw toepassingen die in de cloud worden uitgevoerd.
Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.
Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.
Als u de omgevingsvariabelen voor uw Spraak-resourcesleutel en -regio wilt instellen, opent u een consolevenster en volgt u de instructies voor uw besturingssysteem en ontwikkelomgeving.
- Als u de
SPEECH_KEY
omgevingsvariabele wilt instellen, vervangt u uw sleutel door een van de sleutels voor uw resource. - Als u de
SPEECH_REGION
omgevingsvariabele wilt instellen, vervangt u uw regio door een van de regio's voor uw resource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Notitie
Als u alleen toegang nodig hebt tot de omgevingsvariabelen in de huidige console, kunt u de omgevingsvariabele instellen in set
plaats van setx
.
Nadat u de omgevingsvariabelen hebt toegevoegd, moet u mogelijk alle programma's opnieuw opstarten die de omgevingsvariabelen moeten lezen, inclusief het consolevenster. Als u Bijvoorbeeld Visual Studio als editor gebruikt, start u Visual Studio opnieuw voordat u het voorbeeld uitvoert.
Spraak herkennen met een microfoon
Volg deze stappen om een GO-module te maken.
Open een opdrachtpromptvenster in de map waarin u het nieuwe project wilt opnemen. Maak een nieuw bestand met de naam speech-recognition.go.
Kopieer de volgende code naar spraakherkenning.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') }
Voer de volgende opdrachten uit om een go.mod-bestand te maken dat is gekoppeld aan onderdelen die worden gehost op GitHub:
go mod init speech-recognition go get github.com/Microsoft/cognitive-services-speech-sdk-go
Belangrijk
Zorg ervoor dat u de
SPEECH_KEY
enSPEECH_REGION
omgevingsvariabelen instelt. Als u deze variabelen niet instelt, mislukt het voorbeeld met een foutbericht.Bouw en voer de code uit:
go build go run speech-recognition
Resources opschonen
U kunt de Azure-portal of Azure CLI (Opdrachtregelinterface) gebruiken om de spraakresource te verwijderen die u hebt gemaakt.
Referentiedocumentatie | Aanvullende voorbeelden op GitHub
In deze quickstart maakt en voert u een toepassing uit om spraak in realtime te herkennen en transcriberen naar tekst.
Als u in plaats daarvan audiobestanden asynchroon wilt transcriberen, raadpleegt u Wat is batchtranscriptie. Als u niet zeker weet welke spraak-naar-tekstoplossing geschikt is voor u, raadpleegt u Wat is spraak-naar-tekst?
Vereisten
- Een Azure-abonnement. U kunt er gratis een maken.
- Maak een spraakresource in Azure Portal.
- Haal de spraakresourcesleutel en -regio op. Nadat uw Spraak-resource is geïmplementeerd, selecteert u Ga naar de resource om sleutels weer te geven en te beheren.
De omgeving instellen
Installeer de Speech SDK om uw omgeving in te stellen. Het voorbeeld in deze quickstart werkt met de Java Runtime.
Installeer Apache Maven. Voer vervolgens uit
mvn -v
om de installatie te bevestigen.Maak een nieuw
pom.xml
bestand in de hoofdmap van uw project en kopieer de volgende code erin:<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.40.0</version> </dependency> </dependencies> </project>
Installeer de Speech SDK en afhankelijkheden.
mvn clean dependency:copy-dependencies
Omgevingsvariabelen instellen
U moet uw toepassing verifiëren voor toegang tot Azure AI-services. In dit artikel leest u hoe u omgevingsvariabelen gebruikt om uw referenties op te slaan. Vervolgens hebt u vanuit uw code toegang tot de omgevingsvariabelen om uw toepassing te verifiëren. Gebruik voor productie een veiligere manier om uw referenties op te slaan en te openen.
Belangrijk
We raden Microsoft Entra ID-verificatie aan met beheerde identiteiten voor Azure-resources om te voorkomen dat referenties worden opgeslagen met uw toepassingen die in de cloud worden uitgevoerd.
Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.
Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.
Als u de omgevingsvariabelen voor uw Spraak-resourcesleutel en -regio wilt instellen, opent u een consolevenster en volgt u de instructies voor uw besturingssysteem en ontwikkelomgeving.
- Als u de
SPEECH_KEY
omgevingsvariabele wilt instellen, vervangt u uw sleutel door een van de sleutels voor uw resource. - Als u de
SPEECH_REGION
omgevingsvariabele wilt instellen, vervangt u uw regio door een van de regio's voor uw resource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Notitie
Als u alleen toegang nodig hebt tot de omgevingsvariabelen in de huidige console, kunt u de omgevingsvariabele instellen in set
plaats van setx
.
Nadat u de omgevingsvariabelen hebt toegevoegd, moet u mogelijk alle programma's opnieuw opstarten die de omgevingsvariabelen moeten lezen, inclusief het consolevenster. Als u Bijvoorbeeld Visual Studio als editor gebruikt, start u Visual Studio opnieuw voordat u het voorbeeld uitvoert.
Spraak herkennen met een microfoon
Volg deze stappen om een consoletoepassing te maken voor spraakherkenning.
Maak een nieuw bestand met de naam SpeechRecognition.java in dezelfde hoofdmap van het project.
Kopieer de volgende code naar 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); } }
Als u de taal voor spraakherkenning wilt wijzigen, vervangt u deze door
en-US
een andere ondersteunde taal. Gebruik bijvoorbeeldes-ES
voor Spaans (Spanje). Als u geen taal opgeeft, is de standaardwaardeen-US
. Zie Taalidentificatie voor meer informatie over het identificeren van een van meerdere talen die kunnen worden gesproken.Voer de nieuwe consoletoepassing uit om spraakherkenning vanaf een microfoon te starten:
javac SpeechRecognition.java -cp ".;target\dependency\*" java -cp ".;target\dependency\*" SpeechRecognition
Belangrijk
Zorg ervoor dat u de
SPEECH_KEY
enSPEECH_REGION
omgevingsvariabelen instelt. Als u deze variabelen niet instelt, mislukt het voorbeeld met een foutbericht.Spreek in uw microfoon wanneer u hierom wordt gevraagd. Wat u spreekt, moet worden weergegeven als tekst:
Speak into your microphone. RECOGNIZED: Text=I'm excited to try speech to text.
Opmerkingen
Hier volgen enkele andere overwegingen:
In dit voorbeeld wordt de
RecognizeOnceAsync
bewerking gebruikt om utterances van maximaal 30 seconden te transcriberen of totdat stilte wordt gedetecteerd. Zie Spraak herkennen voor informatie over continue herkenning voor langere audio, inclusief meertalige gesprekken.Als u spraak uit een audiobestand wilt herkennen, gebruikt
fromWavFileInput
u in plaats vanfromDefaultMicrophoneInput
:AudioConfig audioConfig = AudioConfig.fromWavFileInput("YourAudioFile.wav");
Voor gecomprimeerde audiobestanden zoals MP4 installeert u GStreamer en gebruikt
PullAudioInputStream
ofPushAudioInputStream
. Zie Gecomprimeerde invoeraudio gebruiken voor meer informatie.
Resources opschonen
U kunt de Azure-portal of Azure CLI (Opdrachtregelinterface) gebruiken om de spraakresource te verwijderen die u hebt gemaakt.
Referentiedocumentatiepakket (npm) | Aanvullende voorbeelden in broncode van GitHub Library | |
In deze quickstart maakt en voert u een toepassing uit om spraak in realtime te herkennen en transcriberen naar tekst.
Als u in plaats daarvan audiobestanden asynchroon wilt transcriberen, raadpleegt u Wat is batchtranscriptie. Als u niet zeker weet welke spraak-naar-tekstoplossing geschikt is voor u, raadpleegt u Wat is spraak-naar-tekst?
Vereisten
- Een Azure-abonnement. U kunt er gratis een maken.
- Maak een spraakresource in Azure Portal.
- Haal de spraakresourcesleutel en -regio op. Nadat uw Spraak-resource is geïmplementeerd, selecteert u Ga naar de resource om sleutels weer te geven en te beheren.
U hebt ook een .wav audiobestand nodig op uw lokale computer. U kunt uw eigen .wav-bestand (maximaal 30 seconden) gebruiken of het https://crbn.us/whatstheweatherlike.wav voorbeeldbestand downloaden.
De omgeving instellen
Installeer de Speech SDK voor JavaScript om uw omgeving in te stellen. Voer deze opdracht uit: npm install microsoft-cognitiveservices-speech-sdk
. Zie De Speech SDK installeren voor instructies voor begeleide installatie.
Omgevingsvariabelen instellen
U moet uw toepassing verifiëren voor toegang tot Azure AI-services. In dit artikel leest u hoe u omgevingsvariabelen gebruikt om uw referenties op te slaan. Vervolgens hebt u vanuit uw code toegang tot de omgevingsvariabelen om uw toepassing te verifiëren. Gebruik voor productie een veiligere manier om uw referenties op te slaan en te openen.
Belangrijk
We raden Microsoft Entra ID-verificatie aan met beheerde identiteiten voor Azure-resources om te voorkomen dat referenties worden opgeslagen met uw toepassingen die in de cloud worden uitgevoerd.
Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.
Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.
Als u de omgevingsvariabelen voor uw Spraak-resourcesleutel en -regio wilt instellen, opent u een consolevenster en volgt u de instructies voor uw besturingssysteem en ontwikkelomgeving.
- Als u de
SPEECH_KEY
omgevingsvariabele wilt instellen, vervangt u uw sleutel door een van de sleutels voor uw resource. - Als u de
SPEECH_REGION
omgevingsvariabele wilt instellen, vervangt u uw regio door een van de regio's voor uw resource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Notitie
Als u alleen toegang nodig hebt tot de omgevingsvariabelen in de huidige console, kunt u de omgevingsvariabele instellen in set
plaats van setx
.
Nadat u de omgevingsvariabelen hebt toegevoegd, moet u mogelijk alle programma's opnieuw opstarten die de omgevingsvariabelen moeten lezen, inclusief het consolevenster. Als u Bijvoorbeeld Visual Studio als editor gebruikt, start u Visual Studio opnieuw voordat u het voorbeeld uitvoert.
Spraak herkennen uit een bestand
Tip
Probeer de Azure AI Speech Toolkit uit om eenvoudig voorbeelden te bouwen en uit te voeren in Visual Studio Code.
Volg deze stappen om een Node.js consoletoepassing voor spraakherkenning te maken.
Open een opdrachtpromptvenster waarin u het nieuwe project wilt opnemen en maak een nieuw bestand met de naam SpeechRecognition.js.
Installeer de Speech SDK voor JavaScript:
npm install microsoft-cognitiveservices-speech-sdk
Kopieer de volgende code naar 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();
Vervang in SpeechRecognition.js YourAudioFile.wav door uw eigen .wav-bestand. In dit voorbeeld wordt alleen spraak herkend uit een .wav-bestand . Zie Gecomprimeerde invoeraudio gebruiken voor informatie over andere audio-indelingen. Dit voorbeeld ondersteunt maximaal 30 seconden audio.
Als u de taal voor spraakherkenning wilt wijzigen, vervangt u deze door
en-US
een andere ondersteunde taal. Gebruik bijvoorbeeldes-ES
voor Spaans (Spanje). Als u geen taal opgeeft, is de standaardwaardeen-US
. Zie Taalidentificatie voor meer informatie over het identificeren van een van meerdere talen die kunnen worden gesproken.Voer de nieuwe consoletoepassing uit om spraakherkenning vanuit een bestand te starten:
node.exe SpeechRecognition.js
Belangrijk
Zorg ervoor dat u de
SPEECH_KEY
enSPEECH_REGION
omgevingsvariabelen instelt. Als u deze variabelen niet instelt, mislukt het voorbeeld met een foutbericht.De spraak uit het audiobestand moet als tekst worden uitgevoerd:
RECOGNIZED: Text=I'm excited to try speech to text.
Opmerkingen
In dit voorbeeld wordt de recognizeOnceAsync
bewerking gebruikt om utterances van maximaal 30 seconden te transcriberen of totdat stilte wordt gedetecteerd. Zie Spraak herkennen voor informatie over continue herkenning voor langere audio, inclusief meertalige gesprekken.
Notitie
Spraak herkennen vanaf een microfoon wordt niet ondersteund in Node.js. Dit wordt alleen ondersteund in een javaScript-omgeving in een browser. Zie het React-voorbeeld en de implementatie van spraak naar tekst vanuit een microfoon op GitHub voor meer informatie.
Het React-voorbeeld toont ontwerppatronen voor de uitwisseling en het beheer van verificatietokens. Ook wordt de opname van audio van een microfoon of bestand voor spraak-naar-tekstconversies weergegeven.
Resources opschonen
U kunt de Azure-portal of Azure CLI (Opdrachtregelinterface) gebruiken om de spraakresource te verwijderen die u hebt gemaakt.
Referentiedocumentatiepakket (PyPi) | Aanvullende voorbeelden op GitHub |
In deze quickstart maakt en voert u een toepassing uit om spraak in realtime te herkennen en transcriberen naar tekst.
Als u in plaats daarvan audiobestanden asynchroon wilt transcriberen, raadpleegt u Wat is batchtranscriptie. Als u niet zeker weet welke spraak-naar-tekstoplossing geschikt is voor u, raadpleegt u Wat is spraak-naar-tekst?
Vereisten
- Een Azure-abonnement. U kunt er gratis een maken.
- Maak een spraakresource in Azure Portal.
- Haal de spraakresourcesleutel en -regio op. Nadat uw Spraak-resource is geïmplementeerd, selecteert u Ga naar de resource om sleutels weer te geven en te beheren.
De omgeving instellen
De Speech SDK voor Python is beschikbaar als een PyPI-module (Python Package Index). De Speech SDK voor Python is compatibel met Windows, Linux en macOS.
- Voor Windows installeert u Microsoft Visual C++ Redistributable voor Visual Studio 2015, 2017, 2019 en 2022 voor uw platform. Als u dit pakket voor de eerste keer installeert, moet u mogelijk opnieuw opstarten.
- In Linux moet u de x64-doelarchitectuur gebruiken.
Installeer een versie van Python vanaf 3.7 of hoger. Zie De Speech SDK installeren voor andere vereisten.
Omgevingsvariabelen instellen
U moet uw toepassing verifiëren voor toegang tot Azure AI-services. In dit artikel leest u hoe u omgevingsvariabelen gebruikt om uw referenties op te slaan. Vervolgens hebt u vanuit uw code toegang tot de omgevingsvariabelen om uw toepassing te verifiëren. Gebruik voor productie een veiligere manier om uw referenties op te slaan en te openen.
Belangrijk
We raden Microsoft Entra ID-verificatie aan met beheerde identiteiten voor Azure-resources om te voorkomen dat referenties worden opgeslagen met uw toepassingen die in de cloud worden uitgevoerd.
Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.
Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.
Als u de omgevingsvariabelen voor uw Spraak-resourcesleutel en -regio wilt instellen, opent u een consolevenster en volgt u de instructies voor uw besturingssysteem en ontwikkelomgeving.
- Als u de
SPEECH_KEY
omgevingsvariabele wilt instellen, vervangt u uw sleutel door een van de sleutels voor uw resource. - Als u de
SPEECH_REGION
omgevingsvariabele wilt instellen, vervangt u uw regio door een van de regio's voor uw resource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Notitie
Als u alleen toegang nodig hebt tot de omgevingsvariabelen in de huidige console, kunt u de omgevingsvariabele instellen in set
plaats van setx
.
Nadat u de omgevingsvariabelen hebt toegevoegd, moet u mogelijk alle programma's opnieuw opstarten die de omgevingsvariabelen moeten lezen, inclusief het consolevenster. Als u Bijvoorbeeld Visual Studio als editor gebruikt, start u Visual Studio opnieuw voordat u het voorbeeld uitvoert.
Spraak herkennen met een microfoon
Tip
Probeer de Azure AI Speech Toolkit uit om eenvoudig voorbeelden te bouwen en uit te voeren in Visual Studio Code.
Volg deze stappen om een consoletoepassing te maken.
Open een opdrachtpromptvenster in de map waarin u het nieuwe project wilt opnemen. Maak een nieuw bestand met de naam speech_recognition.py.
Voer deze opdracht uit om de Speech SDK te installeren:
pip install azure-cognitiveservices-speech
Kopieer de volgende code naar 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()
Als u de taal voor spraakherkenning wilt wijzigen, vervangt u deze door
en-US
een andere ondersteunde taal. Gebruik bijvoorbeeldes-ES
voor Spaans (Spanje). Als u geen taal opgeeft, is de standaardwaardeen-US
. Zie taalidentificatie voor meer informatie over het identificeren van een van meerdere talen die kunnen worden gesproken.Voer de nieuwe consoletoepassing uit om spraakherkenning vanaf een microfoon te starten:
python speech_recognition.py
Belangrijk
Zorg ervoor dat u de
SPEECH_KEY
enSPEECH_REGION
omgevingsvariabelen instelt. Als u deze variabelen niet instelt, mislukt het voorbeeld met een foutbericht.Spreek in uw microfoon wanneer u hierom wordt gevraagd. Wat u spreekt, moet worden weergegeven als tekst:
Speak into your microphone. RECOGNIZED: Text=I'm excited to try speech to text.
Opmerkingen
Hier volgen enkele andere overwegingen:
In dit voorbeeld wordt de
recognize_once_async
bewerking gebruikt om utterances van maximaal 30 seconden te transcriberen of totdat stilte wordt gedetecteerd. Zie Spraak herkennen voor informatie over continue herkenning voor langere audio, inclusief meertalige gesprekken.Als u spraak uit een audiobestand wilt herkennen, gebruikt
filename
u in plaats vanuse_default_microphone
:audio_config = speechsdk.audio.AudioConfig(filename="YourAudioFile.wav")
Voor gecomprimeerde audiobestanden zoals MP4 installeert u GStreamer en gebruikt
PullAudioInputStream
ofPushAudioInputStream
. Zie Gecomprimeerde invoeraudio gebruiken voor meer informatie.
Resources opschonen
U kunt de Azure-portal of Azure CLI (Opdrachtregelinterface) gebruiken om de spraakresource te verwijderen die u hebt gemaakt.
Referentiedocumentatiepakket (download) | Aanvullende voorbeelden op GitHub |
In deze quickstart maakt en voert u een toepassing uit om spraak in realtime te herkennen en transcriberen naar tekst.
Als u in plaats daarvan audiobestanden asynchroon wilt transcriberen, raadpleegt u Wat is batchtranscriptie. Als u niet zeker weet welke spraak-naar-tekstoplossing geschikt is voor u, raadpleegt u Wat is spraak-naar-tekst?
Vereisten
- Een Azure-abonnement. U kunt er gratis een maken.
- Maak een spraakresource in Azure Portal.
- Haal de spraakresourcesleutel en -regio op. Nadat uw Spraak-resource is geïmplementeerd, selecteert u Ga naar de resource om sleutels weer te geven en te beheren.
De omgeving instellen
De Speech SDK voor Swift wordt gedistribueerd als een frameworkbundel. Het framework ondersteunt zowel Objective-C als Swift in zowel iOS als macOS.
De Speech SDK kan worden gebruikt in Xcode-projecten als een CocoaPod, of rechtstreeks en handmatig worden gedownload. In deze handleiding wordt gebruikgemaakt van een CocoaPod. Installeer het CocoaPod-afhankelijkheidsbeheer zoals beschreven in de installatie-instructies.
Omgevingsvariabelen instellen
U moet uw toepassing verifiëren voor toegang tot Azure AI-services. In dit artikel leest u hoe u omgevingsvariabelen gebruikt om uw referenties op te slaan. Vervolgens hebt u vanuit uw code toegang tot de omgevingsvariabelen om uw toepassing te verifiëren. Gebruik voor productie een veiligere manier om uw referenties op te slaan en te openen.
Belangrijk
We raden Microsoft Entra ID-verificatie aan met beheerde identiteiten voor Azure-resources om te voorkomen dat referenties worden opgeslagen met uw toepassingen die in de cloud worden uitgevoerd.
Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.
Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.
Als u de omgevingsvariabelen voor uw Spraak-resourcesleutel en -regio wilt instellen, opent u een consolevenster en volgt u de instructies voor uw besturingssysteem en ontwikkelomgeving.
- Als u de
SPEECH_KEY
omgevingsvariabele wilt instellen, vervangt u uw sleutel door een van de sleutels voor uw resource. - Als u de
SPEECH_REGION
omgevingsvariabele wilt instellen, vervangt u uw regio door een van de regio's voor uw resource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Notitie
Als u alleen toegang nodig hebt tot de omgevingsvariabelen in de huidige console, kunt u de omgevingsvariabele instellen in set
plaats van setx
.
Nadat u de omgevingsvariabelen hebt toegevoegd, moet u mogelijk alle programma's opnieuw opstarten die de omgevingsvariabelen moeten lezen, inclusief het consolevenster. Als u Bijvoorbeeld Visual Studio als editor gebruikt, start u Visual Studio opnieuw voordat u het voorbeeld uitvoert.
Spraak herkennen met een microfoon
Volg deze stappen om spraak te herkennen in een macOS-toepassing.
Kloon de opslagplaats Azure-Samples/cognitive-services-speech-sdk om de Recognize-spraak op te halen uit een microfoon in Swift in macOS-voorbeeldproject . De opslagplaats bevat ook iOS-voorbeelden.
Navigeer naar de map van de gedownloade voorbeeld-app (
helloworld
) in een terminal.Voer de opdracht
pod install
uit. Met deze opdracht wordt eenhelloworld.xcworkspace
Xcode-werkruimte gegenereerd die zowel de voorbeeld-app als de Speech SDK als een afhankelijkheid bevat.Open de werkruimte
helloworld.xcworkspace
in Xcode.Open het bestand met de naam AppDelegate.swift en zoek de
applicationDidFinishLaunching
enrecognizeFromMic
methoden zoals hier wordt weergegeven.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 } } }
Gebruik in AppDelegate.m de omgevingsvariabelen die u eerder hebt ingesteld voor uw Spraak-resourcesleutel en -regio.
sub = ProcessInfo.processInfo.environment["SPEECH_KEY"] region = ProcessInfo.processInfo.environment["SPEECH_REGION"]
Als u de taal voor spraakherkenning wilt wijzigen, vervangt u deze door
en-US
een andere ondersteunde taal. Gebruik bijvoorbeeldes-ES
voor Spaans (Spanje). Als u geen taal opgeeft, is de standaardwaardeen-US
. Zie Taalidentificatie voor meer informatie over het identificeren van een van meerdere talen die kunnen worden gesproken.Als u de uitvoer voor foutopsporing zichtbaar wilt maken, selecteert u Debug>Area>Activate Console weergeven.
Bouw en voer de voorbeeldcode uit door Productuitvoering> te selecteren in het menu of door de knop Afspelen te selecteren.
Belangrijk
Zorg ervoor dat u de
SPEECH_KEY
enSPEECH_REGION
omgevingsvariabelen instelt. Als u deze variabelen niet instelt, mislukt het voorbeeld met een foutbericht.
Nadat u de knop in de app hebt geselecteerd en een paar woorden hebt gezegd, ziet u de tekst die u op het onderste deel van het scherm hebt gesproken. Wanneer u de app voor het eerst uitvoert, wordt u gevraagd om de app toegang te geven tot de microfoon van uw computer.
Opmerkingen
In dit voorbeeld wordt de recognizeOnce
bewerking gebruikt om utterances van maximaal 30 seconden te transcriberen of totdat stilte wordt gedetecteerd. Zie Spraak herkennen voor informatie over continue herkenning voor langere audio, inclusief meertalige gesprekken.
Objective-C
De Speech SDK voor Objective-C deelt clientbibliotheken en referentiedocumentatie met de Speech SDK voor Swift. Zie de recognize speech van een microfoon in Objective-C in macOS-voorbeeldproject in GitHub voor voorbeelden van Objective-C-code.
Resources opschonen
U kunt de Azure-portal of Azure CLI (Opdrachtregelinterface) gebruiken om de spraakresource te verwijderen die u hebt gemaakt.
Spraak-naar-tekst-REST API-verwijzing Speech to text REST API voor korte audioverwijzing | Aanvullende voorbeelden op GitHub |
In deze quickstart maakt en voert u een toepassing uit om spraak in realtime te herkennen en transcriberen naar tekst.
Als u in plaats daarvan audiobestanden asynchroon wilt transcriberen, raadpleegt u Wat is batchtranscriptie. Als u niet zeker weet welke spraak-naar-tekstoplossing geschikt is voor u, raadpleegt u Wat is spraak-naar-tekst?
Vereisten
- Een Azure-abonnement. U kunt er gratis een maken.
- Maak een spraakresource in Azure Portal.
- Haal de spraakresourcesleutel en -regio op. Nadat uw Spraak-resource is geïmplementeerd, selecteert u Ga naar de resource om sleutels weer te geven en te beheren.
U hebt ook een .wav audiobestand nodig op uw lokale computer. U kunt uw eigen .wav-bestand tot 60 seconden gebruiken of het https://crbn.us/whatstheweatherlike.wav voorbeeldbestand downloaden.
Omgevingsvariabelen instellen
U moet uw toepassing verifiëren voor toegang tot Azure AI-services. In dit artikel leest u hoe u omgevingsvariabelen gebruikt om uw referenties op te slaan. Vervolgens hebt u vanuit uw code toegang tot de omgevingsvariabelen om uw toepassing te verifiëren. Gebruik voor productie een veiligere manier om uw referenties op te slaan en te openen.
Belangrijk
We raden Microsoft Entra ID-verificatie aan met beheerde identiteiten voor Azure-resources om te voorkomen dat referenties worden opgeslagen met uw toepassingen die in de cloud worden uitgevoerd.
Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.
Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.
Als u de omgevingsvariabelen voor uw Spraak-resourcesleutel en -regio wilt instellen, opent u een consolevenster en volgt u de instructies voor uw besturingssysteem en ontwikkelomgeving.
- Als u de
SPEECH_KEY
omgevingsvariabele wilt instellen, vervangt u uw sleutel door een van de sleutels voor uw resource. - Als u de
SPEECH_REGION
omgevingsvariabele wilt instellen, vervangt u uw regio door een van de regio's voor uw resource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Notitie
Als u alleen toegang nodig hebt tot de omgevingsvariabelen in de huidige console, kunt u de omgevingsvariabele instellen in set
plaats van setx
.
Nadat u de omgevingsvariabelen hebt toegevoegd, moet u mogelijk alle programma's opnieuw opstarten die de omgevingsvariabelen moeten lezen, inclusief het consolevenster. Als u Bijvoorbeeld Visual Studio als editor gebruikt, start u Visual Studio opnieuw voordat u het voorbeeld uitvoert.
Spraak herkennen uit een bestand
Open een consolevenster en voer de volgende cURL-opdracht uit. Vervang YourAudioFile.wav door het pad en de naam van het audiobestand.
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"
Belangrijk
Zorg ervoor dat u de SPEECH_KEY
en SPEECH_REGION
omgevingsvariabelen instelt. Als u deze variabelen niet instelt, mislukt het voorbeeld met een foutbericht.
U zou een antwoord moeten ontvangen dat lijkt op wat hier wordt weergegeven. Dit DisplayText
moet de tekst zijn die is herkend uit uw audiobestand. De opdracht herkent maximaal 60 seconden audio en converteert deze naar tekst.
{
"RecognitionStatus": "Success",
"DisplayText": "My voice is my passport, verify me.",
"Offset": 6600000,
"Duration": 32100000
}
Zie Speech to text REST API voor korte audio voor meer informatie.
Resources opschonen
U kunt de Azure-portal of Azure CLI (Opdrachtregelinterface) gebruiken om de spraakresource te verwijderen die u hebt gemaakt.
In deze quickstart maakt en voert u een toepassing uit om spraak in realtime te herkennen en transcriberen naar tekst.
Als u in plaats daarvan audiobestanden asynchroon wilt transcriberen, raadpleegt u Wat is batchtranscriptie. Als u niet zeker weet welke spraak-naar-tekstoplossing geschikt is voor u, raadpleegt u Wat is spraak-naar-tekst?
Vereisten
- Een Azure-abonnement. U kunt er gratis een maken.
- Maak een spraakresource in Azure Portal.
- Haal de spraakresourcesleutel en -regio op. Nadat uw Spraak-resource is geïmplementeerd, selecteert u Ga naar de resource om sleutels weer te geven en te beheren.
De omgeving instellen
Volg deze stappen en bekijk de quickstart voor Speech CLI voor andere vereisten voor uw platform.
Voer de volgende .NET CLI-opdracht uit om de Speech CLI te installeren:
dotnet tool install --global Microsoft.CognitiveServices.Speech.CLI
Voer de volgende opdrachten uit om uw Spraak-resourcesleutel en -regio te configureren. Vervang door
SUBSCRIPTION-KEY
uw Spraak-resourcesleutel en vervang deze doorREGION
de spraakresourceregio.spx config @key --set SUBSCRIPTION-KEY spx config @region --set REGION
Spraak herkennen met een microfoon
Voer de volgende opdracht uit om spraakherkenning vanaf een microfoon te starten:
spx recognize --microphone --source en-US
Praat in de microfoon en u ziet transcriptie van uw woorden in realtime. De Speech CLI stopt na een stilteperiode, 30 seconden of wanneer u Ctrl+C selecteert.
Connection CONNECTED... RECOGNIZED: I'm excited to try speech to text.
Opmerkingen
Hier volgen enkele andere overwegingen:
Als u spraak uit een audiobestand wilt herkennen, gebruikt
--file
u in plaats van--microphone
. Installeer GStreamer en gebruik--format
voor gecomprimeerde audiobestanden zoals MP4. Zie Gecomprimeerde invoeraudio gebruiken voor meer informatie.spx recognize --file YourAudioFile.wav spx recognize --file YourAudioFile.mp4 --format any
Gebruik een woordgroepenlijst om de nauwkeurigheid van herkenning van specifieke woorden of uitingen te verbeteren. U neemt een woordgroepenlijst in de regel op of met een tekstbestand, samen met de
recognize
opdracht:spx recognize --microphone --phrases "Contoso;Jessie;Rehaan;" spx recognize --microphone --phrases @phrases.txt
Als u de taal voor spraakherkenning wilt wijzigen, vervangt u deze door
en-US
een andere ondersteunde taal. Gebruik bijvoorbeeldes-ES
voor Spaans (Spanje). Als u geen taal opgeeft, is de standaardwaardeen-US
.spx recognize --microphone --source es-ES
Voor continue herkenning van audio die langer is dan 30 seconden, voegt u het volgende toe
--continuous
:spx recognize --microphone --source es-ES --continuous
Voer deze opdracht uit voor informatie over meer opties voor spraakherkenning, zoals bestandsinvoer en uitvoer:
spx help recognize
Resources opschonen
U kunt de Azure-portal of Azure CLI (Opdrachtregelinterface) gebruiken om de spraakresource te verwijderen die u hebt gemaakt.