Compartir a través de


TranslationRecognizer Clase

Definición

Traduce la entrada de voz en texto y voz sintetizada en uno o varios idiomas de destino.

public sealed class TranslationRecognizer : Microsoft.CognitiveServices.Speech.Recognizer
type TranslationRecognizer = class
    inherit Recognizer
Public NotInheritable Class TranslationRecognizer
Inherits Recognizer
Herencia
TranslationRecognizer

Ejemplos

En este ejemplo se usa el reconocedor de traducción de un micrófono y se reciben los eventos generados por el reconocedor.

public async Task TranslationContinuousRecognitionAsync()
{
    // Creates an instance of a speech translation config with your subscription key and region.
    // Replace with your own subscription key and service region (e.g., "westus").
    var config = SpeechTranslationConfig.FromSubscription("YourSubscriptionKey", "YourServiceRegion");

    // Sets source and target languages.
    string fromLanguage = "en-US";
    config.SpeechRecognitionLanguage = fromLanguage;
    config.AddTargetLanguage("de");

    // Sets voice name of synthesis output.
    const string GermanVoice = "Microsoft Server Speech Text to Speech Voice (de-DE, Hedda)";
    config.VoiceName = GermanVoice;
    // Creates a translation recognizer using microphone as audio input.
    using (var recognizer = new TranslationRecognizer(config))
    {
        // Subscribes to events.
        recognizer.Recognizing += (s, e) =>
        {
            Console.WriteLine($"RECOGNIZING in '{fromLanguage}': Text={e.Result.Text}");
            foreach (var element in e.Result.Translations)
            {
                Console.WriteLine($"    TRANSLATING into '{element.Key}': {element.Value}");
            }
        };

        recognizer.Recognized += (s, e) =>
        {
            if (e.Result.Reason == ResultReason.TranslatedSpeech)
            {
                Console.WriteLine($"\nFinal result: Reason: {e.Result.Reason.ToString()}, recognized text in {fromLanguage}: {e.Result.Text}.");
                foreach (var element in e.Result.Translations)
                {
                    Console.WriteLine($"    TRANSLATING into '{element.Key}': {element.Value}");
                }
            }
        };

        recognizer.Synthesizing += (s, e) =>
        {
            var audio = e.Result.GetAudio();
            Console.WriteLine(audio.Length != 0
                ? $"AudioSize: {audio.Length}"
                : $"AudioSize: {audio.Length} (end of synthesis data)");
        };

        recognizer.Canceled += (s, e) =>
        {
            Console.WriteLine($"\nRecognition canceled. Reason: {e.Reason}; ErrorDetails: {e.ErrorDetails}");
        };

        recognizer.SessionStarted += (s, e) =>
        {
            Console.WriteLine("\nSession started event.");
        };

        recognizer.SessionStopped += (s, e) =>
        {
            Console.WriteLine("\nSession stopped event.");
        };

        // Starts continuous recognition. 
        // Uses StopContinuousRecognitionAsync() to stop recognition.
        Console.WriteLine("Say something...");
        await recognizer.StartContinuousRecognitionAsync().ConfigureAwait(false);

        do
        {
            Console.WriteLine("Press Enter to stop");
        } while (Console.ReadKey().Key != ConsoleKey.Enter);

        // Stops continuous recognition.
        await recognizer.StopContinuousRecognitionAsync().ConfigureAwait(false);
    }
}

Comentarios

Consulte también: Introducción a la traducción de voz

Constructores

TranslationRecognizer(EmbeddedSpeechConfig)

Crea un reconocedor de traducción mediante la entrada de micrófono predeterminada para una configuración de voz insertada especificada.

TranslationRecognizer(EmbeddedSpeechConfig, AudioConfig)

Crea un reconocedor de traducción mediante el traductor de voz incrustado y la configuración de audio especificadas.

TranslationRecognizer(HybridSpeechConfig)

Crea un reconocedor de traducción mediante la entrada de micrófono predeterminada para una configuración de voz híbrida especificada.

TranslationRecognizer(HybridSpeechConfig, AudioConfig)

Crea un reconocedor de traducción mediante el traductor de voz híbrido y la configuración de audio especificadas.

TranslationRecognizer(SpeechTranslationConfig)

Crea un reconocedor de traducción mediante la entrada de micrófono predeterminada para una configuración de traducción especificada.

TranslationRecognizer(SpeechTranslationConfig, AudioConfig)

Crea un reconocedor de traducción mediante el traductor de voz y la configuración de audio especificadas.

TranslationRecognizer(SpeechTranslationConfig, AutoDetectSourceLanguageConfig)

Crea un reconocedor de traducción con el traductor de voz especificado y detecta automáticamente la configuración del idioma de origen.

TranslationRecognizer(SpeechTranslationConfig, AutoDetectSourceLanguageConfig, AudioConfig)

Crea un reconocedor de traducción mediante el traductor de voz y la configuración de audio especificadas.

Campos

disposed

disposed es una marca que se usa para indicar si el objeto se elimina.

(Heredado de Recognizer)
gch

Identificador de GC para devoluciones de llamada para contexto.

(Heredado de Recognizer)
isDisposing

Indica si el objeto se está eliminando actualmente.

(Heredado de Recognizer)
pointerHandle

Interno para el registro.

(Heredado de Recognizer)
recognizerLock

recognizerLock se usa para sincronizar el acceso a las variables miembro de objetos de varios subprocesos.

(Heredado de Recognizer)

Propiedades

AuthorizationToken

Obtiene o establece el token de autorización usado para comunicarse con el servicio.

Properties

Colección de propiedades y sus valores definidos para este TranslationRecognizerobjeto . Nota: La colección de propiedades solo es válida hasta que el reconocedor que posee estas propiedades se elimina o finaliza.

SpeechRecognitionLanguage

Obtiene el nombre de idioma que se estableció cuando se creó el reconocedor.

TargetLanguages

Obtiene los idiomas de destino para la traducción que se establecieron cuando se creó el reconocedor. Cada idioma se especifica en formato BCP-47. La traducción proporcionará texto traducido para cada idioma.

VoiceName

Obtiene el nombre de la voz de salida si se usa la síntesis de voz.

Métodos

AddTargetLanguage(String)

Agrega un idioma de destino para la traducción. Agregado en la versión 1.7.0

Dispose()

Elimine los recursos asociados.

(Heredado de Recognizer)
Dispose(Boolean)

Este método realiza la limpieza de recursos. El parámetro disposing booleano indica si se llama al método desde Dispose() (si disposing es true) o desde el finalizador (si disposing es false). Las clases derivadas deben invalidar este método para eliminar el recurso si es necesario.

(Heredado de Recognizer)
Finalize()

Traduce la entrada de voz en texto y voz sintetizada en uno o varios idiomas de destino.

RecognizeOnceAsync()

Inicia la traducción de voz como una operación asincrónica.

RemoveTargetLanguage(String)

Quita un idioma de destino para la traducción. Agregado en la versión 1.7.0

StartContinuousRecognitionAsync()

Inicia el reconocimiento y la traducción en una secuencia de audio continua, hasta que se llama a StopContinuousRecognitionAsync(). Debe suscribirse a eventos para recibir resultados de traducción.

StartKeywordRecognitionAsync(KeywordRecognitionModel)

Configura el reconocedor con el modelo de palabra clave especificado. Después de llamar a este método, el reconocedor escucha la palabra clave para iniciar el reconocimiento. Llame a StopKeywordRecognitionAsync() para finalizar el reconocimiento iniciado por la palabra clave. Debe suscribirse a eventos para recibir resultados de reconocimiento.

StopContinuousRecognitionAsync()

Detiene una operación de reconocimiento en ejecución tan pronto como sea posible y solicita inmediatamente un resultado en función de la entrada que se ha procesado hasta ahora. Esto funciona para todas las operaciones de reconocimiento, no solo para las continuas, y facilita el uso de botones de inserción para hablar o "finalizar ahora" para el punto de conexión de audio manual.

StopKeywordRecognitionAsync()

Finaliza el reconocimiento iniciado por la palabra clave.

Eventos

Canceled

El evento Canceled indica que se canceló la traducción de voz a texto/síntesis.

Recognized

El evento Recognized indica que se recibe un resultado de reconocimiento final.

Recognizing

El evento Recognizing indica que se recibe un resultado de reconocimiento intermedio.

SessionStarted

Define el controlador de eventos para el evento iniciado por la sesión.

(Heredado de Recognizer)
SessionStopped

Define el controlador de eventos para el evento detenido de sesión.

(Heredado de Recognizer)
SpeechEndDetected

Define el controlador de eventos para el evento de fin de voz detectado.

(Heredado de Recognizer)
SpeechStartDetected

Define el controlador de eventos para el evento de inicio de voz detectado.

(Heredado de Recognizer)
Synthesizing

El evento Synthesizing indica que se recibe un resultado de síntesis de traducción.

Se aplica a