Acerca del SDK de VozAbout the Speech SDK

El kit de desarrollo de software (SDK) de voz expone muchas de las funcionalidades del servicio de voz, lo que le permite el desarrollo de aplicaciones habilitadas para la voz.The Speech software development kit (SDK) exposes many of the Speech service capabilities, to empower you to develop speech-enabled applications. El SDK de voz está disponible en muchos lenguajes de programación y en todas las plataformas.The Speech SDK is available in many programming languages and across all platforms.

Lenguaje de programaciónProgramming language PlataformaPlatform Referencia de SDKSDK reference
C# 1C# 1 Windows, Linux, macOS, Mono, Xamarin.iOS, Xamarin.Mac, Xamarin.Android, UWP, UnityWindows, Linux, macOS, Mono, Xamarin.iOS, Xamarin.Mac, Xamarin.Android, UWP, Unity SDK de .NET.NET SDK
C++C++ Windows, Linux, macOSWindows, Linux, macOS SDK de C++C++ SDK
Java 2Java 2 Android, Windows, Linux, macOSAndroid, Windows, Linux, macOS SDK de JavaJava SDK
JavaScriptJavaScript Browser, Node.jsBrowser, Node.js SDK de JavaScriptJavaScript SDK
Objective-C/SwiftObjective-C / Swift iOS, macOSiOS, macOS SDK de Objective-C Objective-C SDK
PythonPython Windows, Linux, macOSWindows, Linux, macOS SDK de PythonPython SDK

1 El SDK de voz de .NET se basa en .NET Standard 2.0, por lo que es compatible con muchas plataformas. Para más información, consulte Compatibilidad con implementaciones de .NET.1 The .NET Speech SDK is based on .NET Standard 2.0, thus it supports many platforms. For more information, see .NET implementation support .

2 El SDK de voz de Java también está disponible como parte de Speech Devices SDK.2 The Java Speech SDK is also available as part of the Speech Devices SDK.

Funcionalidades del escenarioScenario capabilities

El SDK de voz expone muchas características del servicio de voz, pero no todas ellas.The Speech SDK exposes many features from the Speech service, but not all of them. Las funcionalidades del SDK de voz suelen estar asociadas con escenarios.The capabilities of the Speech SDK are often associated with scenarios. El SDK de voz es perfecto para escenarios en tiempo real y no en tiempo real, mediante dispositivos locales, archivos, almacenamiento de blobs de Azure e incluso flujos de entrada y salida.The Speech SDK is ideal for both real-time and non-real-time scenarios, using local devices, files, Azure blob storage, and even input and output streams. Cuando un escenario no sea factible con el SDK de voz, busque una alternativa de la API REST.When a scenario is not achievable with the Speech SDK, look for a REST API alternative.

Voz a textoSpeech-to-text

La conversión de voz en texto (también conocida como reconocimiento de voz) transcribe secuencias de audio en texto en tiempo real que las aplicaciones, herramientas o dispositivos pueden usar o mostrar.Speech-to-text (also known as speech recognition) transcribes audio streams to text that your applications, tools, or devices can consume or display. Use voz a texto con Language Understanding (LUIS) para derivar las intenciones del usuario a partir de voz transcrita y actuar en los comandos de voz.Use speech-to-text with Language Understanding (LUIS) to derive user intents from transcribed speech and act on voice commands. Utilice Speech Translation para traducir la entrada de voz a un idioma diferente con una sola llamada.Use Speech Translation to translate speech input to a different language with a single call. Para más información, consulte Aspectos básicos del reconocimiento de voz.For more information, see Speech-to-text basics.

Las plataformas siguientes proporcionan funcionalidad de reconocimiento de voz (SR), lista de frases, intención, traducción y contenedores locales:Speech-Recognition (SR), Phrase List, Intent, Translation, and On-premises containers are available on the following platforms:

  • C++/Windows, Linux y macOSC++/Windows & Linux & macOS
  • C# (Framework y .NET Core)/Windows, UWP, Unity, Xamarin, Linux y macOSC# (Framework & .NET Core)/Windows & UWP & Unity & Xamarin & Linux & macOS
  • Java (JRE y Android)Java (Jre and Android)
  • JavaScript (Brower y NodeJS)JavaScript (Brower and NodeJS)
  • PythonPython
  • SwiftSwift
  • Objective-CObjective-C
  • Go (solo SR)Go (SR only)

Texto a vozText-to-speech

La conversión de texto en voz (también conocido como síntesis de voz) convierte el texto en voz sintetizada similar a la voz humana.Text-to-speech (also known as speech synthesis) converts text into human-like synthesized speech. El texto de entrada está formado por literales de cadena o mediante el lenguaje de marcado de síntesis de voz (SSML).The input text is either string literals or using the Speech Synthesis Markup Language (SSML). Para más información sobre las voces estándar o neuronales, consulte Compatibilidad con idiomas y voces en el servicio de voz.For more information on standard or neural voices, see Text-to-speech language and voice support.

El servicio de texto a voz (TTS) está disponible en las siguientes plataformas:Text-to-speech (TTS) is available on the following platforms:

  • C++/Windows y LinuxC++/Windows & Linux
  • C#/Windows, UWP y UnityC#/Windows & UWP & Unity
  • Java (JRE y Android)Java (Jre and Android)
  • PythonPython
  • SwiftSwift
  • Objective-CObjective-C
  • La API REST de TTS puede usarse en todas las demás situaciones.TTS REST API can be used in every other situation.

Asistentes de vozVoice assistants

Los asistentes de voz que usan el SDK de voz permiten a los desarrolladores crear interfaces de conversación naturales, similares a la humana, para sus aplicaciones y experiencias.Voice assistants using the Speech SDK enable developers to create natural, human-like conversational interfaces for their applications and experiences. El servicio del asistente de voz proporciona una interacción rápida y confiable entre un dispositivo y un asistente.The voice assistant service provides fast, reliable interaction between a device and an assistant. La implementación utiliza el canal Direct Line Speech de Bot Framework o el servicio integrado de comandos personalizados (versión preliminar) para la finalización de tareas.The implementation uses the Bot Framework's Direct Line Speech channel or the integrated Custom Commands (Preview) service for task completion. Además, los asistentes de voz pueden usar las voces personalizadas creadas en el Portal de voz personalizado para agregar una experiencia de salida de voz única.Additionally, voice assistants can use custom voices created in the Custom Voice Portal to add a unique voice output experience.

Los asistentes de voz están disponibles en las siguientes plataformas:Voice assistants is available on the following platforms:

  • C++/Windows, Linux y macOSC++/Windows & Linux & macOS
  • C#/WindowsC#/Windows
  • Java/Windows, Linux, macOS y Android (SDK de dispositivos de voz)Java/Windows & Linux & macOS & Android (Speech Devices SDK)

Detección de palabras claveKeyword spotting

El concepto de detección de palabras clave es compatible con el SDK de voz.The concept of keyword spotting is supported in the Speech SDK. La detección de palabras clave es el acto de identificar una palabra clave en el habla, seguido de una acción al escuchar la palabra clave.Keyword spotting is the act of identifying a keyword in speech, followed by an action upon hearing the keyword. Por ejemplo, "Hola Cortana" activa el asistente Cortana.For example, "Hey Cortana" would activate the Cortana assistant.

La detección de palabras clave (KWS) está disponible en las siguientes plataformas:Keyword Spotting (KWS) is available on the following platforms:

  • C++/Windows y LinuxC++/Windows & Linux
  • C#/Windows & LinuxC#/Windows & Linux
  • Python/Windows y LinuxPython/Windows & Linux
  • Java/Windows, Linux y Android (SDK de dispositivos de voz)Java/Windows & Linux & Android (Speech Devices SDK)
  • La funcionalidad de detección de palabras clave (KWS) podría funcionar con cualquier tipo de micrófono; no obstante, la compatibilidad oficial de KWS está limitada actualmente a las matrices de micrófonos que se encuentran en el hardware de Azure Kinect DK o el SDK de dispositivos de voz.Keyword spotting (KWS) functionality might work with any microphone type, official KWS support, however, is currently limited to the microphone arrays found in the Azure Kinect DK hardware or the Speech Devices SDK

Escenarios de reunionesMeeting scenarios

El SDK de voz es idóneo para la transcripción de escenarios de reuniones, ya sea en una conversación en único dispositivo o en varios.The Speech SDK is perfect for transcribing meeting scenarios, whether from a single device or multi-device conversation.

Transcripción de conversacionesConversation Transcription

La transcripción de conversaciones permite el reconocimiento de voz en tiempo real (y asincrónico), la identificación del hablante y la atribución de frases a cada hablante (también conocido como diarización).Conversation Transcription enables real-time (and asynchronous) speech recognition, speaker identification, and sentence attribution to each speaker (also known as diarization). Es perfecto para transcribir reuniones en persona con la capacidad de distinguir a los oradores.It's perfect for transcribing in-person meetings with the ability to distinguish speakers.

La transcripción de la conversación está disponible en las siguientes plataformas:Conversation Transcription is available on the following platforms:

  • C++/Windows y LinuxC++/Windows & Linux
  • C# (Framework y .NET Core)/Windows, UWP y LinuxC# (Framework & .NET Core)/Windows & UWP & Linux
  • Java/Windows, Linux y Android (SDK de dispositivos de voz)Java/Windows & Linux & Android (Speech Devices SDK)

Conversación entre varios dispositivosMulti-device Conversation

Con la conversación entre varios dispositivos, puede conectar varios dispositivos o clientes en una conversación para enviar mensajes basados en voz o texto, con compatibilidad sencilla con la transcripción y traducción.With Multi-device Conversation, connect multiple devices or clients in a conversation to send speech-based or text-based messages, with easy support for transcription and translation.

La conversación entre varios dispositivos está disponible en las siguientes plataformas:Multi-device Conversation is available on the following platforms:

  • C++/WindowsC++/Windows
  • C# (Framework y .NET Core)/WindowsC# (Framework & .NET Core)/Windows

Escenarios personalizados o de agenteCustom / agent scenarios

El SDK de voz se puede usar para transcribir escenarios de centros de llamadas, donde se generan datos de telefonía.The Speech SDK can be used for transcribing call center scenarios, where telephony data is generated.

Transcripción para los centros de llamadasCall Center Transcription

La transcripción para los centros de llamadas es un escenario común para la conversión de voz en texto, ya que se transcriben grandes volúmenes de datos de telefonía que pueden provenir de varios sistemas, como la respuesta interactiva de voz (IVR).Call Center Transcription is common scenario for speech-to-text for transcribing large volumes of telephony data that may come from various systems, such as Interactive Voice Response (IVR). Los últimos modelos de reconocimiento de voz del servicio Voz destacan en la transcripción de estos datos de telefonía, incluso en los casos en que los datos son difíciles de entender para un humano.The latest speech recognition models from the Speech service excel at transcribing this telephony data, even in cases when the data is difficult for a human to understand.

La transcripción del centro de llamadas está disponible a través del servicio de voz por lotes mediante la API de REST y se puede usar en cualquier situación.Call Center Transcription is available through the Batch Speech Service via its REST API and can be used in any situation.

Entrada de audio comprimido con códecCodec compressed audio input

Algunos de los lenguajes de programación del SDK de voz admiten flujos de entrada de audio comprimido con códecs.Several of the Speech SDK programming languages support codec compressed audio input streams. Para más información, consulte Uso de entradas de audio comprimido con códec con el SDK de voz.For more information, see use compressed audio input formats .

La entrada de audio comprimido con códecs está disponible en las siguientes plataformas:Codec compressed audio input is available on the following platforms:

  • C++/LinuxC++/Linux
  • C#/LinuxC#/Linux
  • Java/Linux, Android e iOSJava/Linux, Android, and iOS

API DE RESTREST API

Aunque el SDK de voz cubre muchas funcionalidades de características del servicio de voz, en algunos escenarios se puede querer usar la API REST.While the Speech SDK covers many feature capabilities of the Speech Service, for some scenarios you might want to use the REST API.

Transcripción de Azure BatchBatch transcription

La transcripción por lotes permite la transcripción asincrónica de voz en texto de grandes volúmenes de datos.Batch transcription enables asynchronous speech-to-text transcription of large volumes of data. La transcripción por lotes solo es posible desde la API REST.Batch transcription is only possible from the REST API. Además de convertir el audio de la voz en texto, la conversión de voz en texto por lotes también permite la diarización y el análisis de sentimiento.In addition to converting speech audio to text, batch speech-to-text also allows for diarization and sentiment-analysis.

PersonalizaciónCustomization

El servicio de voz ofrece una gran funcionalidad con sus modelos predeterminados de conversión de voz en texto, de texto en voz y de traducción de voz.The Speech Service delivers great functionality with its default models across speech-to-text, text-to-speech, and speech-translation. En ocasiones, puede que desee aumentar el rendimiento de línea de base para que funcione mejor con su caso de uso único.Sometimes you may want to increase the baseline performance to work even better with your unique use case. El servicio de voz tiene una variedad de herramientas de personalización sin código que facilitan la tarea y permiten crear una ventaja competitiva con modelos personalizados basados en sus propios datos.The Speech Service has a variety of no-code customization tools that make it easy, and allow you to create a competitive advantage with custom models based on your own data. Estos modelos solo estarán disponibles para usted y su organización.These models will only be available to you and your organization.

Conversión de voz a texto personalizadaCustom Speech-to-text

Cuando se usa la conversión de voz en texto para el reconocimiento y la transcripción en un entorno único, puede crear y entrenar modelos acústicos, de lenguaje y pronunciación personalizados para dirigir el sonido ambiental o vocabulario específico del sector.When using speech-to-text for recognition and transcription in a unique environment, you can create and train custom acoustic, language, and pronunciation models to address ambient noise or industry-specific vocabulary. La creación y administración de modelos de Habla personalizada sin código está disponible en el portal de Habla personalizada.The creation and management of no-code Custom Speech models is available through the Custom Speech Portal. Una vez publicado el modelo de Habla personalizada, el SDK de voz ya puede usarse.Once the Custom Speech model is published, it can be consumed by the Speech SDK.

Conversión de texto a voz personalizadaCustom Text-to-speech

La conversión de texto en voz personalizada, también conocida como Voz personalizada, es un conjunto de herramientas en línea que permiten crear una voz única y reconocible para su marca.Custom text-to-speech, also known as Custom Voice is a set of online tools that allow you to create a recognizable, one-of-a-kind voice for your brand. La creación y administración de modelos de Voz personalizada sin código está disponible en el portal de Voz personalizada.The creation and management of no-code Custom Voice models is available through the Custom Voice Portal. Una vez publicado el modelo de Voz personalizada, el SDK de voz ya puede usarse.Once the Custom Voice model is published, it can be consumed by the Speech SDK.

Obtención del SDK de VozGet the Speech SDK

El SDK de voz admite Windows 10 y Windows Server 2016, o las versiones posteriores.The Speech SDK supports Windows 10 and Windows Server 2016, or later versions. Las versiones anteriores no se admiten oficialmente.Earlier versions are not officially supported. Es posible usar partes del SDK de voz con versiones anteriores de Windows, aunque no se recomienda.It is possible to use parts of the Speech SDK with earlier versions of Windows, although it's not advised.


Windows

Requisitos del sistemaSystem requirements

El SDK de voz en Windows requiere Microsoft Visual C++ Redistributable para Visual Studio 2019 en el sistema.The Speech SDK on Windows requires the Microsoft Visual C++ Redistributable for Visual Studio 2019 on the system.

C#C#

El SDK de voz de.NET está disponible como paquete NuGet e implementa .NET Standard 2.0; para más información, vea Microsoft.CognitiveServices.Speech .The .NET Speech SDK is available as a NuGet package and implements .NET Standard 2.0, for more information, see Microsoft.CognitiveServices.Speech .


C#

Paquete NuGet en C#C# NuGet Package

El SDK de voz de .NET se puede instalar desde la CLI de .NET Core con el siguiente comando dotnet add.The .NET Speech SDK can be installed from the .NET Core CLI with the following dotnet add command.

dotnet add package Microsoft.CognitiveServices.Speech

El SDK de voz de .NET se puede instalar desde el administrador de paquetes con el siguiente comando Install-Package.The .NET Speech SDK can be installed from the Package Manager with the following Install-Package command.

Install-Package Microsoft.CognitiveServices.Speech

Recursos adicionalesAdditional resources

Para la entrada de micrófono, las bibliotecas de Media Foundation deben estar instaladas.For microphone input, the Media Foundation libraries must be installed. Estas bibliotecas forman parte de Windows 10 y Windows Server 2016.These libraries are part of Windows 10 and Windows Server 2016. Es posible usar Speech SDK sin estas bibliotecas, siempre y cuando no se use un micrófono como dispositivo de entrada de audio.It's possible to use the Speech SDK without these libraries, as long as a microphone isn't used as the audio input device.

Los archivos necesarios del SDK de Voz se pueden implementar en el mismo directorio que la aplicación.The required Speech SDK files can be deployed in the same directory as your application. De esta forma la aplicación puede acceder directamente a las bibliotecas.This way your application can directly access the libraries. Asegúrese de seleccionar la versión correcta (x86/x64) que coincida con la aplicación.Make sure you select the correct version (x86/x64) that matches your application.

NombreName FunciónFunction
Microsoft.CognitiveServices.Speech.core.dll SDK básico, necesario para la implementación nativa y administradaCore SDK, required for native and managed deployment
Microsoft.CognitiveServices.Speech.csharp.dll Necesario para la implementación administradaRequired for managed deployment

Nota

A partir de la versión 1.3.0, ya no es necesario incluir el archivo Microsoft.CognitiveServices.Speech.csharp.bindings.dll (incluido en versiones anteriores).Starting with the release 1.3.0 the file Microsoft.CognitiveServices.Speech.csharp.bindings.dll (shipped in previous releases) isn't needed anymore. La funcionalidad está ahora integrada en el SDK principal.The functionality is now integrated in the core SDK.

Importante

Para el proyecto C# de la aplicación Windows Forms (.NET Framework), asegúrese de que las bibliotecas estén incluidas en la configuración de implementación de su proyecto.For the Windows Forms App (.NET Framework) C# project, make sure the libraries are included in your project's deployment settings. Puede comprobar esto en Properties -> Publish Section.You can check this under Properties -> Publish Section. Haga clic en el botón Application Files y busque las bibliotecas correspondientes en la lista desplegable.Click the Application Files button and find corresponding libraries from the scroll down list. Asegúrese de que el valor esté establecido en Included.Make sure the value is set to Included. Visual Studio incluirá el archivo cuando se publique o implemente el proyecto.Visual Studio will include the file when project is published/deployed.

C++C++

El SDK de voz de C++ está disponible en Windows, Linux y macOS.The C++ Speech SDK is available on Windows, Linux, and macOS. Para más información, consulte Microsoft.CognitiveServices.Speech .For more information, see Microsoft.CognitiveServices.Speech .


C++

Paquete NuGet de C++C++ NuGet package

El SDK de voz de C++ se puede instalar desde el administrador de paquetes con el siguiente comando Install-Package.The C++ Speech SDK can be installed from the Package Manager with the following Install-Package command.

Install-Package Microsoft.CognitiveServices.Speech

Archivos binarios y de encabezado de C++C++ binaries and header files

El SDK de voz de C++ también se puede instalar desde archivos binarios.Alternatively, the C++ Speech SDK can be installed from binaries. Descargue el SDK en forma de paquete .tar y descomprima los archivos en el directorio que prefiera.Download the SDK as a .tar package and unpack the files in a directory of your choice. El contenido de este paquete (que incluye los archivos de encabezado para las arquitecturas de destino x86 y x64) se estructura de la manera siguiente:The contents of this package (which include header files for both x86 and x64 target architectures) are structured as follows:

PathPath DescripciónDescription
license.md LicenciaLicense
ThirdPartyNotices.md Avisos de tercerosThird-party notices
include Archivos de encabezado para C++Header files for C++
lib/x64 Biblioteca x64 nativa para vincular con la aplicaciónNative x64 library for linking with your application
lib/x86 Biblioteca x86 nativa para vincular con la aplicaciónNative x86 library for linking with your application

Para crear una aplicación, copie o mueva los binarios (y bibliotecas) necesarios a su entorno de desarrollo.To create an application, copy or move the required binaries (and libraries) into your development environment. Inclúyalos según sea necesario en el proceso de compilación.Include them as required in your build process.

Recursos adicionalesAdditional resources

PythonPython

El SDK de voz de Python está disponible como módulo del índice de paquetes de Python (PyPI); para más información, vea azure-cognitiveservices-speech .The Python Speech SDK is available as a Python Package Index (PyPI) module, for more information, see azure-cognitiveservices-speech . El SDK de voz de Python es compatible con Windows, Linux y macOS.The Python Speech SDK is compatible with Windows, Linux, and macOS.


Python
pip install azure-cognitiveservices-speech

Sugerencia

Si está en macOS, es posible que tenga que ejecutar el siguiente comando para que el comando pip anterior funcione:If you are on macOS, you may need to run the following command to get the pip command above to work:

python3 -m pip install --upgrade pip

Recursos adicionalesAdditional resources

JavaJava

El SDK de Java para Android está empaquetado como una biblioteca de Android (AAR), que incluye las bibliotecas necesarias, así como los permisos necesarios de Android.The Java SDK for Android is packaged as an AAR (Android Library) , which includes the necessary libraries and required Android permissions. Se hospeda en un repositorio de Maven en https://csspeechstorage.blob.core.windows.net/maven/ como un paquete com.microsoft.cognitiveservices.speech:client-sdk:1.14.0.It's hosted in a Maven repository at https://csspeechstorage.blob.core.windows.net/maven/ as package com.microsoft.cognitiveservices.speech:client-sdk:1.14.0.


Java

Para consumir el paquete desde el proyecto de Android Studio, haga los siguientes cambios:To consume the package from your Android Studio project, make the following changes:

  1. En el archivo build.gradle de nivel de proyecto, agregue lo siguiente a la sección repositories:In the project-level build.gradle file, add the following to the repositories section:
maven { url 'https://csspeechstorage.blob.core.windows.net/maven/' }
  1. En el archivo build.gradle de nivel de módulo, agregue lo siguiente a la sección dependencies:In the module-level build.gradle file, add the following to the dependencies section:
implementation 'com.microsoft.cognitiveservices.speech:client-sdk:1.14.0'

El SDK de Java es parte del SDK de dispositivos de voz.The Java SDK is also part of the Speech Devices SDK.

Recursos adicionalesAdditional resources

Importante

Al descargar cualquiera de los SDK de voz de Azure Cognitive Services de esta página, acepta su licencia.By downloading any of the Azure Cognitive Services Speech SDKs, you acknowledge its license. Para más información, consulte:For more information, see:

Código fuente de ejemploSample source code

El equipo del SDK de Voz mantiene activamente un conjunto grande de ejemplos en un repositorio de código abierto.The Speech SDK team actively maintains a large set of examples in an open-source repository. Para obtener el repositorio de código fuente de ejemplo, visite el SDK de Voz de Microsoft Cognitive Services en GitHub .For the sample source code repository, visit the Microsoft Cognitive Services Speech SDK on GitHub . Hay ejemplos para C#, C++, Java, Python, Objective-C, Swift, JavaScript, UWP, Unity y Xamarin.There are samples for C#, C++, Java, Python, Objective-C, Swift, JavaScript, UWP, Unity, and Xamarin.


GitHub

Pasos siguientesNext steps