Inicio rápido: Reconocimiento de voz a través de un micrófonoQuickstart: Recognize speech from a microphone

En este inicio rápido usará el SDK de voz para reconocer de forma interactiva la voz de la entrada de micrófono y obtener la transcripción del texto del audio capturado.In this quickstart, you use the Speech SDK to interactively recognize speech from a microphone input, and get the text transcription from captured audio. Es fácil integrar esta característica en las aplicaciones o dispositivos para tareas de reconocimiento comunes, como transcribir conversaciones.It's easy to integrate this feature into your apps or devices for common recognition tasks, such as transcribing conversations. También se puede usar para integraciones más complejas, como el uso de Bot Framework con el SDK de Voz para crear asistentes de voz.It can also be used for more complex integrations, like using the Bot Framework with the Speech SDK to build voice assistants.

Una vez que se cumplen los requisitos previos, para realizar el reconocimiento de voz a través de un micrófono solo son necesarios cuatro pasos:After satisfying a few prerequisites, recognizing speech from a microphone only takes four steps:

  • Cree un objeto SpeechConfig a partir de la clave y la región de suscripción.Create a SpeechConfig object from your subscription key and region.
  • Cree un objeto SpeechRecognizer con el objeto SpeechConfig anterior.Create a SpeechRecognizer object using the SpeechConfig object from above.
  • Con el objeto SpeechRecognizer, inicie el proceso de reconocimiento de una única expresión.Using the SpeechRecognizer object, start the recognition process for a single utterance.
  • Inspeccione el objeto SpeechRecognitionResult devuelto.Inspect the SpeechRecognitionResult returned.

Si prefiere ponerse a trabajar de inmediato, vea o descargue todos los ejemplos para C# del SDK de Voz en GitHub.If you prefer to jump right in, view or download all Speech SDK C# Samples on GitHub. Si no, vamos a comenzar.Otherwise, let's get started.

Selección del entorno de destinoChoose your target environment

PrerrequisitosPrerequisites

Antes de comenzar:Before you get started:

Abra el proyecto en Visual Studio.Open your project in Visual Studio

El primer paso es asegurarse de que tiene el proyecto abierto en Visual Studio.The first step is to make sure that you have your project open in Visual Studio.

  1. Inicie Visual Studio 2019.Launch Visual Studio 2019.
  2. Cargue el proyecto y abra Program.cs.Load your project and open Program.cs.

Código fuenteSource code

Reemplace el contenido del archivo Program.cs por el siguiente código de C#.Replace the contents of the Program.cs file with the following C# code.

using System;
using System.Threading.Tasks;
using Microsoft.CognitiveServices.Speech;

namespace Speech.Recognition
{
    class Program
    {
        static async Task Main()
        {
            await RecognizeSpeechAsync();

            Console.WriteLine("Please press any key to continue...");
            Console.ReadLine();
        }

        static async Task RecognizeSpeechAsync()
        {
            var config =
                SpeechConfig.FromSubscription(
                    "YourSubscriptionKey",
                    "YourServiceRegion");

            using var recognizer = new SpeechRecognizer(config);
            
            var result = await recognizer.RecognizeOnceAsync();
            switch (result.Reason)
            {
                case ResultReason.RecognizedSpeech:
                    Console.WriteLine($"We recognized: {result.Text}");
                    break;
                case ResultReason.NoMatch:
                    Console.WriteLine($"NOMATCH: Speech could not be recognized.");
                    break;
                case ResultReason.Canceled:
                    var cancellation = CancellationDetails.FromResult(result);
                    Console.WriteLine($"CANCELED: Reason={cancellation.Reason}");
    
                    if (cancellation.Reason == CancellationReason.Error)
                    {
                        Console.WriteLine($"CANCELED: ErrorCode={cancellation.ErrorCode}");
                        Console.WriteLine($"CANCELED: ErrorDetails={cancellation.ErrorDetails}");
                        Console.WriteLine($"CANCELED: Did you update the subscription info?");
                    }
                    break;
            }
        }
    }
}

Reemplace los valores YourSubscriptionKey y YourServiceRegion por los valores reales del recurso de voz.Replace the YourSubscriptionKey and YourServiceRegion values with actual values from the Speech resource.

  • Vaya a Azure Portal y abra el recurso de voz.Navigate to the Azure portal , and open the Speech resource
  • En Claves, situada a la izquierda, hay dos claves de suscripción disponibles.Under the Keys on the left, there are two available subscription keys
    • Use cualquiera de ellas como reemplazo del valor YourSubscriptionKeyUse either one as the YourSubscriptionKey value replacement
  • En Información general, a la izquierda, anote la región y asígnela al identificador de región .Under the Overview on the left, note the region and map it to the region identifier
    • Use el identificador de región como reemplazo del valor YourServiceRegion, por ejemplo: "westus" para Oeste de EE. UU.Use the Region identifier as the YourServiceRegion value replacement, for example: "westus" for West US

Explicación del códigoCode explanation

Se necesita la clave y la región de la suscripción del recurso del servicio de voz para crear un objeto de configuración de voz.The Speech resource subscription key and region are required to create a speech configuration object. El objeto de configuración es necesario para crear una instancia de un objeto del reconocedor de voz.The configuration object is needed to instantiate a speech recognizer object.

La instancia del reconocedor ofrece varias formas de reconocer la voz.The recognizer instance exposes multiple ways to recognize speech. En este ejemplo, la voz se reconoce una vez.In this example, speech is recognized once. Esta funcionalidad permite que el servicio de voz sepa que solo va a enviar una frase para el reconocimiento y que, una vez que se identifica la frase, se detendrá el reconocimiento de voz.This functionality lets the Speech service know that you're sending a single phrase for recognition, and that once the phrase is identified to stop recognizing speech. Una vez que se produce el resultado, el código escribirá el motivo del reconocimiento en la consola.Once the result is yielded, the code will write the recognition reason to the console.

Sugerencia

El SDK de voz se utilizará de forma predeterminada para reconocer el uso de en-us como idioma. Para más información sobre cómo elegir el idioma de origen, consulte Especificación del idioma de origen para la conversión de voz a texto.The Speech SDK will default to recognizing using en-us for the language, see Specify source language for speech to text for information on choosing the source language.

Compilación y ejecución de una aplicaciónBuild and run app

Ya está listo para recompilar la aplicación y probar la funcionalidad de reconocimiento de voz mediante el servicio de voz.Now you're ready to rebuild your app and test the speech recognition functionality using the Speech service.

  1. Compile el código: en la barra de menús de Visual Studio, elija Compilar > Compilar solución.Compile the code - From the menu bar of Visual Studio, choose Build > Build Solution.
  2. Inicie la aplicación: en la barra de menús, elija Depurar > Iniciar depuración o presione F5.Start your app - From the menu bar, choose Debug > Start Debugging or press F5.
  3. Inicie el reconocimiento: se le pedirá que diga una frase en inglés.Start recognition - It will prompt you to speak a phrase in English. La voz se envía al servicio Voz, se transcribe como texto y se representa en la consola.Your speech is sent to the Speech service, transcribed as text, and rendered in the console.

Pasos siguientesNext steps

Con este conocimiento base del reconocimiento de voz, continúe explorando los aspectos básicos para obtener información sobre la funcionalidad y las tareas comunes en el SDK de Voz.With this base knowledge of speech recognition, continue exploring the basics to learn about common functionality and tasks within the Speech SDK.

En este inicio rápido usará el SDK de voz para reconocer de forma interactiva la voz de la entrada de micrófono y obtener la transcripción del texto del audio capturado.In this quickstart, you use the Speech SDK to interactively recognize speech from a microphone input, and get the text transcription from captured audio. Es fácil integrar esta característica en las aplicaciones o dispositivos para tareas de reconocimiento comunes, como transcribir conversaciones.It's easy to integrate this feature into your apps or devices for common recognition tasks, such as transcribing conversations. También se puede usar para integraciones más complejas, como el uso de Bot Framework con el SDK de Voz para crear asistentes de voz.It can also be used for more complex integrations, like using the Bot Framework with the Speech SDK to build voice assistants.

Una vez que se cumplen los requisitos previos, para realizar el reconocimiento de voz a través de un micrófono solo son necesarios cuatro pasos:After satisfying a few prerequisites, recognizing speech from a microphone only takes four steps:

  • Cree un objeto SpeechConfig a partir de la clave y la región de suscripción.Create a SpeechConfig object from your subscription key and region.
  • Cree un objeto SpeechRecognizer con el objeto SpeechConfig anterior.Create a SpeechRecognizer object using the SpeechConfig object from above.
  • Con el objeto SpeechRecognizer, inicie el proceso de reconocimiento de una única expresión.Using the SpeechRecognizer object, start the recognition process for a single utterance.
  • Inspeccione el objeto SpeechRecognitionResult devuelto.Inspect the SpeechRecognitionResult returned.

Si prefiere ponerse a trabajar de inmediato, vea o descargue todos los ejemplos para C++ del SDK de Voz en GitHub.If you prefer to jump right in, view or download all Speech SDK C++ Samples on GitHub. Si no, vamos a comenzar.Otherwise, let's get started.

Selección del entorno de destinoChoose your target environment

PrerrequisitosPrerequisites

Antes de comenzar:Before you get started:

Código fuenteSource code

Cree un archivo de código fuente de C++ denominado helloworld.cpp y pegue el siguiente código en él.Create a C++ source file named helloworld.cpp, and paste the following code into it.

#include <iostream> // cin, cout
#include <speechapi_cxx.h>

using namespace std;
using namespace Microsoft::CognitiveServices::Speech;

void recognizeSpeech() {
    // Creates an instance of a speech config with specified subscription key and service region.
    // Replace with your own subscription key and service region (e.g., "westus").
    auto config = SpeechConfig::FromSubscription("YourSubscriptionKey", "YourServiceRegion");

    // Creates a speech recognizer
    auto recognizer = SpeechRecognizer::FromConfig(config);
    cout << "Say something...\n";

    // Starts speech recognition, and returns after a single utterance is recognized. The end of a
    // single utterance is determined by listening for silence at the end or until a maximum of 15
    // seconds of audio is processed.  The task returns the recognition text as result. 
    // Note: Since RecognizeOnceAsync() returns only a single utterance, it is suitable only for single
    // shot recognition like command or query. 
    // For long-running multi-utterance recognition, use StartContinuousRecognitionAsync() instead.
    auto result = recognizer->RecognizeOnceAsync().get();

    // Checks result.
    if (result->Reason == ResultReason::RecognizedSpeech) {
        cout << "We recognized: " << result->Text << std::endl;
    }
    else if (result->Reason == ResultReason::NoMatch) {
        cout << "NOMATCH: Speech could not be recognized." << std::endl;
    }
    else if (result->Reason == ResultReason::Canceled) {
        auto cancellation = CancellationDetails::FromResult(result);
        cout << "CANCELED: Reason=" << (int)cancellation->Reason << std::endl;

        if (cancellation->Reason == CancellationReason::Error) {
            cout << "CANCELED: ErrorCode= " << (int)cancellation->ErrorCode << std::endl;
            cout << "CANCELED: ErrorDetails=" << cancellation->ErrorDetails << std::endl;
            cout << "CANCELED: Did you update the subscription info?" << std::endl;
        }
    }
}

int main(int argc, char **argv) {
    setlocale(LC_ALL, "");
    recognizeSpeech();
    return 0;
}

Reemplace los valores YourSubscriptionKey y YourServiceRegion por los valores reales del recurso de voz.Replace the YourSubscriptionKey and YourServiceRegion values with actual values from the Speech resource.

  • Vaya a Azure Portal y abra el recurso de voz.Navigate to the Azure portal , and open the Speech resource
  • En Claves, situada a la izquierda, hay dos claves de suscripción disponibles.Under the Keys on the left, there are two available subscription keys
    • Use cualquiera de ellas como reemplazo del valor YourSubscriptionKeyUse either one as the YourSubscriptionKey value replacement
  • En Información general, a la izquierda, anote la región y asígnela al identificador de región .Under the Overview on the left, note the region and map it to the region identifier
    • Use el identificador de región como reemplazo del valor YourServiceRegion, por ejemplo: "westus" para Oeste de EE. UU.Use the Region identifier as the YourServiceRegion value replacement, for example: "westus" for West US

Explicación del códigoCode explanation

Se necesita la clave y la región de la suscripción del recurso del servicio de voz para crear un objeto de configuración de voz.The Speech resource subscription key and region are required to create a speech configuration object. El objeto de configuración es necesario para crear una instancia de un objeto del reconocedor de voz.The configuration object is needed to instantiate a speech recognizer object.

La instancia del reconocedor ofrece varias formas de reconocer la voz.The recognizer instance exposes multiple ways to recognize speech. En este ejemplo, la voz se reconoce una vez.In this example, speech is recognized once. Esta funcionalidad permite que el servicio de voz sepa que solo va a enviar una frase para el reconocimiento y que, una vez que se identifica la frase, se detendrá el reconocimiento de voz.This functionality lets the Speech service know that you're sending a single phrase for recognition, and that once the phrase is identified to stop recognizing speech. Una vez que se produce el resultado, el código escribirá el motivo del reconocimiento en la consola.Once the result is yielded, the code will write the recognition reason to the console.

Sugerencia

El SDK de voz se utilizará de forma predeterminada para reconocer el uso de en-us como idioma. Para más información sobre cómo elegir el idioma de origen, consulte Especificación del idioma de origen para la conversión de voz a texto.The Speech SDK will default to recognizing using en-us for the language, see Specify source language for speech to text for information on choosing the source language.

Compilación de la aplicaciónBuild the app

Nota

Asegúrese de introducir los siguientes comandos como una única línea de comandos.Make sure to enter the commands below as a single command line. La forma más fácil de hacerlo es copiar el comando usando el botón Copiar junto a cada comando, y luego pegarlo en el símbolo del shell.The easiest way to do that is to copy the command by using the Copy button next to each command, and then paste it at your shell prompt.

  • En un sistema x64 (64 bits), ejecute el siguiente comando para crear la aplicación.On an x64 (64-bit) system, run the following command to build the application.

    g++ helloworld.cpp -o helloworld -I "$SPEECHSDK_ROOT/include/cxx_api" -I "$SPEECHSDK_ROOT/include/c_api" --std=c++14 -lpthread -lMicrosoft.CognitiveServices.Speech.core -L "$SPEECHSDK_ROOT/lib/x64" -l:libasound.so.2
    
  • En un sistema x86 (32 bits), ejecute el siguiente comando para crear la aplicación.On an x86 (32-bit) system, run the following command to build the application.

    g++ helloworld.cpp -o helloworld -I "$SPEECHSDK_ROOT/include/cxx_api" -I "$SPEECHSDK_ROOT/include/c_api" --std=c++14 -lpthread -lMicrosoft.CognitiveServices.Speech.core -L "$SPEECHSDK_ROOT/lib/x86" -l:libasound.so.2
    
  • En un sistema ARM64 (64 bits), ejecute el siguiente comando para crear la aplicación.On an ARM64 (64-bit) system, run the following command to build the application.

    g++ helloworld.cpp -o helloworld -I "$SPEECHSDK_ROOT/include/cxx_api" -I "$SPEECHSDK_ROOT/include/c_api" --std=c++14 -lpthread -lMicrosoft.CognitiveServices.Speech.core -L "$SPEECHSDK_ROOT/lib/arm64" -l:libasound.so.2
    

Ejecución la aplicaciónRun the app

  1. Configuración de la ruta de acceso de la biblioteca del cargador para que apunte a la biblioteca del SDK de Voz.Configure the loader's library path to point to the Speech SDK library.

    • En un sistema x64 (64 bits), escriba el siguiente comando.On an x64 (64-bit) system, enter the following command.

      export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$SPEECHSDK_ROOT/lib/x64"
      
    • En un sistema x86 (32 bits), escriba el siguiente comando.On an x86 (32-bit) system, enter this command.

      export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$SPEECHSDK_ROOT/lib/x86"
      
    • En un sistema ARM64 (64 bits), escriba el siguiente comando.On an ARM64 (64-bit) system, enter the following command.

      export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$SPEECHSDK_ROOT/lib/arm64"
      
  2. Ejecute la aplicación.Run the application.

    ./helloworld
    
  3. En la ventana de consola, aparece un símbolo del sistema que solicita que se diga algo.In the console window, a prompt appears, requesting that you say something. Diga una oración o frase en inglés.Speak an English phrase or sentence. Lo que diga se transmitirá al servicio de Voz y se transcribirá en texto, que aparece en la misma ventana.Your speech is transmitted to the Speech service and transcribed to text, which appears in the same window.

    Say something...
    We recognized: What's the weather like?
    

Pasos siguientesNext steps

Con este conocimiento base del reconocimiento de voz, continúe explorando los aspectos básicos para obtener información sobre la funcionalidad y las tareas comunes en el SDK de Voz.With this base knowledge of speech recognition, continue exploring the basics to learn about common functionality and tasks within the Speech SDK.

En este inicio rápido usará el SDK de voz para reconocer de forma interactiva la voz de la entrada de micrófono y obtener la transcripción del texto del audio capturado.In this quickstart, you use the Speech SDK to interactively recognize speech from a microphone input, and get the text transcription from captured audio. Es fácil integrar esta característica en las aplicaciones o dispositivos para tareas de reconocimiento comunes, como transcribir conversaciones.It's easy to integrate this feature into your apps or devices for common recognition tasks, such as transcribing conversations. También se puede usar para integraciones más complejas, como el uso de Bot Framework con el SDK de Voz para crear asistentes de voz.It can also be used for more complex integrations, like using the Bot Framework with the Speech SDK to build voice assistants.

Una vez que se cumplen los requisitos previos, para realizar el reconocimiento de voz a través de un micrófono solo son necesarios cuatro pasos:After satisfying a few prerequisites, recognizing speech from a microphone only takes four steps:

  • Cree un objeto SpeechConfig a partir de la clave y la región de suscripción.Create a SpeechConfig object from your subscription key and region.
  • Cree un objeto SpeechRecognizer con el objeto SpeechConfig anterior.Create a SpeechRecognizer object using the SpeechConfig object from above.
  • Con el objeto SpeechRecognizer, inicie el proceso de reconocimiento de una única expresión.Using the SpeechRecognizer object, start the recognition process for a single utterance.
  • Inspeccione el objeto SpeechRecognitionResult devuelto.Inspect the SpeechRecognitionResult returned.

Si prefiere ponerse a trabajar de inmediato, vea o descargue todos los ejemplos para Java del SDK de Voz en GitHub.If you prefer to jump right in, view or download all Speech SDK Java Samples on GitHub. Si no, vamos a comenzar.Otherwise, let's get started.

Selección del entorno de destinoChoose your target environment

PrerrequisitosPrerequisites

Antes de comenzar:Before you get started:

Código fuenteSource code

Para agregar una nueva clase vacía al proyecto de Java, seleccione File (Archivo) > New (Nuevo) > Class (Clase) .To add a new empty class to your Java project, select File > New > Class. En la ventana New Java Class (Nueva clase de Java) escriba speechsdk.quickstart en el campo Package (Paquete) y Main en el campo Name (Nombre).In the New Java Class window, enter speechsdk.quickstart into the Package field, and Main into the Name field.

Captura de pantalla de la ventana New Java Class (Nueva clase de Java)

Reemplace el contenido del archivo Main.java por el siguiente fragmento de código:Replace the contents of the Main.java file with the following snippet:

package speechsdk.quickstart;

import java.util.concurrent.Future;
import com.microsoft.cognitiveservices.speech.*;

/**
 * Quickstart: recognize speech using the Speech SDK for Java.
 */
public class Main {

    /**
     * @param args Arguments are ignored in this sample.
     */
    public static void main(String[] args) {
        try {
            // Replace below with your own subscription key
            String speechSubscriptionKey = "YourSubscriptionKey";
            // Replace below with your own service region (e.g., "westus").
            String serviceRegion = "YourServiceRegion";

            int exitCode = 1;
            SpeechConfig config = SpeechConfig.fromSubscription(speechSubscriptionKey, serviceRegion);
            assert(config != null);

            SpeechRecognizer reco = new SpeechRecognizer(config);
            assert(reco != null);

            System.out.println("Say something...");

            Future<SpeechRecognitionResult> task = reco.recognizeOnceAsync();
            assert(task != null);

            SpeechRecognitionResult result = task.get();
            assert(result != null);

            if (result.getReason() == ResultReason.RecognizedSpeech) {
                System.out.println("We recognized: " + result.getText());
                exitCode = 0;
            }
            else if (result.getReason() == ResultReason.NoMatch) {
                System.out.println("NOMATCH: Speech could not be recognized.");
            }
            else if (result.getReason() == ResultReason.Canceled) {
                CancellationDetails cancellation = CancellationDetails.fromResult(result);
                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 update the subscription info?");
                }
            }

            reco.close();

            System.exit(exitCode);
        } catch (Exception ex) {
            System.out.println("Unexpected exception: " + ex.getMessage());

            assert(false);
            System.exit(1);
        }
    }
}

Reemplace los valores YourSubscriptionKey y YourServiceRegion por los valores reales del recurso de voz.Replace the YourSubscriptionKey and YourServiceRegion values with actual values from the Speech resource.

  • Vaya a Azure Portal y abra el recurso de voz.Navigate to the Azure portal , and open the Speech resource
  • En Claves, situada a la izquierda, hay dos claves de suscripción disponibles.Under the Keys on the left, there are two available subscription keys
    • Use cualquiera de ellas como reemplazo del valor YourSubscriptionKeyUse either one as the YourSubscriptionKey value replacement
  • En Información general, a la izquierda, anote la región y asígnela al identificador de región .Under the Overview on the left, note the region and map it to the region identifier
    • Use el identificador de región como reemplazo del valor YourServiceRegion, por ejemplo: "westus" para Oeste de EE. UU.Use the Region identifier as the YourServiceRegion value replacement, for example: "westus" for West US

Explicación del códigoCode explanation

Se necesita la clave y la región de la suscripción del recurso del servicio de voz para crear un objeto de configuración de voz.The Speech resource subscription key and region are required to create a speech configuration object. El objeto de configuración es necesario para crear una instancia de un objeto del reconocedor de voz.The configuration object is needed to instantiate a speech recognizer object.

La instancia del reconocedor ofrece varias formas de reconocer la voz.The recognizer instance exposes multiple ways to recognize speech. En este ejemplo, la voz se reconoce una vez.In this example, speech is recognized once. Esta funcionalidad permite que el servicio de voz sepa que solo va a enviar una frase para el reconocimiento y que, una vez que se identifica la frase, se detendrá el reconocimiento de voz.This functionality lets the Speech service know that you're sending a single phrase for recognition, and that once the phrase is identified to stop recognizing speech. Una vez que se produce el resultado, el código escribirá el motivo del reconocimiento en la consola.Once the result is yielded, the code will write the recognition reason to the console.

Sugerencia

El SDK de voz se utilizará de forma predeterminada para reconocer el uso de en-us como idioma. Para más información sobre cómo elegir el idioma de origen, consulte Especificación del idioma de origen para la conversión de voz a texto.The Speech SDK will default to recognizing using en-us for the language, see Specify source language for speech to text for information on choosing the source language.

Compilación y ejecución de una aplicaciónBuild and run app

Presione F11, o seleccione Ejecutar > Depurar.Press F11, or select Run > Debug. Los próximos 15 segundos de la entrada de voz del micrófono se reconocen y se registran en la ventana de consola.The next 15 seconds of speech input from your microphone will be recognized and logged in the console window.

Captura de pantalla de la salida de la consola después de un reconocimiento correcto

Pasos siguientesNext steps

Con este conocimiento base del reconocimiento de voz, continúe explorando los aspectos básicos para obtener información sobre la funcionalidad y las tareas comunes en el SDK de Voz.With this base knowledge of speech recognition, continue exploring the basics to learn about common functionality and tasks within the Speech SDK.

En este inicio rápido usará el SDK de voz para reconocer de forma interactiva la voz de la entrada de micrófono y obtener la transcripción del texto del audio capturado.In this quickstart, you use the Speech SDK to interactively recognize speech from a microphone input, and get the text transcription from captured audio. Es fácil integrar esta característica en las aplicaciones o dispositivos para tareas de reconocimiento comunes, como transcribir conversaciones.It's easy to integrate this feature into your apps or devices for common recognition tasks, such as transcribing conversations. También se puede usar para integraciones más complejas, como el uso de Bot Framework con el SDK de Voz para crear asistentes de voz.It can also be used for more complex integrations, like using the Bot Framework with the Speech SDK to build voice assistants.

Una vez que se cumplen los requisitos previos, para realizar el reconocimiento de voz a través de un micrófono solo son necesarios cuatro pasos:After satisfying a few prerequisites, recognizing speech from a microphone only takes four steps:

  • Cree un objeto SpeechConfig a partir de la clave y la región de suscripción.Create a SpeechConfig object from your subscription key and region.
  • Cree un objeto SpeechRecognizer con el objeto SpeechConfig anterior.Create a SpeechRecognizer object using the SpeechConfig object from above.
  • Con el objeto SpeechRecognizer, inicie el proceso de reconocimiento de una única expresión.Using the SpeechRecognizer object, start the recognition process for a single utterance.
  • Inspeccione el objeto SpeechRecognitionResult devuelto.Inspect the SpeechRecognitionResult returned.

Si prefiere ponerse a trabajar de inmediato, vea o descargue todos los ejemplos para Python del SDK de Voz en GitHub.If you prefer to jump right in, view or download all Speech SDK Python Samples on GitHub. Si no, vamos a comenzar.Otherwise, let's get started.

PrerrequisitosPrerequisites

Antes de comenzar:Before you get started:

Código fuenteSource code

Cree un archivo llamado quickstart.py y pegue en él el siguiente código de Python.Create a file named quickstart.py and paste the following Python code in it.

import azure.cognitiveservices.speech as speechsdk

# Creates an instance of a speech config with specified subscription key and service region.
# Replace with your own subscription key and service region (e.g., "westus").
speech_key, service_region = "YourSubscriptionKey", "YourServiceRegion"
speech_config = speechsdk.SpeechConfig(subscription=speech_key, region=service_region)

# Creates a recognizer with the given settings
speech_recognizer = speechsdk.SpeechRecognizer(speech_config=speech_config)

print("Say something...")


# Starts speech recognition, and returns after a single utterance is recognized. The end of a
# single utterance is determined by listening for silence at the end or until a maximum of 15
# seconds of audio is processed.  The task returns the recognition text as result. 
# Note: Since recognize_once() returns only a single utterance, it is suitable only for single
# shot recognition like command or query. 
# For long-running multi-utterance recognition, use start_continuous_recognition() instead.
result = speech_recognizer.recognize_once()

# Checks result.
if result.reason == speechsdk.ResultReason.RecognizedSpeech:
    print("Recognized: {}".format(result.text))
elif result.reason == speechsdk.ResultReason.NoMatch:
    print("No speech could be recognized: {}".format(result.no_match_details))
elif result.reason == speechsdk.ResultReason.Canceled:
    cancellation_details = 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))

Reemplace los valores YourSubscriptionKey y YourServiceRegion por los valores reales del recurso de voz.Replace the YourSubscriptionKey and YourServiceRegion values with actual values from the Speech resource.

  • Vaya a Azure Portal y abra el recurso de voz.Navigate to the Azure portal , and open the Speech resource
  • En Claves, situada a la izquierda, hay dos claves de suscripción disponibles.Under the Keys on the left, there are two available subscription keys
    • Use cualquiera de ellas como reemplazo del valor YourSubscriptionKeyUse either one as the YourSubscriptionKey value replacement
  • En Información general, a la izquierda, anote la región y asígnela al identificador de región .Under the Overview on the left, note the region and map it to the region identifier
    • Use el identificador de región como reemplazo del valor YourServiceRegion, por ejemplo: "westus" para Oeste de EE. UU.Use the Region identifier as the YourServiceRegion value replacement, for example: "westus" for West US

Explicación del códigoCode explanation

Se necesita la clave y la región de la suscripción del recurso del servicio de voz para crear un objeto de configuración de voz.The Speech resource subscription key and region are required to create a speech configuration object. El objeto de configuración es necesario para crear una instancia de un objeto del reconocedor de voz.The configuration object is needed to instantiate a speech recognizer object.

La instancia del reconocedor ofrece varias formas de reconocer la voz.The recognizer instance exposes multiple ways to recognize speech. En este ejemplo, la voz se reconoce una vez.In this example, speech is recognized once. Esta funcionalidad permite que el servicio de voz sepa que solo va a enviar una frase para el reconocimiento y que, una vez que se identifica la frase, se detendrá el reconocimiento de voz.This functionality lets the Speech service know that you're sending a single phrase for recognition, and that once the phrase is identified to stop recognizing speech. Una vez que se produce el resultado, el código escribirá el motivo del reconocimiento en la consola.Once the result is yielded, the code will write the recognition reason to the console.

Sugerencia

El SDK de voz se utilizará de forma predeterminada para reconocer el uso de en-us como idioma. Para más información sobre cómo elegir el idioma de origen, consulte Especificación del idioma de origen para la conversión de voz a texto.The Speech SDK will default to recognizing using en-us for the language, see Specify source language for speech to text for information on choosing the source language.

Compilación y ejecución de una aplicaciónBuild and run app

Ya está listo para probar la aplicación y comprobar la funcionalidad de reconocimiento de voz mediante el servicio de voz.Now you're ready to test the app, and verify the speech recognition functionality using the Speech service.

  1. Inicie la aplicación: en la línea de comandos, escriba:Start your app - From the command line, type:
    python quickstart.py
    
  2. Inicie el reconocimiento: se le pedirá que diga una frase en inglés.Start recognition - It will prompt you to speak a phrase in English. La voz se envía al servicio Voz, se transcribe como texto y se representa en la consola.Your speech is sent to the Speech service, transcribed as text, and rendered in the console.

Pasos siguientesNext steps

Con este conocimiento base del reconocimiento de voz, continúe explorando los aspectos básicos para obtener información sobre la funcionalidad y las tareas comunes en el SDK de Voz.With this base knowledge of speech recognition, continue exploring the basics to learn about common functionality and tasks within the Speech SDK.

En este inicio rápido usará la CLI de Voz para reconocer de forma interactiva la voz de una entrada de micrófono y obtener la transcripción a texto del audio capturado.In this quickstart, you use the Speech CLI from the command line to interactively recognize speech from a microphone input, and get the text transcription from captured audio. La CLI de Voz es fácil de usar para realizar tareas comunes de reconocimiento, como transcribir conversaciones.It's easy to use the Speech CLI to perform common recognition tasks, such as transcribing conversations. Después de una configuración única, la CLI de Voz le permite transcribir el audio a texto de forma interactiva con un micrófono o desde archivos mediante un script por lotes.After a one-time configuration, the Speech CLI lets you transcribe audio into text interactively with a microphone or from files using a batch script.

Requisitos previosPrerequisites

El único requisito previo es una suscripción a Azure Speech.The only prerequisite is an Azure Speech subscription. Consulte la guía sobre cómo crear una suscripción si aún no tiene una.See the guide on creating a new subscription if you don't already have one.

Descargar e instalarDownload and install

Siga estos pasos para instalar la CLI de Voz en Windows:Follow these steps to install the Speech CLI on Windows:

  1. Instale .NET Framework 4.7 o .NET Core 3.0.Install either .NET Framework 4.7 or .NET Core 3.0
  2. Descargue el archivo ZIP de la CLI de Voz y extráigalo.Download the Speech CLI zip archive, then extract it.
  3. Vaya al directorio raíz spx-zips que extrajo de la descarga y extraiga el subdirectorio que necesita (spx-net471 para .NET Framework 4.7 o spx-netcore-win-x64 para .NET Core 3.0 en una CPU x64).Go to the root directory spx-zips that you extracted from the download, and extract the subdirectory that you need (spx-net471 for .NET Framework 4.7, or spx-netcore-win-x64 for .NET Core 3.0 on an x64 CPU).

En el símbolo del sistema, cambie el directorio a esta ubicación y, luego, escriba spx para ver la ayuda de la CLI de Voz.In the command prompt, change directory to this location, and then type spx to see help for the Speech CLI.

Creación de la configuración de la suscripciónCreate subscription config

Para empezar a usar la CLI de Voz, primero debe escribir la clave de la suscripción y la información de la región de Voz.To start using the Speech CLI, you first need to enter your Speech subscription key and region information. Consulte la página de soporte por regiones para buscar el identificador de región.See the region support page to find your region identifier. Una vez que tenga la clave de suscripción y el identificador de región (p. ej.,Once you have your subscription key and region identifier (ex. eastus, westus), ejecute los comandos siguientes.eastus, westus), run the following commands.

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

La autenticación de la suscripción se almacena ahora para futuras solicitudes de SPX.Your subscription authentication is now stored for future SPX requests. Si tiene que quitar cualquiera de estos valores almacenados, ejecute spx config @region --clear o spx config @key --clear.If you need to remove either of these stored values, run spx config @region --clear or spx config @key --clear.

Habilitación del micrófonoEnable microphone

Conecte y encienda el micrófono de su PC y desactive las aplicaciones que puedan usarlo también.Plug in and turn on your PC microphone, and turn off any apps that might also use the microphone. Algunos equipos tienen un micrófono integrado, mientras que otros requieren la configuración de un dispositivo Bluetooth.Some computers have a built-in microphone, while others require configuration of a Bluetooth device.

Ejecución de la CLI de VozRun the Speech CLI

Ahora está listo para ejecutar la CLI de Voz y reconocer la voz que procede del micrófono.Now you're ready to run the Speech CLI to recognize speech from your microphone.

  1. Inicie la aplicación: desde la línea de comandos, cambie al directorio que contiene el archivo binario de la CLI de Voz y escriba:Start your app - From the command line, change to the directory that contains the Speech CLI binary file, and type:

    spx recognize --microphone
    

    Nota

    La CLI de Voz tiene como valor predeterminado el inglés.The Speech CLI defaults to English. Puede elegir un idioma diferente en la tabla de voz a texto.You can choose a different language from the Speech-to-text table. Por ejemplo, agregue --source de-DE para reconocer voz en alemán.For example, add --source de-DE to recognize German speech.

  2. Inicie el reconocimiento: hable por el micrófono.Start recognition - Speak into the microphone. Verá la transcripción de las palabras a texto en tiempo real.You will see transcription of your words into text in real-time. La CLI de Voz se detendrá después de un período de silencio o cuando presione ctrl+C.The Speech CLI will stop after a period of silence, or when you press ctrl-C.

Pasos siguientesNext steps

Siga explorando los aspectos básicos para conocer otras características de la CLI de Voz.Continue exploring the basics to learn about other features of the Speech CLI.

En este inicio rápido usará el SDK de voz para reconocer de forma interactiva la voz de la entrada de micrófono y obtener la transcripción del texto del audio capturado.In this quickstart, you use the Speech SDK to interactively recognize speech from a microphone input, and get the text transcription from captured audio. Es fácil integrar esta característica en las aplicaciones o dispositivos para tareas de reconocimiento comunes, como transcribir conversaciones.It's easy to integrate this feature into your apps or devices for common recognition tasks, such as transcribing conversations. También se puede usar para integraciones más complejas, como el uso de Bot Framework con el SDK de Voz para crear asistentes de voz.It can also be used for more complex integrations, like using the Bot Framework with the Speech SDK to build voice assistants.

Una vez que se cumplen los requisitos previos, para realizar el reconocimiento de voz a través de un micrófono solo son necesarios cuatro pasos:After satisfying a few prerequisites, recognizing speech from a microphone only takes four steps:

  • Cree un objeto SpeechConfig a partir de la clave y la región de suscripción.Create a SpeechConfig object from your subscription key and region.
  • Cree un objeto SpeechRecognizer con el objeto SpeechConfig anterior.Create a SpeechRecognizer object using the SpeechConfig object from above.
  • Con el objeto SpeechRecognizer, inicie el proceso de reconocimiento de una única expresión.Using the SpeechRecognizer object, start the recognition process for a single utterance.
  • Inspeccione el objeto SpeechRecognitionResult devuelto.Inspect the SpeechRecognitionResult returned.

Si prefiere ponerse a trabajar de inmediato, vea o descargue todos los ejemplos para Go del SDK de voz en GitHub.If you prefer to jump right in, view or download all Speech SDK Go Samples on GitHub. Si no, vamos a comenzar.Otherwise, let's get started.

Requisitos previosPrerequisites

Antes de comenzar:Before you get started:

Configuración del entornoSetup your environment

Actualice el archivo go.mod con la versión más reciente del SDK agregando esta línea:Update the go.mod file with the latest SDK version by adding this line

require (
    github.com/Microsoft/cognitive-services-speech-sdk-go v1.12.1
)

Inicio con código reutilizableStart with some boilerplate code

  1. Reemplace el contenido del archivo de código fuente (por ejemplo, sr-quickstart.go) por el siguiente, que incluye:Replace the contents of your source file (e.g. sr-quickstart.go) with the below, which includes:
  • Definición del paquete "main""main" package definition
  • Importación de los módulos necesarios desde el SDK de vozimporting the necessary modules from the Speech SDK
  • Variables para almacenar la información de suscripción que se sustituirá más adelante en este inicio rápidovariables for storing the subscription information that will be replaced later in this quickstart
  • Una implementación sencilla con el micrófono para la entrada de audioa simple implementation using the microphone for audio input
  • Controladores de eventos para varios eventos que tienen lugar durante el reconocimiento de vozevent handlers for various events that take place during a speech recognition
package recognizer

import (
    "bufio"
    "fmt"
    "os"

    "github.com/Microsoft/cognitive-services-speech-sdk-go/audio"
    "github.com/Microsoft/cognitive-services-speech-sdk-go/speech"
)

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)
}

func main() {
    subscription :=  "YOUR_SUBSCRIPTION_KEY"
    region := "YOUR_SUBSCRIPTIONKEY_REGION"

    audioConfig, err := audio.NewAudioConfigFromDefaultMicrophoneInput()
    if err != nil {
        fmt.Println("Got an error: ", err)
        return
    }
    defer audioConfig.Close()
    config, err := speech.NewSpeechConfigFromSubscription(subscription, region)
    if err != nil {
        fmt.Println("Got an error: ", err)
        return
    }
    defer config.Close()
    speechRecognizer, err := speech.NewSpeechRecognizerFromConfig(config, audioConfig)
    if err != nil {
        fmt.Println("Got an error: ", err)
        return
    }
    defer speechRecognizer.Close()
    speechRecognizer.Recognizing(recognizingHandler)
    speechRecognizer.Recognized(recognizedHandler)
    speechRecognizer.Canceled(cancelledHandler)
    speechRecognizer.StartContinuousRecognitionAsync()
    defer speechRecognizer.StopContinuousRecognitionAsync()
    bufio.NewReader(os.Stdin).ReadBytes('\n')
}

Reemplace los valores YOUR_SUBSCRIPTION_KEY y YOUR_SUBSCRIPTIONKEY_REGION por los valores reales del recurso de voz.Replace the YOUR_SUBSCRIPTION_KEY and YOUR_SUBSCRIPTIONKEY_REGION values with actual values from the Speech resource.

  • Vaya a Azure Portal y abra el recurso Voz.Navigate to the Azure portal, and open the Speech resource
  • En Claves, situada a la izquierda, hay dos claves de suscripción disponibles.Under the Keys on the left, there are two available subscription keys
    • Use cualquiera de ellas como reemplazo del valor YOUR_SUBSCRIPTION_KEYUse either one as the YOUR_SUBSCRIPTION_KEY value replacement
  • En Información general, a la izquierda, anote la región y asígnela al identificador de región.Under the Overview on the left, note the region and map it to the region identifier
  • Use el identificador de región como reemplazo del valor YOUR_SUBSCRIPTIONKEY_REGION. Por ejemplo, "westus" para Oeste de EE. UU.Use the Region identifier as the YOUR_SUBSCRIPTIONKEY_REGION value replacement, for example: "westus" for West US

Explicación del códigoCode explanation

Se necesita la clave y la región de la suscripción de Voz para crear un objeto de configuración de voz.The Speech subscription key and region are required to create a speech configuration object. El objeto de configuración es necesario para crear una instancia de un objeto del reconocedor de voz.The configuration object is needed to instantiate a speech recognizer object.

La instancia del reconocedor ofrece varias formas de reconocer la voz.The recognizer instance exposes multiple ways to recognize speech. En este ejemplo, la voz se reconoce continuamente.In this example, speech is continuously recognized. Esta funcionalidad permite que el servicio de voz sepa que está enviando muchas frases para su reconocimiento y cuándo termina el programa para detener el reconocimiento de voz.This functionality lets the Speech service know that you're sending many phrases for recognition, and when the program terminates to stop recognizing speech. A medida que se producen los resultados, el código los escribirá en la consola.As results are yielded, the code will write them to the console.

Compilación y ejecuciónBuild and run

Ya está preparado para compilar el proyecto y probar el reconocimiento de voz mediante el servicio de voz.You're now set up to build your project and test speech recognition using the Speech service.

  1. Compile el proyecto, por ejemplo, "vaya a Compilar" .Build your project, e.g. "go build"
  2. Ejecute el módulo y diga una frase por el micrófono del dispositivo.Run the module and speak a phrase or sentence into your device's microphone. Lo que diga se transmite al servicio de voz y se transcribe a texto, que aparece en la salida.Your speech is transmitted to the Speech service and transcribed to text, which appears in the output.

Nota

El SDK de Voz se usará de forma predeterminada para reconocer el uso de en-us como idioma. Para más información sobre cómo elegir el idioma de origen, consulte Especificación del idioma de origen para la conversión de voz a texto.The Speech SDK will default to recognizing using en-us for the language, see Specify source language for speech to text for information on choosing the source language.

Pasos siguientesNext steps

En este inicio rápido usará el SDK de voz para reconocer de forma interactiva la voz de la entrada de micrófono y obtener la transcripción del texto del audio capturado.In this quickstart, you use the Speech SDK to interactively recognize speech from a microphone input, and get the text transcription from captured audio. Es fácil integrar esta característica en las aplicaciones o dispositivos para tareas de reconocimiento comunes, como transcribir conversaciones.It's easy to integrate this feature into your apps or devices for common recognition tasks, such as transcribing conversations. También se puede usar para integraciones más complejas, como el uso de Bot Framework con el SDK de Voz para crear asistentes de voz.It can also be used for more complex integrations, like using the Bot Framework with the Speech SDK to build voice assistants.

Una vez que se cumplen los requisitos previos, para realizar el reconocimiento de voz a través de un micrófono solo son necesarios cuatro pasos:After satisfying a few prerequisites, recognizing speech from a microphone only takes four steps:

  • Cree un objeto SpeechConfig a partir de la clave y la región de suscripción.Create a SpeechConfig object from your subscription key and region.
  • Cree un objeto SpeechRecognizer con el objeto SpeechConfig anterior.Create a SpeechRecognizer object using the SpeechConfig object from above.
  • Con el objeto SpeechRecognizer, inicie el proceso de reconocimiento de una única expresión.Using the SpeechRecognizer object, start the recognition process for a single utterance.
  • Inspeccione el objeto SpeechRecognitionResult devuelto.Inspect the SpeechRecognitionResult returned.

Si prefiere ponerse a trabajar de inmediato, vea o descargue todos los ejemplos para JavaScript del SDK de voz en GitHub.If you prefer to jump right in, view or download all Speech SDK JavaScript Samples on GitHub. Si no, vamos a comenzar.Otherwise, let's get started.

PrerrequisitosPrerequisites

Antes de comenzar:Before you get started:

Creación de una nueva carpeta WebsiteCreate a new Website folder

Cree una nueva carpeta vacía.Create a new, empty folder. En caso de que desee hospedar el ejemplo en un servidor web, asegúrese de que este puede acceder a la carpeta.In case you want to host the sample on a web server, make sure that the web server can access the folder.

Desempaquete el SDK de Voz para JavaScript en esa carpetaUnpack the Speech SDK for JavaScript into that folder

Descargue el SDK de Voz en forma de paquete .zip y desempaquételo en la carpeta recién creada.Download the Speech SDK as a .zip package and unpack it into the newly created folder. Como resultado se desempaquetan dos archivos, microsoft.cognitiveservices.speech.sdk.bundle.js y microsoft.cognitiveservices.speech.sdk.bundle.js.map.This results in two files being unpacked, microsoft.cognitiveservices.speech.sdk.bundle.js and microsoft.cognitiveservices.speech.sdk.bundle.js.map. El último archivo es opcional y es útil para la depuración en el código del SDK.The latter file is optional, and is useful for debugging into the SDK code.

Creación de una página index.htmlCreate an index.html page

Cree un nuevo archivo llamado index.html en la carpeta y ábralo con un editor de texto.Create a new file in the folder, named index.html and open this file with a text editor.

  1. Cree el siguiente esqueleto HTML:Create the following HTML skeleton:
<!DOCTYPE html>
<html>
<head>
  <title>Microsoft Cognitive Services Speech SDK JavaScript Quickstart</title>
  <meta charset="utf-8" />
</head>
<body style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif; font-size:13px;">
  <!-- <uidiv> -->
  <div id="warning">
    <h1 style="font-weight:500;">Speech Recognition Speech SDK not found (microsoft.cognitiveservices.speech.sdk.bundle.js missing).</h1>
  </div>
  
  <div id="content" style="display:none">
    <table width="100%">
      <tr>
        <td></td>
        <td><h1 style="font-weight:500;">Microsoft Cognitive Services Speech SDK JavaScript Quickstart</h1></td>
      </tr>
      <tr>
        <td align="right"><a href="https://docs.microsoft.com/azure/cognitive-services/speech-service/get-started" target="_blank">Subscription</a>:</td>
        <td><input id="subscriptionKey" type="text" size="40" value="subscription"></td>
      </tr>
      <tr>
        <td align="right">Region</td>
        <td><input id="serviceRegion" type="text" size="40" value="YourServiceRegion"></td>
      </tr>
      <tr>
        <td></td>
        <td><button id="startRecognizeOnceAsyncButton">Start recognition</button></td>
      </tr>
      <tr>
        <td align="right" valign="top">Results</td>
        <td><textarea id="phraseDiv" style="display: inline-block;width:500px;height:200px"></textarea></td>
      </tr>
    </table>
  </div>
  <!-- </uidiv> -->

  <!-- <speechsdkref> -->
  <!-- Speech SDK reference sdk. -->
  <script src="microsoft.cognitiveservices.speech.sdk.bundle.js"></script>
  <!-- </speechsdkref> -->

  <!-- <authorizationfunction> -->
  <!-- Speech SDK Authorization token -->
  <script>
  // Note: Replace the URL with a valid endpoint to retrieve
  //       authorization tokens for your subscription.
  var authorizationEndpoint = "token.php";

  function RequestAuthorizationToken() {
    if (authorizationEndpoint) {
      var a = new XMLHttpRequest();
      a.open("GET", authorizationEndpoint);
      a.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
      a.send("");
      a.onload = function() {
          var token = JSON.parse(atob(this.responseText.split(".")[1]));
          serviceRegion.value = token.region;
          authorizationToken = this.responseText;
          subscriptionKey.disabled = true;
          subscriptionKey.value = "using authorization token (hit F5 to refresh)";
          console.log("Got an authorization token: " + token);
      }
    }
  }
  </script>
  <!-- </authorizationfunction> -->

  <!-- <quickstartcode> -->
  <!-- Speech SDK USAGE -->
  <script>
    // status fields and start button in UI
    var phraseDiv;
    var startRecognizeOnceAsyncButton;

    // subscription key and region for speech services.
    var subscriptionKey, serviceRegion;
    var authorizationToken;
    var SpeechSDK;
    var recognizer;

    document.addEventListener("DOMContentLoaded", function () {
      startRecognizeOnceAsyncButton = document.getElementById("startRecognizeOnceAsyncButton");
      subscriptionKey = document.getElementById("subscriptionKey");
      serviceRegion = document.getElementById("serviceRegion");
      phraseDiv = document.getElementById("phraseDiv");

      startRecognizeOnceAsyncButton.addEventListener("click", function () {
        startRecognizeOnceAsyncButton.disabled = true;
        phraseDiv.innerHTML = "";

        // if we got an authorization token, use the token. Otherwise use the provided subscription key
        var speechConfig;
        if (authorizationToken) {
          speechConfig = SpeechSDK.SpeechConfig.fromAuthorizationToken(authorizationToken, serviceRegion.value);
        } else {
          if (subscriptionKey.value === "" || subscriptionKey.value === "subscription") {
            alert("Please enter your Microsoft Cognitive Services Speech subscription key!");
            return;
          }
          speechConfig = SpeechSDK.SpeechConfig.fromSubscription(subscriptionKey.value, serviceRegion.value);
        }

        speechConfig.speechRecognitionLanguage = "en-US";
        var audioConfig  = SpeechSDK.AudioConfig.fromDefaultMicrophoneInput();
        recognizer = new SpeechSDK.SpeechRecognizer(speechConfig, audioConfig);

        recognizer.recognizeOnceAsync(
          function (result) {
            startRecognizeOnceAsyncButton.disabled = false;
            phraseDiv.innerHTML += result.text;
            window.console.log(result);

            recognizer.close();
            recognizer = undefined;
          },
          function (err) {
            startRecognizeOnceAsyncButton.disabled = false;
            phraseDiv.innerHTML += err;
            window.console.log(err);

            recognizer.close();
            recognizer = undefined;
          });
      });

      if (!!window.SpeechSDK) {
        SpeechSDK = window.SpeechSDK;
        startRecognizeOnceAsyncButton.disabled = false;

        document.getElementById('content').style.display = 'block';
        document.getElementById('warning').style.display = 'none';

        // in case we have a function for getting an authorization token, call it.
        if (typeof RequestAuthorizationToken === "function") {
            RequestAuthorizationToken();
        }
      }
    });
  </script>
  <!-- </quickstartcode> -->
</body>
</html>

Creación del origen del token (opcional)Create the token source (optional)

En caso de que desea hospedar la página web en un servidor web, opcionalmente puede proporcionar un origen del token para la aplicación de demostración.In case you want to host the web page on a web server, you can optionally provide a token source for your demo application. De esa forma, la clave de la suscripción nunca saldrá el servidor, lo que permitirá a los usuarios utilizar las funcionalidades de voz sin escribir ningún código de autorización.That way, your subscription key will never leave your server while allowing users to use speech capabilities without entering any authorization code themselves.

Cree un nuevo archivo llamado token.php.Create a new file named token.php. En este ejemplo se supone que el servidor web admite el lenguaje de scripting PHP.In this example we assume your web server supports the PHP scripting language. Escriba el siguiente código:Enter the following code:

<?php
header('Access-Control-Allow-Origin: ' . $_SERVER['SERVER_NAME']);

// Replace with your own subscription key and service region (e.g., "westus").
$subscriptionKey = 'YourSubscriptionKey';
$region = 'YourServiceRegion';

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://' . $region . '.api.cognitive.microsoft.com/sts/v1.0/issueToken');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, '{}');
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json', 'Ocp-Apim-Subscription-Key: ' . $subscriptionKey));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
echo curl_exec($ch);
?>

Nota

Los tokens de autorización tienen una vigencia limitada.Authorization tokens only have a limited lifetime. Este ejemplo simplificado no muestra cómo actualizar automáticamente tokens de autorización.This simplified example does not show how to refresh authorization tokens automatically. Como usuario, puede volver a cargar la página manualmente o presione la tecla F5 para actualizarla.As a user, you can manually reload the page or hit F5 to refresh.

Compilación y ejecución local del ejemploBuild and run the sample locally

Para iniciar la aplicación, haga doble clic en el archivo index.html o ábralo con el explorador web que prefiera.To launch the app, double-click on the index.html file or open index.html with your favorite web browser. Presentará una interfaz gráfica de usuario simple que le permitirá escribir su clave de suscripción y región, y desencadenará un reconocimiento mediante el micrófono.It will present a simple GUI allowing you to enter your subscription key and region and trigger a recognition using the microphone.

Nota

Este método no funciona en el explorador Safari.This method doesn't work on the Safari browser. En Safari, la página web de ejemplo debe estar hospedada en un servidor web; Safari no permite la carga de sitios web desde un archivo local para usar el micrófono.On Safari, the sample web page needs to be hosted on a web server; Safari doesn't allow websites loaded from a local file to use the microphone.

Compilación y ejecución del ejemplo mediante un servidor webBuild and run the sample via a web server

Para iniciar la aplicación, abra el explorador web que prefiera y apunte a la dirección URL pública en la que hospeda la carpeta, escriba su regióny desencadene un reconocimiento mediante el micrófono.To launch your app, open your favorite web browser and point it to the public URL that you host the folder on, enter your region, and trigger a recognition using the microphone. Si lo ha configurado, adquirirá un token del origen del token.If configured, it will acquire a token from your token source.

Pasos siguientesNext steps

Con este conocimiento base del reconocimiento de voz, continúe explorando los aspectos básicos para obtener información sobre la funcionalidad y las tareas comunes en el SDK de Voz.With this base knowledge of speech recognition, continue exploring the basics to learn about common functionality and tasks within the Speech SDK.

Vea o descargue todos los ejemplos del SDK de Voz en GitHub.View or download all Speech SDK Samples on GitHub.

Compatibilidad con plataformas y lenguajes adicionalesAdditional language and platform support

Si ha hecho clic en esta pestaña, es probable que no vea un inicio rápido en su lenguaje de programación favorito.If you've clicked this tab, you probably didn't see a quickstart in your favorite programming language. No se preocupe, tenemos materiales de inicio rápido y ejemplos de código adicionales disponibles en GitHub.Don't worry, we have additional quickstart materials and code samples available on GitHub. Use la tabla para encontrar el ejemplo correcto para su lenguaje de programación y combinación de plataforma y sistema operativo.Use the table to find the right sample for your programming language and platform/OS combination.

IdiomaLanguage Inicios rápidos adicionalesAdditional Quickstarts Ejemplos de códigoCode samples
C#C# Desde archivo, Desde blobFrom file, From blob .NET Framework, .NET Core, UWP, Unity, Xamarin.NET Framework, .NET Core, UWP, Unity, Xamarin
C++C++ Desde archivo, Desde blobFrom file, From blob Windows, Linux, macOSWindows, Linux, macOS
JavaJava Desde archivo, Desde blobFrom file, From blob Android, JREAndroid, JRE
JavaScriptJavaScript Browser desde micrófono, Node.js desde archivoBrowser from mic, Node.js from file Windows, Linux, macOSWindows, Linux, macOS
Objective-CObjective-C iOS, macOSiOS, macOS iOS, macOSiOS, macOS
PythonPython Desde archivo, Desde blobFrom file, From blob Windows, Linux, macOSWindows, Linux, macOS
SwiftSwift iOS, macOSiOS, macOS iOS, macOSiOS, macOS