Inicio rápido: Reconocimiento y conversión de voz en texto

Documentación de referenciaPaquete (NuGet)Ejemplos adicionales en GitHub

En este inicio rápido, ejecutará una aplicación para reconocer y transcribir la voz humana (lo que se suele conocer como conversión de voz en texto).

Sugerencia

Puede probar la conversión de voz en texto en Speech Studio sin registrarse ni escribir ningún código.

Prerrequisitos

Configuración del entorno

El SDK de Voz está disponible como paquete NuGet e implementa .NET Standard 2.0. La instalación del SDK de Voz se describe en una sección más adelante de esta guía; primero consulte la SDK installation guide, (guía de instalación del SDK), para conocer otros requisitos.

Establecimiento de variables de entorno

La aplicación debe autenticarse para acceder a los recursos de Cognitive Services. En el caso de producción, use una forma segura de almacenar sus credenciales y acceder a ellas. Por ejemplo, después de obtener una clave para Recurso de Voz, escríbala en una nueva variable de entorno en el equipo local que ejecuta la aplicación.

Sugerencia

No incluya la clave directamente en el código ni la exponga nunca públicamente. Consulte el artículo de seguridad de Cognitive Services para ver más opciones de autenticación, como Azure Key Vault.

Para establecer la variable de entorno para la clave de recurso de Voz, abra una ventana de consola y siga las instrucciones correspondientes a su sistema operativo y su entorno de desarrollo. Para establecer la variable de entorno SPEECH_KEY, reemplace your-key por una de las claves del recurso.

setx SPEECH_KEY your-key

Nota:

Si solo necesita acceder a la variable de entorno en la consola que se está ejecutando en este momento, puede establecer la variable de entorno con set en vez de con setx.

Después de agregar la variable de entorno, puede que tenga que reiniciar todos los programas en ejecución que necesiten leer la variable de entorno, incluida la ventana de consola. Por ejemplo, si usa Visual Studio como editor, reinícielo antes de ejecutar el ejemplo.

Para establecer la variable de entorno en la región de recursos de Voz, siga los mismos pasos. Establezca SPEECH_REGION en la región del recurso. Por ejemplo, westus.

Reconocimiento de voz a través de un micrófono

Siga estos pasos para crear una nueva aplicación de consola e instalar el SDK de Voz.

  1. Abra un símbolo del sistema donde quiera el nuevo proyecto y cree una aplicación de consola con la CLI de .NET. El archivo Program.cs debe crearse en el directorio del proyecto.

    dotnet new console
    
  2. Instale el SDK de Voz en el nuevo proyecto con la CLI de .NET.

    dotnet add package Microsoft.CognitiveServices.Speech
    
  3. Reemplace el contenido de Program.cs por el código siguiente.

    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. Para cambiar el idioma de reconocimiento de voz, reemplace en-US por otro en-US. Por ejemplo, es-ES para Español (España). El idioma predeterminado es en-US si no especifica un idioma. Para obtener más información sobre cómo identificar uno de los distintos idiomas que se pueden hablar, consulte Identificación del idioma.

Ejecute la nueva aplicación de consola para iniciar el reconocimiento de voz a través de un micrófono:

dotnet run

Importante

Asegúrese de establecer las variables de entorno SPEECH__KEY y SPEECH__REGION como se ha descrito anteriormente. Si no establece estas variables, se producirá un fallo en el ejemplo, con un mensaje de error.

Hable por el micrófono cuando se le solicite. Lo que diga debe devolverse como texto:

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

Notas

Ahora que ha completado el artículo de inicio rápido, estas son algunas consideraciones adicionales:

  • En este ejemplo se usa la operación RecognizeOnceAsync para transcribir expresiones de hasta 30 segundos, o hasta que se detecta el silencio. Para obtener información sobre el reconocimiento continuo de audio más largo, incluidas las conversaciones en varios idiomas, consulte Reconocimiento de voz.
  • Para reconocer la voz de un archivo de audio, use FromWavFileInput en lugar de FromDefaultMicrophoneInput:
    using var audioConfig = AudioConfig.FromWavFileInput("YourAudioFile.wav");
    
  • Para archivos de audio comprimidos como MP4, instale GStreamer y utilice PullAudioInputStream o PushAudioInputStream. Para más información, consulte Uso de entradas de audio comprimido.

Limpieza de recursos

Puede usar Azure Portal o la Interfaz de la línea de comandos (CLI) de Azure para quitar el recurso de Voz que creó.

Documentación de referenciaPaquete (NuGet)Ejemplos adicionales en GitHub

En este inicio rápido, ejecutará una aplicación para reconocer y transcribir la voz humana (lo que se suele conocer como conversión de voz en texto).

Sugerencia

Puede probar la conversión de voz en texto en Speech Studio sin registrarse ni escribir ningún código.

Prerrequisitos

Configuración del entorno

El SDK de Voz está disponible como paquete NuGet e implementa .NET Standard 2.0. La instalación del SDK de Voz se describe en una sección más adelante de esta guía; primero consulte la SDK installation guide, (guía de instalación del SDK), para conocer otros requisitos.

Establecimiento de variables de entorno

La aplicación debe autenticarse para acceder a los recursos de Cognitive Services. En el caso de producción, use una forma segura de almacenar sus credenciales y acceder a ellas. Por ejemplo, después de obtener una clave para Recurso de Voz, escríbala en una nueva variable de entorno en el equipo local que ejecuta la aplicación.

Sugerencia

No incluya la clave directamente en el código ni la exponga nunca públicamente. Consulte el artículo de seguridad de Cognitive Services para ver más opciones de autenticación, como Azure Key Vault.

Para establecer la variable de entorno para la clave de recurso de Voz, abra una ventana de consola y siga las instrucciones correspondientes a su sistema operativo y su entorno de desarrollo. Para establecer la variable de entorno SPEECH_KEY, reemplace your-key por una de las claves del recurso.

setx SPEECH_KEY your-key

Nota:

Si solo necesita acceder a la variable de entorno en la consola que se está ejecutando en este momento, puede establecer la variable de entorno con set en vez de con setx.

Después de agregar la variable de entorno, puede que tenga que reiniciar todos los programas en ejecución que necesiten leer la variable de entorno, incluida la ventana de consola. Por ejemplo, si usa Visual Studio como editor, reinícielo antes de ejecutar el ejemplo.

Para establecer la variable de entorno en la región de recursos de Voz, siga los mismos pasos. Establezca SPEECH_REGION en la región del recurso. Por ejemplo, westus.

Reconocimiento de voz a través de un micrófono

Siga estos pasos para crear una nueva aplicación de consola e instalar el SDK de Voz.

  1. Cree un proyecto de consola de C++ en Visual Studio.

  2. Instale el SDK de Voz en el nuevo proyecto con el administrador de paquetes NuGet.

    Install-Package Microsoft.CognitiveServices.Speech
    
  3. Reemplace el contenido de main.cpp por el código siguiente:

    #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 recognizer = SpeechRecognizer::FromConfig(speechConfig, audioConfig);
    
        std::cout << "Speak into your microphone.\n";
        auto result = recognizer->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. Para cambiar el idioma de reconocimiento de voz, reemplace en-US por otro en-US. Por ejemplo, es-ES para Español (España). El idioma predeterminado es en-US si no especifica un idioma. Para obtener más información sobre cómo identificar uno de los distintos idiomas que se pueden hablar, consulte Identificación del idioma.

Compile y ejecute la nueva aplicación de consola para iniciar el reconocimiento de voz a través de un micrófono.

Importante

Asegúrese de establecer las variables de entorno SPEECH__KEY y SPEECH__REGION como se ha descrito anteriormente. Si no establece estas variables, se producirá un fallo en el ejemplo, con un mensaje de error.

Hable por el micrófono cuando se le solicite. Lo que diga debe devolverse como texto:

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

Notas

Ahora que ha completado el artículo de inicio rápido, estas son algunas consideraciones adicionales:

  • En este ejemplo se usa la operación RecognizeOnceAsync para transcribir expresiones de hasta 30 segundos, o hasta que se detecta el silencio. Para obtener información sobre el reconocimiento continuo de audio más largo, incluidas las conversaciones en varios idiomas, consulte Reconocimiento de voz.
  • Para reconocer la voz de un archivo de audio, use FromWavFileInput en lugar de FromDefaultMicrophoneInput:
    auto audioInput = AudioConfig::FromWavFileInput("YourAudioFile.wav");
    
  • Para archivos de audio comprimidos como MP4, instale GStreamer y utilice PullAudioInputStream o PushAudioInputStream. Para más información, consulte Uso de entradas de audio comprimido.

Limpieza de recursos

Puede usar Azure Portal o la Interfaz de la línea de comandos (CLI) de Azure para quitar el recurso de Voz que creó.

Documentación de referenciaPaquete (Go)Ejemplos adicionales en GitHub

En este inicio rápido, ejecutará una aplicación para reconocer y transcribir la voz humana (lo que se suele conocer como conversión de voz en texto).

Sugerencia

Puede probar la conversión de voz en texto en Speech Studio sin registrarse ni escribir ningún código.

Prerrequisitos

Configuración del entorno

Instale el SDK de Voz para Go. Consulte la guía de instalación del SDK para conocer más requisitos.

Establecimiento de variables de entorno

La aplicación debe autenticarse para acceder a los recursos de Cognitive Services. En el caso de producción, use una forma segura de almacenar sus credenciales y acceder a ellas. Por ejemplo, después de obtener una clave para Recurso de Voz, escríbala en una nueva variable de entorno en el equipo local que ejecuta la aplicación.

Sugerencia

No incluya la clave directamente en el código ni la exponga nunca públicamente. Consulte el artículo de seguridad de Cognitive Services para ver más opciones de autenticación, como Azure Key Vault.

Para establecer la variable de entorno para la clave de recurso de Voz, abra una ventana de consola y siga las instrucciones correspondientes a su sistema operativo y su entorno de desarrollo. Para establecer la variable de entorno SPEECH_KEY, reemplace your-key por una de las claves del recurso.

setx SPEECH_KEY your-key

Nota:

Si solo necesita acceder a la variable de entorno en la consola que se está ejecutando en este momento, puede establecer la variable de entorno con set en vez de con setx.

Después de agregar la variable de entorno, puede que tenga que reiniciar todos los programas en ejecución que necesiten leer la variable de entorno, incluida la ventana de consola. Por ejemplo, si usa Visual Studio como editor, reinícielo antes de ejecutar el ejemplo.

Para establecer la variable de entorno en la región de recursos de Voz, siga los mismos pasos. Establezca SPEECH_REGION en la región del recurso. Por ejemplo, westus.

Reconocimiento de voz a través de un micrófono

Siga estos pasos para crear un nuevo módulo de GO.

  1. Abra un símbolo del sistema donde quiera el nuevo módulo y cree un archivo llamado speech-recognition.go.

  2. Copie el siguiente código en 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')
    }
    

Ejecute los siguientes comandos para crear un archivo go.mod que vincule a los componentes hospedados en GitHub:

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

Importante

Asegúrese de establecer las variables de entorno SPEECH__KEY y SPEECH__REGION como se ha descrito anteriormente. Si no establece estas variables, se producirá un fallo en el ejemplo, con un mensaje de error.

Compile y ejecute ahora el código:

go build
go run speech-recognition

Limpieza de recursos

Puede usar Azure Portal o la Interfaz de la línea de comandos (CLI) de Azure para quitar el recurso de Voz que creó.

Documentación de referencia | Ejemplos adicionales en GitHub

En este inicio rápido, ejecutará una aplicación para reconocer y transcribir la voz humana (lo que se suele conocer como conversión de voz en texto).

Sugerencia

Puede probar la conversión de voz en texto en Speech Studio sin registrarse ni escribir ningún código.

Prerrequisitos

Configuración del entorno

En primer lugar, deberá instalar el SDK de Voz. El ejemplo de esta guía de inicio rápido funciona con el entorno de ejecución de Java.

  1. Instalación de Apache Maven
  2. Cree un nuevo archivo pom.xml en la raíz del proyecto y copie lo siguiente en él:
    <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>
        <repositories>
            <repository>
            <id>maven-cognitiveservices-speech</id>
            <name>Microsoft Cognitive Services Speech Maven Repository</name>
            <url>https://azureai.azureedge.net/maven/</url>
            </repository>
        </repositories>
        <dependencies>
            <dependency>
            <groupId>com.microsoft.cognitiveservices.speech</groupId>
            <artifactId>client-sdk</artifactId>
            <version>1.23.0</version>
            </dependency>
        </dependencies>
    </project>
    
  3. Instale el SDK de Voz y las dependencias.
    mvn clean dependency:copy-dependencies
    

Establecimiento de variables de entorno

La aplicación debe autenticarse para acceder a los recursos de Cognitive Services. En el caso de producción, use una forma segura de almacenar sus credenciales y acceder a ellas. Por ejemplo, después de obtener una clave para Recurso de Voz, escríbala en una nueva variable de entorno en el equipo local que ejecuta la aplicación.

Sugerencia

No incluya la clave directamente en el código ni la exponga nunca públicamente. Consulte el artículo de seguridad de Cognitive Services para ver más opciones de autenticación, como Azure Key Vault.

Para establecer la variable de entorno para la clave de recurso de Voz, abra una ventana de consola y siga las instrucciones correspondientes a su sistema operativo y su entorno de desarrollo. Para establecer la variable de entorno SPEECH_KEY, reemplace your-key por una de las claves del recurso.

setx SPEECH_KEY your-key

Nota:

Si solo necesita acceder a la variable de entorno en la consola que se está ejecutando en este momento, puede establecer la variable de entorno con set en vez de con setx.

Después de agregar la variable de entorno, puede que tenga que reiniciar todos los programas en ejecución que necesiten leer la variable de entorno, incluida la ventana de consola. Por ejemplo, si usa Visual Studio como editor, reinícielo antes de ejecutar el ejemplo.

Para establecer la variable de entorno en la región de recursos de Voz, siga los mismos pasos. Establezca SPEECH_REGION en la región del recurso. Por ejemplo, westus.

Reconocimiento de voz a través de un micrófono

Siga estos pasos para crear una nueva aplicación de consola para el reconocimiento de voz.

  1. Cree un nuevo archivo denominado SpeechRecognition.java en el mismo directorio raíz del proyecto.

  2. Copie el siguiente código en 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. Para cambiar el idioma de reconocimiento de voz, reemplace en-US por otro en-US. Por ejemplo, es-ES para Español (España). El idioma predeterminado es en-US si no especifica un idioma. Para obtener más información sobre cómo identificar uno de los distintos idiomas que se pueden hablar, consulte Identificación del idioma.

Ejecute la nueva aplicación de consola para iniciar el reconocimiento de voz a través de un micrófono:

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

Importante

Asegúrese de establecer las variables de entorno SPEECH__KEY y SPEECH__REGION como se ha descrito anteriormente. Si no establece estas variables, se producirá un fallo en el ejemplo, con un mensaje de error.

Hable por el micrófono cuando se le solicite. Lo que diga debe devolverse como texto:

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

Notas

Ahora que ha completado el artículo de inicio rápido, estas son algunas consideraciones adicionales:

  • En este ejemplo se usa la operación RecognizeOnceAsync para transcribir expresiones de hasta 30 segundos, o hasta que se detecta el silencio. Para obtener información sobre el reconocimiento continuo de audio más largo, incluidas las conversaciones en varios idiomas, consulte Reconocimiento de voz.
  • Para reconocer la voz de un archivo de audio, use fromWavFileInput en lugar de fromDefaultMicrophoneInput:
    AudioConfig audioConfig = AudioConfig.fromWavFileInput("YourAudioFile.wav");
    
  • Para archivos de audio comprimidos como MP4, instale GStreamer y utilice PullAudioInputStream o PushAudioInputStream. Para más información, consulte Uso de entradas de audio comprimido.

Limpieza de recursos

Puede usar Azure Portal o la Interfaz de la línea de comandos (CLI) de Azure para quitar el recurso de Voz que creó.

Documentación de referenciaPaquete (npm)Ejemplos adicionales en GitHubCódigo fuente de la biblioteca

En este inicio rápido, ejecutará una aplicación para reconocer y transcribir la voz humana (lo que se suele conocer como conversión de voz en texto).

Sugerencia

Puede probar la conversión de voz en texto en Speech Studio sin registrarse ni escribir ningún código.

Prerrequisitos

También necesitará un archivo de audio .wav en el equipo local. Puede usar su propio archivo .wav (hasta 30 segundos) o descargar el archivo de ejemplo https://crbn.us/whatstheweatherlike.wav.

Configuración del entorno

En primer lugar, deberá instalar el SDK de Voz para JavaScript. Si solo desea el nombre del paquete que se va a instalar, ejecute npm install microsoft-cognitiveservices-speech-sdk. Para obtener instrucciones de instalación guiadas, consulte la guía de instalación del SDK.

Establecimiento de variables de entorno

La aplicación debe autenticarse para acceder a los recursos de Cognitive Services. En el caso de producción, use una forma segura de almacenar sus credenciales y acceder a ellas. Por ejemplo, después de obtener una clave para Recurso de Voz, escríbala en una nueva variable de entorno en el equipo local que ejecuta la aplicación.

Sugerencia

No incluya la clave directamente en el código ni la exponga nunca públicamente. Consulte el artículo de seguridad de Cognitive Services para ver más opciones de autenticación, como Azure Key Vault.

Para establecer la variable de entorno para la clave de recurso de Voz, abra una ventana de consola y siga las instrucciones correspondientes a su sistema operativo y su entorno de desarrollo. Para establecer la variable de entorno SPEECH_KEY, reemplace your-key por una de las claves del recurso.

setx SPEECH_KEY your-key

Nota:

Si solo necesita acceder a la variable de entorno en la consola que se está ejecutando en este momento, puede establecer la variable de entorno con set en vez de con setx.

Después de agregar la variable de entorno, puede que tenga que reiniciar todos los programas en ejecución que necesiten leer la variable de entorno, incluida la ventana de consola. Por ejemplo, si usa Visual Studio como editor, reinícielo antes de ejecutar el ejemplo.

Para establecer la variable de entorno en la región de recursos de Voz, siga los mismos pasos. Establezca SPEECH_REGION en la región del recurso. Por ejemplo, westus.

Reconocer la voz a partir de un archivo

Siga estos pasos para crear una aplicación de consola de Node.js para el reconocimiento de voz.

  1. Abra un símbolo del sistema donde quiera el nuevo proyecto y cree un archivo llamado SpeechRecognition.js.

  2. Instale el SDK de voz para JavaScript:

    npm install microsoft-cognitiveservices-speech-sdk
    
  3. Copie el siguiente código en 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. En SpeechRecognition.js, reemplace YourAudioFile.wav por su propio archivo WAV. Este ejemplo solo reconoce la voz desde un archivo WAV. Para obtener información sobre otros formatos de audio, consulte Uso de entradas de audio comprimidas. Este ejemplo admite hasta 30 segundos de audio.

  5. Para cambiar el idioma de reconocimiento de voz, reemplace en-US por otro en-US. Por ejemplo, es-ES para Español (España). El idioma predeterminado es en-US si no especifica un idioma. Para obtener más información sobre cómo identificar uno de los distintos idiomas que se pueden hablar, consulte Identificación del idioma.

Ejecute la nueva aplicación de consola para iniciar el reconocimiento de voz desde un archivo:

node.exe SpeechRecognition.js

Importante

Asegúrese de establecer las variables de entorno SPEECH__KEY y SPEECH__REGION como se ha descrito anteriormente. Si no establece estas variables, se producirá un fallo en el ejemplo, con un mensaje de error.

La voz del archivo de audio debe devolverse como texto:

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

Notas

Ahora que ha completado el artículo de inicio rápido, estas son algunas consideraciones adicionales:

En este ejemplo se usa la operación recognizeOnceAsync para transcribir expresiones de hasta 30 segundos, o hasta que se detecta el silencio. Para obtener información sobre el reconocimiento continuo de audio más largo, incluidas las conversaciones en varios idiomas, consulte Reconocimiento de voz.

Nota:

No se admite el reconocimiento de voz a través de un micrófono en Node.js. Solo se admite en un entorno de JavaScript basado en explorador. Para obtener más información, consulte el ejemplo de React y la implementación de la conversión de voz en texto a través de un micrófono en GitHub. En el ejemplo de React se muestran patrones de diseño para el intercambio y la administración de tokens de autenticación. También se muestra la captura de audio desde un micrófono o un archivo para realizar conversiones de voz en texto.

Limpieza de recursos

Puede usar Azure Portal o la Interfaz de la línea de comandos (CLI) de Azure para quitar el recurso de Voz que creó.

Documentación de referenciaPaquete (Download)Ejemplos adicionales en GitHub

En este inicio rápido, ejecutará una aplicación para reconocer y transcribir la voz humana (lo que se suele conocer como conversión de voz en texto).

Sugerencia

Puede probar la conversión de voz en texto en Speech Studio sin registrarse ni escribir ningún código.

Prerrequisitos

Configuración del entorno

El SDK de Voz para Objective-C se distribuye como un paquete de marcos. El marco admite Objective-C y Swift en iOS y macOS.

El SDK de Voz se puede usar en proyectos de Xcode como CocoaPod o se puede descargar directamente aquí y vincular manualmente. En esta guía se usa CocoaPod. Instale el administrador de dependencias de CocoaPod como se describe en sus instrucciones de instalación.

Establecimiento de variables de entorno

La aplicación debe autenticarse para acceder a los recursos de Cognitive Services. En el caso de producción, use una forma segura de almacenar sus credenciales y acceder a ellas. Por ejemplo, después de obtener una clave para Recurso de Voz, escríbala en una nueva variable de entorno en el equipo local que ejecuta la aplicación.

Sugerencia

No incluya la clave directamente en el código ni la exponga nunca públicamente. Consulte el artículo de seguridad de Cognitive Services para ver más opciones de autenticación, como Azure Key Vault.

Para establecer la variable de entorno para la clave de recurso de Voz, abra una ventana de consola y siga las instrucciones correspondientes a su sistema operativo y su entorno de desarrollo. Para establecer la variable de entorno SPEECH_KEY, reemplace your-key por una de las claves del recurso.

setx SPEECH_KEY your-key

Nota:

Si solo necesita acceder a la variable de entorno en la consola que se está ejecutando en este momento, puede establecer la variable de entorno con set en vez de con setx.

Después de agregar la variable de entorno, puede que tenga que reiniciar todos los programas en ejecución que necesiten leer la variable de entorno, incluida la ventana de consola. Por ejemplo, si usa Visual Studio como editor, reinícielo antes de ejecutar el ejemplo.

Para establecer la variable de entorno en la región de recursos de Voz, siga los mismos pasos. Establezca SPEECH_REGION en la región del recurso. Por ejemplo, westus.

Reconocimiento de voz a través de un micrófono

Siga estos pasos para reconocer la voz en una aplicación de macOS.

  1. Clone el repositorio Azure-Samples/cognitive-services-speech-sdk para obtener el proyecto de ejemplo Reconocimiento de voz desde un micrófono en Objective-C en macOS. El repositorio también tiene ejemplos de iOS.

  2. Vaya al directorio de la aplicación de ejemplo descargada (helloworld) en un terminal.

  3. Ejecute el comando pod install. Se genera un área de trabajo de Xcode helloworld.xcworkspace que contiene la aplicación de ejemplo y el SDK de Voz como dependencia.

  4. Abra el área de trabajo helloworld.xcworkspace en Xcode.

  5. Abra el archivo llamado AppDelegate.m y busque el método buttonPressed, tal como se muestra aquí.

    - (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. En AppDelegate.m, use las variables de entorno que estableció anteriormente en la clave de recurso de Voz y en la región.

    NSString *speechKey = [[[NSProcessInfo processInfo] environment] objectForKey:@"SPEECH_KEY"];
    NSString *serviceRegion = [[[NSProcessInfo processInfo] environment] objectForKey:@"SPEECH_REGION"];
    
  7. Para cambiar el idioma de reconocimiento de voz, reemplace en-US por otro en-US. Por ejemplo, es-ES para Español (España). El idioma predeterminado es en-US si no especifica un idioma. Para obtener más información sobre cómo identificar uno de los distintos idiomas que se pueden hablar, consulte Identificación del idioma.

  8. Haga visible la salida de depuración (VerÁrea de depuraciónActivar consola).

  9. Para compilar y ejecutar el código de ejemplo, seleccione Producto>Ejecutar en el menú o seleccione el botón Reproducir.

Importante

Asegúrese de establecer las variables de entorno SPEECH__KEY y SPEECH__REGION como se ha descrito anteriormente. Si no establece estas variables, se producirá un fallo en el ejemplo, con un mensaje de error.

Después de seleccionar el botón de la aplicación y decir algunas palabras, verá el texto que ha dicho en la parte inferior de la pantalla. Al ejecutar la aplicación por primera vez, se le solicitará que proporcione a la aplicación acceso al micrófono del equipo.

Notas

Ahora que ha completado el artículo de inicio rápido, estas son algunas consideraciones adicionales:

  • En este ejemplo se usa la operación recognizeOnce para transcribir expresiones de hasta 30 segundos, o hasta que se detecta el silencio. Para obtener información sobre el reconocimiento continuo de audio más largo, incluidas las conversaciones en varios idiomas, consulte Reconocimiento de voz.
  • Para reconocer la voz de un archivo de audio, use initWithWavFileInput en lugar de initWithMicrophone:
    SPXAudioConfiguration *audioConfig = [[SPXAudioConfiguration alloc] initWithWavFileInput:YourAudioFile];
    

Limpieza de recursos

Puede usar Azure Portal o la Interfaz de la línea de comandos (CLI) de Azure para quitar el recurso de Voz que creó.

Documentación de referenciaPaquete (Download)Ejemplos adicionales en GitHub

En este inicio rápido, ejecutará una aplicación para reconocer y transcribir la voz humana (lo que se suele conocer como conversión de voz en texto).

Sugerencia

Puede probar la conversión de voz en texto en Speech Studio sin registrarse ni escribir ningún código.

Prerrequisitos

Configuración del entorno

El SDK de Voz para Swift se distribuye como un paquete de marcos. El marco admite Objective-C y Swift en iOS y macOS.

El SDK de Voz se puede usar en proyectos de Xcode como CocoaPod o se puede descargar directamente aquí y vincular manualmente. En esta guía se usa CocoaPod. Instale el administrador de dependencias de CocoaPod como se describe en sus instrucciones de instalación.

Establecimiento de variables de entorno

La aplicación debe autenticarse para acceder a los recursos de Cognitive Services. En el caso de producción, use una forma segura de almacenar sus credenciales y acceder a ellas. Por ejemplo, después de obtener una clave para Recurso de Voz, escríbala en una nueva variable de entorno en el equipo local que ejecuta la aplicación.

Sugerencia

No incluya la clave directamente en el código ni la exponga nunca públicamente. Consulte el artículo de seguridad de Cognitive Services para ver más opciones de autenticación, como Azure Key Vault.

Para establecer la variable de entorno para la clave de recurso de Voz, abra una ventana de consola y siga las instrucciones correspondientes a su sistema operativo y su entorno de desarrollo. Para establecer la variable de entorno SPEECH_KEY, reemplace your-key por una de las claves del recurso.

setx SPEECH_KEY your-key

Nota:

Si solo necesita acceder a la variable de entorno en la consola que se está ejecutando en este momento, puede establecer la variable de entorno con set en vez de con setx.

Después de agregar la variable de entorno, puede que tenga que reiniciar todos los programas en ejecución que necesiten leer la variable de entorno, incluida la ventana de consola. Por ejemplo, si usa Visual Studio como editor, reinícielo antes de ejecutar el ejemplo.

Para establecer la variable de entorno en la región de recursos de Voz, siga los mismos pasos. Establezca SPEECH_REGION en la región del recurso. Por ejemplo, westus.

Reconocimiento de voz a través de un micrófono

Siga estos pasos para reconocer la voz en una aplicación de macOS.

  1. Clone el repositorio Azure-Samples/cognitive-services-speech-sdk para obtener el proyecto de ejemplo Reconocimiento de voz desde un micrófono en Swift en macOS. El repositorio también tiene ejemplos de iOS.

  2. Vaya al directorio de la aplicación de ejemplo descargada (helloworld) en un terminal.

  3. Ejecute el comando pod install. Se genera un área de trabajo de Xcode helloworld.xcworkspace que contiene la aplicación de ejemplo y el SDK de Voz como dependencia.

  4. Abra el área de trabajo helloworld.xcworkspace en Xcode.

  5. Abra el archivo llamado AppDelegate.swift y busque los métodos applicationDidFinishLaunching y recognizeFromMic, tal como se muestra aquí.

    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. En AppDelegate.m, use las variables de entorno que estableció anteriormente en la clave de recurso de Voz y en la región.

    sub = ProcessInfo.processInfo.environment["SPEECH_KEY"]
    region = ProcessInfo.processInfo.environment["SPEECH_REGION"]
    
  7. Para cambiar el idioma de reconocimiento de voz, reemplace en-US por otro en-US. Por ejemplo, es-ES para Español (España). El idioma predeterminado es en-US si no especifica un idioma. Para obtener más información sobre cómo identificar uno de los distintos idiomas que se pueden hablar, consulte Identificación del idioma.

  8. Haga visible la salida de depuración; para ello, seleccione ViewDebug AreaActivate Console (Ver > Área de depuración > Activar consola).

  9. Para compilar y ejecutar el código de ejemplo, seleccione Producto>Ejecutar en el menú o seleccione el botón Reproducir.

Importante

Asegúrese de establecer las variables de entorno SPEECH__KEY y SPEECH__REGION como se ha descrito anteriormente. Si no establece estas variables, se producirá un fallo en el ejemplo, con un mensaje de error.

Después de seleccionar el botón de la aplicación y decir algunas palabras, verá el texto que ha dicho en la parte inferior de la pantalla. Al ejecutar la aplicación por primera vez, se le solicitará que proporcione a la aplicación acceso al micrófono del equipo.

Notas

Ahora que ha completado el artículo de inicio rápido, estas son algunas consideraciones adicionales:

En este ejemplo se usa la operación recognizeOnce para transcribir expresiones de hasta 30 segundos, o hasta que se detecta el silencio. Para obtener información sobre el reconocimiento continuo de audio más largo, incluidas las conversaciones en varios idiomas, consulte Reconocimiento de voz.

Limpieza de recursos

Puede usar Azure Portal o la Interfaz de la línea de comandos (CLI) de Azure para quitar el recurso de Voz que creó.

Documentación de referenciaPaquete (PyPi)Ejemplos adicionales en GitHub

En este inicio rápido, ejecutará una aplicación para reconocer y transcribir la voz humana (lo que se suele conocer como conversión de voz en texto).

Sugerencia

Puede probar la conversión de voz en texto en Speech Studio sin registrarse ni escribir ningún código.

Prerrequisitos

Configuración del entorno

El SDK de Voz para Python está disponible como módulo de índice de paquetes de Python (PyPI). El SDK de Voz para Python es compatible con Windows, Linux y macOS.

Instale una versión de Python entre la 3.7 y la 3.10. Primero consulte la guía de instalación del SDK para conocer más requisitos.

Establecimiento de variables de entorno

La aplicación debe autenticarse para acceder a los recursos de Cognitive Services. En el caso de producción, use una forma segura de almacenar sus credenciales y acceder a ellas. Por ejemplo, después de obtener una clave para Recurso de Voz, escríbala en una nueva variable de entorno en el equipo local que ejecuta la aplicación.

Sugerencia

No incluya la clave directamente en el código ni la exponga nunca públicamente. Consulte el artículo de seguridad de Cognitive Services para ver más opciones de autenticación, como Azure Key Vault.

Para establecer la variable de entorno para la clave de recurso de Voz, abra una ventana de consola y siga las instrucciones correspondientes a su sistema operativo y su entorno de desarrollo. Para establecer la variable de entorno SPEECH_KEY, reemplace your-key por una de las claves del recurso.

setx SPEECH_KEY your-key

Nota:

Si solo necesita acceder a la variable de entorno en la consola que se está ejecutando en este momento, puede establecer la variable de entorno con set en vez de con setx.

Después de agregar la variable de entorno, puede que tenga que reiniciar todos los programas en ejecución que necesiten leer la variable de entorno, incluida la ventana de consola. Por ejemplo, si usa Visual Studio como editor, reinícielo antes de ejecutar el ejemplo.

Para establecer la variable de entorno en la región de recursos de Voz, siga los mismos pasos. Establezca SPEECH_REGION en la región del recurso. Por ejemplo, westus.

Reconocimiento de voz a través de un micrófono

Siga estos pasos para crear una nueva aplicación de consola.

  1. Abra un símbolo del sistema donde quiera el nuevo proyecto y cree un archivo llamado speech_recognition.py.

  2. Ejecute este comando para instalar el SDK de voz:

    pip install azure-cognitiveservices-speech
    
  3. Copie el siguiente código en 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. Para cambiar el idioma de reconocimiento de voz, reemplace en-US por otro en-US. Por ejemplo, es-ES para Español (España). El idioma predeterminado es en-US si no especifica un idioma. Para obtener más información sobre cómo identificar uno de los distintos idiomas que se pueden hablar, consulte Identificación del idioma.

Ejecute la nueva aplicación de consola para iniciar el reconocimiento de voz a través de un micrófono:

python speech_recognition.py

Importante

Asegúrese de establecer las variables de entorno SPEECH__KEY y SPEECH__REGION como se ha descrito anteriormente. Si no establece estas variables, se producirá un fallo en el ejemplo, con un mensaje de error.

Hable por el micrófono cuando se le solicite. Lo que diga debe devolverse como texto:

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

Notas

Ahora que ha completado el artículo de inicio rápido, estas son algunas consideraciones adicionales:

  • En este ejemplo se usa la operación recognize_once_async para transcribir expresiones de hasta 30 segundos, o hasta que se detecta el silencio. Para obtener información sobre el reconocimiento continuo de audio más largo, incluidas las conversaciones en varios idiomas, consulte Reconocimiento de voz.
  • Para reconocer la voz de un archivo de audio, use filename en lugar de use_default_microphone:
    audio_config = speechsdk.audio.AudioConfig(filename="YourAudioFile.wav")
    
  • Para archivos de audio comprimidos como MP4, instale GStreamer y utilice PullAudioInputStream o PushAudioInputStream. Para más información, consulte Uso de entradas de audio comprimido.

Limpieza de recursos

Puede usar Azure Portal o la Interfaz de la línea de comandos (CLI) de Azure para quitar el recurso de Voz que creó.

Referencia de la API de REST en la conversión de voz en texto | Referencia de la API de REST en la conversión de voz en texto para audios breves | Ejemplos adicionales sobre GitHub

En este inicio rápido, ejecutará una aplicación para reconocer y transcribir la voz humana (lo que se suele conocer como conversión de voz en texto).

Sugerencia

Puede probar la conversión de voz en texto en Speech Studio sin registrarse ni escribir ningún código.

Prerrequisitos

También necesitará un archivo de audio .wav en el equipo local. Puede usar su propio archivo .wav (hasta 30 segundos) o descargar el archivo de ejemplo https://crbn.us/whatstheweatherlike.wav.

Establecimiento de variables de entorno

La aplicación debe autenticarse para acceder a los recursos de Cognitive Services. En el caso de producción, use una forma segura de almacenar sus credenciales y acceder a ellas. Por ejemplo, después de obtener una clave para Recurso de Voz, escríbala en una nueva variable de entorno en el equipo local que ejecuta la aplicación.

Sugerencia

No incluya la clave directamente en el código ni la exponga nunca públicamente. Consulte el artículo de seguridad de Cognitive Services para ver más opciones de autenticación, como Azure Key Vault.

Para establecer la variable de entorno para la clave de recurso de Voz, abra una ventana de consola y siga las instrucciones correspondientes a su sistema operativo y su entorno de desarrollo. Para establecer la variable de entorno SPEECH_KEY, reemplace your-key por una de las claves del recurso.

setx SPEECH_KEY your-key

Nota:

Si solo necesita acceder a la variable de entorno en la consola que se está ejecutando en este momento, puede establecer la variable de entorno con set en vez de con setx.

Después de agregar la variable de entorno, puede que tenga que reiniciar todos los programas en ejecución que necesiten leer la variable de entorno, incluida la ventana de consola. Por ejemplo, si usa Visual Studio como editor, reinícielo antes de ejecutar el ejemplo.

Para establecer la variable de entorno en la región de recursos de Voz, siga los mismos pasos. Establezca SPEECH_REGION en la región del recurso. Por ejemplo, westus.

Reconocer la voz a partir de un archivo

En un símbolo del sistema, ejecute el siguiente comando cURL. Reemplace YourAudioFile.wav por la ruta y el nombre del archivo de audio.

audio_file=@'YourAudioFile.wav'

curl --location --request POST \
"https://${SPEECH_REGION}.stt.speech.microsoft.com/speech/recognition/conversation/cognitiveservices/v1?language=en-US" \
--header "Ocp-Apim-Subscription-Key: ${SPEECH_KEY}" \
--header "Content-Type: audio/wav" \
--data-binary $audio_file

Importante

Asegúrese de establecer las variables de entorno SPEECH__KEY y SPEECH__REGION como se ha descrito anteriormente. Si no establece estas variables, se producirá un fallo en el ejemplo, con un mensaje de error.

Debería recibir una respuesta similar a la que se muestra aquí. DisplayText debe ser el texto que se reconoció desde el archivo de audio. Se reconocerán y convertirán en texto hasta 30 segundos de audio.

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

Para más información, consulte API REST de conversión de voz en texto para audios breves.

Limpieza de recursos

Puede usar Azure Portal o la Interfaz de la línea de comandos (CLI) de Azure para quitar el recurso de Voz que creó.

En este inicio rápido, ejecutará una aplicación para reconocer y transcribir la voz humana (lo que se suele conocer como conversión de voz en texto).

Sugerencia

Puede probar la conversión de voz en texto en Speech Studio sin registrarse ni escribir ningún código.

Prerrequisitos

Configuración del entorno

Siga estos pasos y consulte el inicio rápido de la CLI de Voz para conocer los requisitos adicionales de la plataforma.

  1. Para instalar la CLI de Voz mediante la CLI de .NET, escriba este comando:

    dotnet tool install --global Microsoft.CognitiveServices.Speech.CLI
    
  2. Configure la clave de recurso de Voz y la región mediante la ejecución de los siguientes comandos. Reemplace SUBSCRIPTION-KEY por la clave de recurso de Voz y REGION por la región del recurso de Voz:

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

Reconocimiento de voz a través de un micrófono

Ejecute el siguiente comando para iniciar el reconocimiento de voz a través de un micrófono:

spx recognize --microphone --source en-US

Hable al micrófono y verá la transcripción de sus palabras en texto en tiempo real. La CLI de Voz se detendrá después de un período de silencio, 30 segundos, o cuando presione Ctrl+C.

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

Notas

Ahora que ha completado el artículo de inicio rápido, estas son algunas consideraciones adicionales:

  • Para reconocer la voz de un archivo de audio, use --file en lugar de --microphone. Para archivos de audio comprimidos como MP4, instale GStreamer y utilice --format. Para más información, consulte Uso de entradas de audio comprimido.
    spx recognize --file YourAudioFile.wav
    spx recognize --file YourAudioFile.mp4 --format any
    
  • Para mejorar la precisión del reconocimiento de palabras o expresiones específicas, use una lista de frases. Incluya una lista de frases en línea o con un archivo de texto junto con el comando recognize:
    spx recognize --microphone --phrases "Contoso;Jessie;Rehaan;"
    spx recognize --microphone --phrases @phrases.txt
    
  • Para cambiar el idioma de reconocimiento de voz, reemplace en-US por otro en-US. Por ejemplo, es-ES para Español (España). El idioma predeterminado es en-US si no especifica un idioma.
    spx recognize --microphone --source es-ES
    
  • Para el reconocimiento continuo del audio durante más de 30 segundos, anexe --continuous:
    spx recognize --microphone --source es-ES --continuous
    

Ejecute este comando para obtener información sobre opciones adicionales de reconocimiento de voz, como la entrada y la salida de archivos:

spx help recognize

Limpieza de recursos

Puede usar Azure Portal o la Interfaz de la línea de comandos (CLI) de Azure para quitar el recurso de Voz que creó.

Pasos siguientes