¿Cuáles son las novedades de Voz de Azure AI?
Voz de Azure AI se actualiza de forma continua. Para mantenerse al día con los avances recientes, en este artículo se proporciona información sobre las nuevas versiones y características.
Aspectos destacados recientes
- La transcripción rápida ahora está disponible con carácter general. Puede transcribir el audio mucho más rápido que la duración real del audio. Para más información, consulte la guía de la API de Transcripción rápida.
- La extensión del kit de herramientas Voz de Azure AI ya está disponible para los usuarios de Visual Studio Code. Contiene una lista de inicios rápidos de voz y ejemplos de escenarios que se pueden compilar y ejecutar fácilmente con clics sencillos. Para más información, consulte Kit de herramientas de Voz de Azure AI en el marketplace de Visual Studio Code.
- Las voces de alta definición (HD) de Voz de Azure AI están disponibles en versión preliminar pública. Las voces HD pueden comprender el contenido, detectar automáticamente las emociones en el texto de entrada y ajustar el tono de habla en tiempo real para que coincida con la opinión. Para más información, vea ¿Qué son las voces de alta definición (HD) de Voz de Azure AI?.
- Ya está disponible la traducción de vídeo en el servicio de Voz Azure AI. Para obtener más información, consulte ¿Qué es la traducción de vídeo?.
- El servicio Voz de Azure AI admite las voces de texto a voz de OpenAI. Para obtener más información, consulte ¿Qué son las voces de conversión de texto a voz de OpenAI?
- La API de voz personalizada está disponible para crear y administrar profesionales y modelos de voz neuronal personalizados personal.
Notas de la versión
Elección de un servicio o recurso
Versión de noviembre de 2024
Extensión del kit de herramientas Voz de Azure AI para Visual Studio Code
La extensión del kit de herramientas Voz de Azure AI ya está disponible para los usuarios de Visual Studio Code. Contiene una lista de inicios rápidos de voz y ejemplos de escenarios que se pueden compilar y ejecutar fácilmente con clics sencillos. Para más información, consulte Kit de herramientas de Voz de Azure AI en el marketplace de Visual Studio Code.
Ejemplos de código de avatar de texto a voz
Hemos agregado ejemplos de código de avatar de texto a voz para Android e iOS. En estos ejemplos se muestra cómo usar avatares de texto a voz en tiempo real en las aplicaciones móviles.
SDK de Voz 1.41.1: versión de octubre de 2024
Nuevas características
- Se ha agregado compatibilidad con Amazon Linux 2023 y Azure Linux 3.0.
- Se ha agregado el id. de propiedad pública SpeechServiceConnection_ProxyHostBypass para especificar los hosts para los que no se usa el proxy.
- Se agregaron propiedades para controlar nuevas estrategias de segmentación de frases.
Correcciones de errores
- Se ha corregido la compatibilidad incompleta para los modelos avanzados de reconocimiento de palabras clave producidos después de agosto de 2024.
- https://github.com/Azure-Samples/cognitive-services-speech-sdk/issues/2564
- https://github.com/Azure-Samples/cognitive-services-speech-sdk/issues/2571
- https://github.com/Azure-Samples/cognitive-services-speech-sdk/issues/2590
- Tenga en cuenta que con Swift en iOS su proyecto debe utilizar MicrosoftCognitiveServicesSpeech-EmbeddedXCFramework-1.41.1.zip (de https://aka.ms/csspeech/iosbinaryembedded) o el pod MicrosoftCognitiveServicesSpeechEmbedded-iOS que incluye el soporte del modelo avanzados.
- Se ha corregido una pérdida de memoria en C# relacionada con el uso de cadenas.
- Se ha corregido que no podía obtener SPXAutoDetectSourceLanguageResult de SPXConversationTranscriptionResult en Objective-C y Swift.
- Se ha corregido un bloqueo ocasional al utilizar Microsoft Audio Stack en el reconocimiento.
- Se han corregido sugerencias de tipo en Python. https://github.com/Azure-Samples/cognitive-services-speech-sdk/issues/2539
- Se ha corregido que no podía capturar la lista de voces de TTS al usar un punto de conexión personalizado.
- Se corrigió el cambio de inicialización de TTS insertado para cada solicitud de habla cuando se especifica la voz con un nombre corto.
- Se ha corregido la documentación de referencia de API durante la duración máxima del audio RecognizeOnce.
- Se ha corregido un error de control de las frecuencias de muestreo arbitrarias en JavaScript
- Gracias a rseanhall por esta contribución.
- Se ha corregido un error al calcular el desplazamiento de audio en JavaScript
- Gracias a motamed para esta contribución.
Últimos cambios
- Se ha quitado la compatibilidad con el reconocimiento de palabras clave en Windows ARM de 32 bits debido a que el entorno de ejecución de ONNX necesario no está disponible para esta plataforma.
SDK de Voz 1.40: versión de agosto de 2024
Nota:
La versión 1.39.0 del SDK de Voz era una versión interna y no es que falte.
Nuevas características
- Se ha agregado compatibilidad con el streaming de audio comprimido
G.722
en el reconocimiento de voz. - Se ha agregado compatibilidad con la configuración de tono, velocidad y volumen en streaming de texto de entrada en síntesis de voz.
- Se ha agregado compatibilidad con el streaming de texto de entrada de voz personal mediante la introducción de
PersonalVoiceSynthesisRequest
en la síntesis de voz. Esta API está en versión preliminar y está sujeta a cambios en versiones futuras. - Se ha agregado compatibilidad con la diarización de los resultados intermedios cuando se usa
ConversationTranscriber
. - Se quitó la compatibilidad con CentOS/RHEL 7 debido a EOL CentOS 7 y el final del soporte de mantenimiento de RHEL 7 2.
- El uso de modelos de voz insertados ahora requiere una licencia de modelo en lugar de una clave de modelo. Si es un cliente de voz insertado existente y desea actualizarlo, póngase en contacto con su persona de soporte técnico en Microsoft para obtener más información sobre las actualizaciones del modelo.
Corrección de errores
- Archivos binarios del SDK de Voz compilados para Windows con la marca _DISABLE_CONSTEXPR_MUTEX_CONSTRUCTOR como mitigación para el problema en tiempo de ejecución de Visual C++ Infracción de acceso con std::mutex::lock después de actualizar a VS 2022 versión 17.10.0 - Developer Community (visualstudio.com). Las aplicaciones de Windows C++ que usan el SDK de Voz pueden necesitar aplicar la misma marca de configuración de compilación si su código usa std::mutex (vea los detalles del problema vinculado).
- Se ha corregido que la detección de OpenSSL 3.x no funcionaba en Linux arm64 (https://github.com/Azure-Samples/cognitive-services-speech-sdk/issues/2420).
- Se ha corregido el problema que al implementar una aplicación para UWP, las bibliotecas y el modelo del paquete MAS NuGet no se copiaban en la ubicación de implementación.
- Se ha corregido un conflicto de proveedor de contenido en paquetes de Android (https://github.com/Azure-Samples/cognitive-services-speech-sdk/issues/2463).
- Se han corregido las opciones de postprocesamiento que no se aplican a los resultados intermedios del reconocimiento de voz.
- Se ha corregido la advertencia de .NET 8 sobre los identificadores de tiempo de ejecución específicos de distribución (https://github.com/Azure-Samples/cognitive-services-speech-sdk/issues/2244).
Ejemplos
- Se han actualizado los ejemplos de voz insertados para usar una licencia de modelo en lugar de una clave.
SDK de Voz 1.38.0: Versión de junio de 2024
Nuevas características
- Actualización de los requisitos de la plataforma Linux del SDK de Voz:
- La nueva línea base mínima es Ubuntu 20.04 LTS o compatible con
glibc
2.31 o posterior. - Los archivos binarios para Linux x86 se quitan de acuerdo con la compatibilidad con la plataforma Ubuntu 20.04.
- Tenga en cuenta que RHEL/CentOS 7 permanecen admitidos hasta el 30 de junio (final de CentOS 7 y el final del soporte de mantenimiento 2 de RHEL 7). Los archivos binarios para ellos se quitarán en la versión 1.39.0 del SDK de Voz.
- La nueva línea base mínima es Ubuntu 20.04 LTS o compatible con
- Agregue compatibilidad con OpenSSL 3 en Linux.
- Agregue compatibilidad con el formato de salida de audio g722-16khz-64kbps con sintetizador de voz.
- Agregue compatibilidad para enviar mensajes a través de un objeto de conexión con sintetizador de voz.
- Agregue las API Start/StopKeywordRecognition en Objective-C y Swift.
- Agregue API para seleccionar una categoría de modelo de traducción personalizada.
- Actualice el uso de GStreamer con el sintetizador de voz.
Corrección de errores
- Se ha corregido el error "El tamaño del mensaje de Websocket no puede superar los 65,536 bytes" durante Start/StopKeywordRecognition.
- Corrija un error de segmentación de Python durante la síntesis de voz.
Ejemplos
- Actualice los ejemplos de C# para usar .NET 6.0 de forma predeterminada.
SDK de Voz 1.37.0: versión de abril de 2024
Nuevas características
- Se ha agregado compatibilidad con la transmisión de texto de entrada en la síntesis de voz.
- Cambie la voz de síntesis de voz predeterminada a en-US-AvaMultilingualNeural.
- Actualice las compilaciones de Android para usar OpenSSL 3.x.
Corrección de errores
- Se ha corregido el bloqueo ocasional de la JVM durante la eliminación de SpeechRecognizer al utilizar MAS. (https://github.com/Azure-Samples/cognitive-services-speech-sdk/issues/2125)
- Mejora de la detección de dispositivos de audio predeterminados en Linux. (https://github.com/Azure-Samples/cognitive-services-speech-sdk/issues/2292)
Ejemplos
- Se ha actualizado para las nuevas características.
SDK de Voz 1.36.0: versión de marzo de 2024
Nuevas características
- Se ha agregado compatibilidad con la identificación del idioma en la traducción multilingüe en puntos de conexión v2 mediante AutoDetectSourceLanguageConfig::FromOpenRange().
Corrección de errores
Corregir el evento SynthesisCanceled no se desencadena si se llama a stop durante el evento SynthesisStarted.
Se ha corregido un problema de ruido en la síntesis de voz insertada.
Se ha corregido un bloqueo en el reconocimiento de voz incrustado al ejecutar varios reconocedores en paralelo.
Corrija la configuración del modo de detección de frases en los puntos de conexión v1/v2.
Corrige varios problemas con Microsoft Audio Stack.
Ejemplos
- Actualizaciones de nuevas características.
SDK de Voz 1.35.0: versión de febrero de 2024
Nuevas características
- Cambie la voz de conversión de texto a voz predeterminada de en-US-JennyMultilingualNeural a en-US-AvaNeural.
- Admitir detalles de nivel de palabra en los resultados de la traducción de voz insertada mediante el formato de salida detallado.
Corrección de errores
- Corregir la API de captador de posición AudioDataStream en Python.
- Corregir la traducción de voz mediante puntos de conexión v2 sin detección de idioma.
- Corregir un bloqueo aleatorio y eventos de límite de palabra duplicados en la conversión de texto a voz insertado.
- Devolver un código de error de cancelación correcto para un error interno del servidor en conexiones WebSocket.
- Corregir el error al cargar la biblioteca FPIEProcessor.dll cuando se usa MAS con C#.
Ejemplos
- Actualizaciones de formato secundarias para ejemplos de reconocimiento insertado.
SDK de Voz 1.34.1: versión de enero de 2024
Cambios importantes
- Solo correcciones de errores
Nuevas características
- Solo correcciones de errores
Corrección de errores
- Se ha corregido la regresión introducida en la versión 1.34.0, donde la dirección URL del punto de conexión de servicio se construyó con información regional incorrecta para los usuarios de varias regiones de China.
SDK de Voz 1.34.0: versión de noviembre de 2023
Cambios importantes
SpeechRecognizer
se ha actualizado para usar un nuevo punto de conexión de forma predeterminada (es decir, cuando no se especifica explícitamente una dirección URL), que ya no admite parámetros de cadena de consulta para la mayoría de las propiedades. En lugar de establecer parámetros de cadena de consulta directamente con ServicePropertyChannel.UriQueryParameter, use las funciones de API correspondientes.
Nuevas características
- Compatibilidad con .NET 8 (corrección para https://github.com/Azure-Samples/cognitive-services-speech-sdk/issues/2170 excepto la advertencia sobre centos7-x64)
- Compatibilidad con métricas de rendimiento de voz insertadas que se pueden usar para evaluar la capacidad de un dispositivo para ejecutar voz insertada.
- Compatibilidad con la identificación del idioma de origen en la traducción multilingüe insertada.
- Compatibilidad con la conversión de voz en texto incrustada, texto a voz y traducción para iOS y Swift/Objective-C publicada en versión preliminar.
- La compatibilidad insertada se proporciona en MicrosoftCognitiveServicesSpeechEmbedded-iOS Cocoapod.
Corrección de errores
- Corrección para el SDK de iOS dos veces el crecimiento de tamaño binario · Incidencia 2113 · Azure-Samples/cognitive-services-speech-sdk (github.com)
- Corrección para No se pueden obtener marcas de tiempo de nivel de palabra de la API de conversión de voz en texto de Azure· Incidencia 2156 · Azure-Samples/cognitive-services-speech-sdk (github.com)
- Se ha corregido la fase de destrucción dialogServiceConnector para desconectar los eventos correctamente. Esto provocaba bloqueos ocasionales.
- Corrección para la excepción durante la creación de un reconocedor cuando se usa MAS.
- FPIEProcessor.dll del paquete NuGet Microsoft.CognitiveServices.Speech.Extension.MAS para Windows UWP x64 y Arm64 tenían dependencia de bibliotecas en runtime de VC para C++nativo. La incidencia se ha rectificado actualizando la dependencia para corregir las bibliotecas en runtime de VC (para UWP).
- Corrección para las llamadas recurrentes a recognizeOnceAsync que conducen a SPXERR_ALREADY_INITIALIZED al usar MAS · Incidencia 2124 · Azure-Samples/cognitive-services-speech-sdk (github.com)
- Se ha corregido el bloqueo del reconocimiento de voz incrustado cuando se usan listas de frases.
Ejemplos
- Ejemplos de iOS insertados para conversión de voz en texto, texto a voz y traducción.
CLI de Voz 1.34.0: versión de noviembre de 2023
Nuevas características
- Compatibilidad con la salida de eventos de límite de palabras al sintetizar voz.
Corrección de errores
- Se ha actualizado la dependencia de JMESPath a la versión más reciente y se han mejorado las evaluaciones de cadenas
SDK de Voz 1.33.0: versión de octubre de 2023
Aviso de cambio importante
- Ahora es necesario que las aplicaciones que utilicen Microsoft Audio Stack (MAS) incluyan el nuevo paquete NuGet añadido para MAS en sus archivos de configuración de paquetes.
Nuevas características
- Se ha agregado el nuevo paquete NuGet Microsoft.CognitiveServices.Speech.Extension.MAS.nupkg, que proporciona un rendimiento mejorado de cancelación de eco al usar MAS
- Evaluación de la pronunciación: se ha agregado compatibilidad con la evaluación de la prosodia y el contenido, que puede evaluar el discurso hablado en términos de prosodia, vocabulario, gramática y tema.
Correcciones de errores
- Se han corregido los desplazamientos de resultados del reconocimiento de palabras clave para que coincidan correctamente con la secuencia de audio de entrada desde el principio. La corrección se aplica tanto al reconocimiento de palabras clave independiente como al reconocimiento de voz desencadenado por palabras clave.
- Se ha corregido que stopSpeaking del sintetizador no devuelve inmediatamente método stopSpeaking() de SPXSpeechSynthesizer no se puede devolver inmediatamente en iOS 17: problema 2081
- Se ha corregido el problema de importación de Mac Catalyst en el módulo Swift Compatibilidad del módulo Swift para Mac Catalyst con Apple Silicon. Problema n.º 1948
- JS: las cargas del módulo AudioWorkletNode ahora usa una dirección URL de confianza, con reserva para el explorador de CDN.
- JS: los archivos lib empaquetados ahora están destinados a ES6 JS, y se ha eliminado la compatibilidad con ES5 JS.
- JS: los eventos intermedios para el punto de conexión v2 del escenario de traducción se controlan correctamente
- JS: La propiedad language de TranslationRecognitionEventArgs ahora está establecida para los eventos translation.hypothesis.
- Síntesis de voz: se garantiza que el evento SynthesisCompleted se emita después de todos los eventos de metadatos, por lo que podría usarse para indicar el final de los eventos. ¿Cómo detectar cuándo se reciben por completo los visemas? Problema n.º 2093 Azure-Samples/cognitive-services-speech-sdk
Ejemplos
- Se ha agregado un ejemplo para demostrar el streaming MULAW con Python)
- Corrección del ejemplo NAudio de voz a texto
CLI de voz 1.33.0: versión de octubre de 2023
Nuevas características
- Compatibilidad con la salida de eventos de límite de palabras al sintetizar voz.
Correcciones de errores
- None
SDK de Voz 1.32.1: versión de septiembre de 2023
Correcciones de errores
- Actualizaciones de paquetes de Android con las correcciones de seguridad más recientes de OpenSSL1.1.1v
- JS: se agregó la propiedad WebWorkerLoadType para permitir la omisión de la carga de direcciones URL de datos para el trabajo de tiempo de espera
- JS: se corrigió la desconexión de la traducción de conversación después de 10 minutos
- JS: el token de autenticación de traducción de conversación a partir de la conversación ahora se propaga a la conexión del servicio de traducción
Ejemplos
SDK de Voz 1.31.0: versión de agosto de 2023
Nuevas características
La compatibilidad con la diarización en tiempo real está disponible en versión preliminar pública con el SDK de Voz 1.31.0. Esta característica está disponible en los siguientes SDK: C#, C++, Java, JavaScript, Python y Objective-C/Swift.
Eventos de límite de palabra de síntesis de voz sincronizada y visema con reproducción de audio
Últimos cambios
- El primer escenario de "transcripción de conversaciones" cambia de nombre a "transcripción de reuniones". Por ejemplo, use
MeetingTranscriber
en lugar deConversationTranscriber
, y useCreateMeetingAsync
en lugar deCreateConversationAsync
. Aunque los nombres de los objetos y métodos del SDK han cambiado, el cambio de nombre no cambia la propia característica. Use objetos de transcripción de reuniones para la transcripción de reuniones con perfiles de usuario y firmas de voz. Consulte Transcripción de reuniones para obtener más información. Estos cambios no afectan a los objetos y métodos de "traducción de conversaciones". Todavía puede usar el objetoConversationTranslator
y sus métodos para escenarios de traducción de reuniones.
- Para la diarización en tiempo real, se introduce un nuevo objeto
ConversationTranscriber
. El nuevo modelo de objetos "transcripción de conversaciones" y los patrones de llamada son similares al reconocimiento continuo con el objetoSpeechRecognizer
. Una diferencia clave es que el objetoConversationTranscriber
está diseñado para usarse en un escenario de conversación en el que se desea diferenciar varios hablantes (diarización). Los perfiles de usuario y las firmas de voz no son aplicables. Consulte el inicio rápido de diarización en tiempo real para obtener más información.
En esta tabla, se muestran los nombres de objeto anteriores y nuevos para la diarización en tiempo real y la transcripción de reuniones. El nombre del escenario se encuentra en la primera columna; los nombres de objeto anteriores se encuentran en la segunda columna; y los nuevos nombres de objeto se encuentran en la tercera columna.
Nombre del escenario | Nombres de objeto anteriores | Nuevos nombres de objeto |
---|---|---|
Diarización en tiempo real | N/D | ConversationTranscriber |
Transcripción de reuniones | ConversationTranscriber ConversationTranscriptionEventArgs ConversationTranscriptionCanceledEventArgs ConversationTranscriptionResult RemoteConversationTranscriptionResult RemoteConversationTranscriptionClient RemoteConversationTranscriptionResult Participant 1ParticipantChangedReason 1User 1 |
MeetingTranscriber MeetingTranscriptionEventArgs MeetingTranscriptionCanceledEventArgs MeetingTranscriptionResult RemoteMeetingTranscriptionResult RemoteMeetingTranscriptionClient RemoteMeetingTranscriptionResult Participant ParticipantChangedReason User Meeting 2 |
1 Los objetos Participant
, ParticipantChangedReason
y User
son aplicables tanto a escenarios de transcripción de reuniones como de traducción de reuniones.
2 El objeto Meeting
es nuevo y se usa con el objeto MeetingTranscriber
.
Correcciones de errores
- Se ha corregido la versión mínima admitida de macOS https://github.com/Azure-Samples/cognitive-services-speech-sdk/issues/2017
- Se ha corregido el error de evaluación de pronunciación:
- Se ha corregido el problema de las puntuaciones de precisión de phoneme, asegurándose de que ahora reflejan con precisión solo el phoneme mal anunciado. https://github.com/Azure-Samples/cognitive-services-speech-sdk/issues/1917
- Se ha resuelto un problema por el que la característica Evaluación de pronunciación identificaba inexactamente las pronunciaciones totalmente correctas como erróneas, especialmente en situaciones en las que las palabras podían tener varias pronunciaciones válidas. https://github.com/Azure-Samples/cognitive-services-speech-sdk/issues/1530
Ejemplos
CSharp
JavaScript
SDK de Voz 1.30.0: versión de julio de 2023
Características nuevas
- C++, C#, Java: se ha agregado compatibilidad con
DisplayWords
en el resultado detallado del reconocimiento de voz insertado. - Objective-C/Swift: se ha agregado compatibilidad con el evento
ConnectionMessageReceived
en Objective-C/Swift. - Objective-C/Swift: modelos de detección de palabras clave mejorados para iOS. Este cambio ha aumentado el tamaño de determinados paquetes que contienen archivos binarios de iOS (como NuGet, XCFramework). Estamos trabajando para reducir el tamaño en las futuras versiones.
Correcciones de errores
- Se ha corregido una fuga de memoria al usar el reconocedor de voz con PhraseListGrammar, según lo notificado por un cliente (problema de GitHub).
- Se ha corregido un interbloqueo en texto a la API de conexión abierta de voz.
Más notas
- Java: algunos métodos de API de Java
public
, usados internamente, se cambiaron a un paqueteinternal
,protected
oprivate
. Este cambio no debe tener ningún efecto en los desarrolladores, ya que no esperamos que las aplicaciones usen estos paquetes. Se indica esto aquí para fines de transparencia.
Ejemplos
- Nuevos ejemplos de evaluación de pronunciación sobre cómo especificar un lenguaje de aprendizaje en su propia aplicación
- C#: consulte código de ejemplo.
- C++: consulte código de ejemplo.
- JavaScript: consulte código de ejemplo.
- Objective-C: consulte el código de ejemplo.
- Python: consulte el código de ejemplo.
- Swift: consulte el código de ejemplo.
SDK de Voz 1.29.0: versión de junio de 2023
Características nuevas
- C++, C#, Java: Versión preliminar de las API de traducción de voz integrada. Ahora puede realizar la traducción de voz sin conexión en la nube.
- JavaScript: Identificación continua de idioma (LID) ahora habilitada para traducción de voz.
- JavaScript: Contribución de la comunidad para agregar la propiedad
LocaleName
a la claseVoiceInfo
. Gracias, usuario de GitHub, shivsarthak por la solicitud de incorporación de cambios. - C++, C#, Java: se ha agregado compatibilidad para volver a muestrear la salida de texto a voz integrada de 16 kHz a 48 kHz de frecuencia de muestreo.
- Se agregó compatibilidad con la configuración regional
hi-IN
en Reconocedor de intenciones (Intent Recognizer) con coincidencia de patrones simple.
Corrección de errores
- Se corrigió un bloqueo causado por una condición de carrera en el Reconocedor de voz durante la destrucción de objetos, como se vio en algunas de nuestras pruebas de Android
- Se corrigieron posibles interbloqueos en Reconocedor de intenciones (Intent Recognizer) con coincidencia de patrones simple
Ejemplos
- Nuevos ejemplos de traducción de voz insertada
SDK de Voz 1.28.0: versión de mayo de 2023
Cambio importante
- SDK de JavaScript: se quitó el Protocolo de estado de certificado en línea (OCSP). Esto permite a los clientes ajustarse mejor a los estándares del explorador y de los nodos para la gestión de certificados. La versión 1.28 y posteriores ya no incluirán nuestro módulo OCSP personalizado.
Características nuevas
- El reconocimiento de voz insertado ahora devuelve
NoMatchReason::EndSilenceTimeout
cuando se produce un tiempo de espera de silencio al final de una expresión. Esto coincide con el comportamiento al realizar el reconocimiento mediante el servicio de voz en tiempo real. - SDK de JavaScript: definir propiedades en
SpeechTranslationConfig
mediante valores de enumeración dePropertyId
.
Corrección de errores
- C# en Windows: corregir la posible condición de carrera o interbloqueo en la extensión de audio de Windows. En escenarios que eliminan rápidamente el representador de audio y también usan el método Sintetizador para dejar de hablar, el evento subyacente no se restablece por detención y podría hacer que el objeto representador nunca se elimine, todo mientras que podría contener un bloqueo global para su eliminación, inmovilizando el subproceso de GC de dotnet.
Ejemplos
- Se ha agregado un ejemplo de voz insertado para MAUI.
- Se ha actualizado el ejemplo de voz insertado para Java de Android para que incluya texto a voz.
SDK de voz 1.27.0: versión de abril de 2023
Notificación acerca de los próximos cambios
- Tenemos previsto quitar el Protocolo de estado de certificados en línea (OCSP) en la próxima versión del SDK de JavaScript. Esto permite a los clientes ajustarse mejor a los estándares del explorador y de los nodos para la gestión de certificados. La versión 1.27 es la última versión que incluye nuestro módulo OCSP personalizado.
Características nuevas
- JavaScript: se ha agregado compatibilidad con la entrada de micrófono desde el explorador con la verificación e identificación del hablante.
- Reconocimiento de voz insertado: se ha actualizado la compatibilidad con la configuración
PropertyId::Speech_SegmentationSilenceTimeoutMs
.
Corrección de errores
- General: actualizaciones de confiabilidad en la lógica de reconexión de servicio (todos los lenguajes de programación excepto JavaScript).
- General: corrección de las conversiones de cadenas que pierden memoria en Windows (todos los lenguajes de programación pertinentes excepto JavaScript).
- Reconocimiento de voz insertado: se ha corregido el bloqueo en el reconocimiento de voz en francés al usar determinadas entradas de lista gramatical.
- Documentación del código fuente: correcciones en los comentarios de la documentación de referencia del SDK relacionados con el registro de audio en el servicio.
- Reconocimiento de intención: corrija las prioridades de las coincidencias de patrones relacionadas con las entidades de lista.
Ejemplos
- Controlar correctamente el error de autenticación en el ejemplo de transcripción de conversaciones (CTS) en C#.
- Se ha agregado un ejemplo de evaluación de pronunciación de streaming para Python, JavaScript, Objective-C y Swift.
SDK de Voz 1.26.0: versión de marzo de 2023
Cambios importantes
- Bitcode se ha deshabilitado en todos los destinos de iOS en los siguientes paquetes: Cocoapod con xcframework, Nuget (para Xamarin y MAUI) y Unity. El cambio se debe a que Apple ha dejado de admitir bitcode de Xcode 14 y versiones posteriores. Este cambio también significa que si usa la versión 13 de Xcode o si ha habilitado explícitamente el bitcode en la aplicación mediante el SDK de Voz, puede producirse un error que indique que "el marco no contiene bitcode y debe recompilarlo". Para resolver este problema, asegúrese de que los destinos han deshabilitado bitcode.
- El destino de implementación de iOS mínimo se ha actualizado a la versión 11.0 en esta versión, lo que significa que ya no se admite armv7 HW.
Nuevas características
- El reconocimiento de voz integrado (en el dispositivo) ahora admite audio de entrada de frecuencia de muestreo de 8 y 16 kHz (16 bits por muestra, PCM mono).
- La síntesis de voz ahora notifica latencias de conexión, red y servicio en el resultado para contribuir a la optimización de la latencia de un extremo a otro.
- Nuevas reglas de desempate para Reconocimiento de la intención con coincidencia de patrones simples. Cuantos más bytes de caracteres coincidan, ganarán las coincidencias de patrones con un número de bytes de caracteres inferior. Ejemplo: El patrón "Seleccione {algo} en la parte superior derecha" le ganará a "Seleccione {algo}"
Correcciones de errores
- Síntesis de voz: corrija el error en el que el emoji no es correcto en eventos de límite de palabra.
- Reconocimiento de la intención con reconocimiento del lenguaje conversacional (CLU):
- Las intenciones del flujo de trabajo de orquestador de CLU aparecen ahora correctamente.
- El resultado JSON ya está disponible a través del id. de propiedad
LanguageUnderstandingServiceResponse_JsonResult
.
- Reconocimiento de voz con activación de palabras clave: se ha corregido el audio de ~150 ms que faltaba después de un reconocimiento de palabras clave.
- Corrección de la compilación de versión de NuGet para iOS MAUI del SDK de Voz, notificada por el cliente (problema de GitHub)
Ejemplos
- Corrección del ejemplo de Swift iOS, notificado por el cliente (problema de GitHub)
SDK de voz 1.25.0: versión de enero de 2023
Cambios importantes
- Se han simplificado las API de identificación de idioma (versión preliminar). Si actualiza el SDK de Voz 1.25 y ve un salto de compilación, visite la página Identificación de idioma para obtener información sobre la nueva propiedad
SpeechServiceConnection_LanguageIdMode
. Esta propiedad única reemplaza a las dos anterioresSpeechServiceConnection_SingleLanguageIdPriority
ySpeechServiceConnection_ContinuousLanguageIdPriority
. La priorización entre baja latencia y alta precisión ya no es necesaria después de las mejoras recientes del modelo. Ahora, solo tiene que seleccionar si ejecutar la identificación de idioma al principio o la identificación de idioma continua al realizar el reconocimiento de voz continuo o la traducción.
Nuevas características
- C#/C++/Java: el SDK de voz insertado se publica ahora en versión preliminar pública controlada. Consulte la documentación Voz insertada (versión preliminar). Ahora puede realizar conversión de voz en texto en el dispositivo y de texto a voz cuando la conectividad en la nube es intermitente o no está disponible. Compatible con plataformas Android, Linux, macOS y Windows
- MAUI de C#: compatibilidad agregada para destinos de iOS y Mac Catalyst en NuGet del SDK de voz (incidencia del cliente)
- Unity: arquitectura de x86_64 de Android agregada al paquete de Unity (incidencia del cliente)
- Go:
- Compatibilidad con streaming directo de ALAW/MULAW agregada para el reconocimiento de voz (incidencia del cliente)
- Se ha agregado compatibilidad con PhraseListGrammar. Gracias al usuario de GitHub czkoko por la contribución a la comunidad.
- C#/C++: Intent Recognizer ahora admite modelos de reconocimiento del lenguaje conversacional en C++ y C# con orquestación en el servicio Microsoft.
Corrección de errores
- Corrección de un bloqueo ocasional en KeywordRecognizer al intentar detenerlo
- Python:
- Corrección para obtener los resultados de la evaluación de pronunciación cuando se establece
PronunciationAssessmentGranularity.FullText
(incidencia del cliente) - Corrección de la propiedad de género para las voces masculinas que no se recuperan al obtener voces de síntesis de voz
- Corrección para obtener los resultados de la evaluación de pronunciación cuando se establece
- JavaScript
- Corrección para analizar algunos archivos WAV que se grabaron en dispositivos iOS (incidencia del cliente)
- El SDK de JS ahora se compila sin usar npm-force-resolutions (incidencia del cliente)
- Conversation Translator ahora establece correctamente el punto de conexión de servicio cuando se usa una instancia de speechConfig creada mediante SpeechConfig.fromEndpoint()
Ejemplos
Se han agregado ejemplos que muestran cómo usar la voz insertada.
Se ha agregado un ejemplo de conversión de voz en texto para MAUI
Consulte el repositorio de ejemplos del SDK de voz.
SDK de voz 1.24.2: versión de noviembre de 2022
Nuevas características
- No hay características nuevas, solo una corrección del motor insertado para admitir nuevos archivos de modelo.
Corrección de errores
- Todos los lenguajes de programación
- Se ha corregido un problema con el cifrado de modelos de reconocimiento de voz insertados.
SDK de voz 1.24.1: versión de noviembre de 2022
Nuevas características
- Paquetes publicados para la versión preliminar de Embedded Speech. Consulte https://aka.ms/embedded-speech para obtener más información.
Corrección de errores
- Todos los lenguajes de programación
- Se ha corregido el bloqueo de TTS incrustado cuando no se admite la fuente de voz
- Se ha corregido que stopSpeaking() no pudiera detener la reproducción en Linux (#1686)
- SDK de JavaScript
- Se ha corregido la regresión en cómo el transcriptor de conversación transmitía el audio.
- Java
- Se publicaron temporalmente archivos POM y Javadocs actualizados en Maven Central para permitir que la canalización de documentos actualice los documentos de referencia en línea.
- Python
- Se ha corregido la regresión en la que speak_text(ssml) de Python devuelve void.
SDK de Voz 1.24.0: versión de octubre de 2022
Nuevas características
- Todos los lenguajes de programación: AMR-WB (16 khz) se ha agregado a la lista admitida de formatos de salida de audio de texto a voz
- Python: se ha agregado un paquete para Linux arm64 para distribuciones de Linux compatibles.
- C#/C++/Java/Python: se ha agregado compatibilidad con el streaming directo de ALAW y MULAW al servicio de voz (además de la secuencia PCM existente) mediante
AudioStreamWaveFormat
. - MAUI de C#: actualización del paquete NuGet para admitir destinos de Android para desarrolladores de .NET MAUI (Incidencia del cliente)
- Mac: se ha agregado XCframework independiente para Mac, que no contiene ningún archivo binario de iOS. Esto ofrece una opción para los desarrolladores que solo necesitan archivos binarios de Mac mediante un paquete XCframework más pequeño.
- Microsoft Audio Stack (MAS):
- Cuando se especifican ángulos de formación de haz, el sonido que se origina fuera del intervalo especificado se suprimirá mejor.
- Reducción aproximada del 70 % en el tamaño de
libMicrosoft.CognitiveServices.Speech.extension.mas.so
para Linux ARM32 y Linux arm64.
- Reconocimiento de la intención mediante coincidencia de patrones:
- Se ha agregado compatibilidad con ortografía para los idiomas
fr
,de
,es
,jp
- Se ha agregado compatibilidad con enteros pregenerados para el idioma
es
.
- Se ha agregado compatibilidad con ortografía para los idiomas
Correcciones de errores
- iOS: corrección del error de síntesis de voz en iOS 16 causado por un error de descodificación de audio comprimido (Incidencia del cliente).
- JavaScript:
- Corrección del token de autenticación que no funciona al obtener la lista de voz de síntesis de voz (Incidencia del cliente).
- Uso de la dirección URL de datos para la carga de trabajo (Incidencia del cliente).
- Creación de un worklet de procesador de audio solo cuando AudioWorklet se admita en el explorador (Incidencia del cliente). Esta fue una contribución comunitaria de William Wong. ¡Gracias William!
- Corrección de la devolución de llamada reconocida cuando la respuesta
connectionMessage
de LUIS está vacía (Incidencia del cliente). - Establecimiento correcto del tiempo de espera de segmentación de voz.
- Reconocimiento de la intención mediante coincidencia de patrones:
- Los caracteres que no son json dentro de los modelos ahora se cargan correctamente.
- Corrección del problema de bloqueo cuando se llamó a
recognizeOnceAsync(text)
durante el reconocimiento continuo.
SDK de Voz 1.23.0: versión de julio de 2022
Nuevas características
- C#, C++, Java: se ha agregado compatibilidad para los idiomas
zh-cn
yzh-hk
en Reconocimiento de la intención con coincidencia de patrones. - C#: se ha agregado compatibilidad con compilaciones de .NET Framework de
AnyCPU
.
Corrección de errores
- Android: se ha corregido la vulnerabilidad CVE-2022-2068 de OpenSSL mediante la actualización de OpenSSL a 1.1.1q
- Python: se ha corregido el bloqueo al usar PushAudioInputStream
- iOS: se ha corregido el error "EXC_BAD_ACCESS: Se ha intentado desreferenciar un puntero nulo" como se notificó en iOS (problema de GitHub)
SDK de Voz 1.22.0: versión de junio de 2022
Nuevas características
- Java: API IntentRecognitionResult para getEntities(), applyLanguageModels() y recognizeOnceAsync(text) se ha agregado para admitir el motor de "coincidencia de patrones simples".
- Unity: se ha agregado compatibilidad con Mac M1 (Apple Silicon) para el paquete de Unity (incidencia de GitHub)
- C#: Se ha agregado compatibilidad con x86_64 para Xamarin Android (incidencia de GitHub)
- C#: Se ha retirado la versión mínima de .NET Framework actualizada a v4.6.2 para el paquete de C# del SDK, ya que v4.6.1 se ha retirado (vea Directiva de ciclo de vida de componentes de Microsoft .NET Framework)
- Linux: se ha agregado compatibilidad con Debian 11 y Ubuntu 22.04 LTS. Para Ubuntu 22.04 LTS se necesita la instalación manual de libssl1.1 como un paquete binario desde aquí (por ejemplo, libssl1.1_1.1.1l-1ubuntu1.3_amd64.deb o posterior para x64), o la compilación desde código fuente.
Corrección de errores
- UWP: la dependencia de OpenSSL se ha quitado de las bibliotecas de UWP y se ha reemplazado por las API websocket y HTTP de WinRT para satisfacer el cumplimiento de seguridad y una superficie binaria más pequeña.
- Mac: se ha corregido el problema "No se ha podido encontrar el módulo MicrosoftCognitiveServicesSpeech" al usar proyectos de Swift destinados a la plataforma macOS
- Windows, Mac: se ha corregido un problema específico de la plataforma por el que los orígenes de audio configurados mediante propiedades para transmitir a una velocidad en tiempo real a veces se retrasaban y, finalmente, superaban la capacidad
Ejemplos (GitHub)
- C#: se han actualizado los ejemplos de .NET Framework para usar v4.6.2
- Unity: se ha corregido el ejemplo de asistente virtual para Android y UWP
- Unity: los ejemplos de Unity se ha actualizado para la versión de Unity 2020 LTS
SDK de Voz 1.21.0: versión de abril de 2022
Nuevas características
- Java y JavaScript: se ha agregado compatibilidad con la identificación continua de idioma al usar el objeto SpeechRecognizer.
- JavaScript: se han agregado la API de diagnóstico para habilitar el nivel de registro de consola y el registro de archivos (solo nodo) para ayudar a Microsoft a solucionar problemas notificados por el cliente.
- Python: se ha agregado compatibilidad con la transcripción de conversaciones.
- Go: se ha agregado compatibilidad con Speaker Recognition.
- C++ y C#: se ha agregado compatibilidad con un grupo requerido de palabras en Intent Recognizer (coincidencia de patrones simple). Por ejemplo: "(set|start|begin) un temporizador", donde "set", "start" o "begin" deben estar presentes para que se reconozca la intención.
- Todos los lenguajes de programación, síntesis de voz: se ha agregado la propiedad duration en los eventos de límite de palabras. Se ha agregado compatibilidad con el límite de puntuación y el límite de oración.
- Objective-C/Swift/Java: se han agregado resultados de nivel de palabra en el objeto de resultado de evaluación de pronunciación (similar a C#). La aplicación ya no necesita analizar una cadena de resultado JSON para obtener información de nivel de palabra (problema de GitHub).
- Plataforma iOS: se ha agregado compatibilidad experimental para la arquitectura ARMv7.
Corrección de errores
- Plataforma iOS: se ha corregido para permitir la compilación para el destino "Cualquier dispositivo iOS", al usar CocoaPod (problema de GitHub)
- Plataforma Android: la versión de OpenSSL se ha actualizado a la versión 1.1.1n para corregir la vulnerabilidad de seguridad CVE-2022-0778
- JavaScript: se ha corregido un problema por el que el encabezado wav no se actualizaba con el tamaño de archivo (problema de GitHub)
- JavaScript: se ha corregido el problema de desincronización del identificador de solicitud: escenarios de traducción importantes (problema de GitHub)
- JavaScript: se ha corregido un problema al crear una instancia de SpeakerAudioDestination sin secuencia (problema de GitHub]
- C++: se han corregido los encabezados de C++ para quitar una advertencia al compilar para C++17 o una versión más reciente.
Samples GitHub
- Nuevos ejemplos de Java para reconocimiento de voz con identificación de idioma
- Nuevos ejemplos de Python y Java para transcripción de conversaciones
- Nuevo ejemplo de Go para Speaker Recognition
- Nueva herramienta de C++ y C# para Windows que enumera todos los dispositivos de representación y captura de audio para buscar su identificador de dispositivo. El SDK de Voz necesita este identificador si planea capturar audio o representar audio en un dispositivo no predeterminado.
SDK de voz 1.20.0: versión de enero de 2022
Nuevas características
- Objective-C, Swift y Python: se ha agregado compatibilidad con DialogServiceConnector, que se usa en escenarios de Asistente de voz.
- Python: se ha agregado compatibilidad con Python 3.10. Se quitó la compatibilidad con Python 3.6, por el final del ciclo de vida de Python para la versión 3.6.
- Unity: el SDK de voz ahora es compatible con las aplicaciones de Unity en Linux.
- C++, C#: IntentRecognizer con coincidencia de patrones ahora se admite en C#. Además, los escenarios con entidades personalizadas, grupos opcionales y roles de entidad ahora se admiten en C++ y C#.
- C++, C#: registro de seguimiento de diagnóstico mejorado mediante las nuevas clases FileLogger, MemoryLogger y EventLogger. Los registros del SDK son una herramienta importante para el diagnóstico por parte de Microsoft de los problemas notificados por los clientes. Estas nuevas clases facilitan a los clientes la integración de los registros del SDK de voz en su propio sistema de registro.
- Todos los lenguajes de programación: PronunciationAssessmentConfig ahora tiene propiedades para establecer el alfabeto de fonemas deseado (IPA o SAPI) y N-Best Phoneme Count (lo que evita la necesidad de crear un archivo JSON de configuración según la incidencia 1284 de GitHub). Además, ahora se admite la salida de nivel de sílaba.
- Android, iOS y macOS (todos los lenguajes de programación): GStreamer ya no es necesario para admitir redes de ancho de banda limitado. SpeechSynthesizer ahora usa las funcionalidades de descodificación de audio del sistema operativo para descodificar el audio comprimido transmitido desde el servicio de texto a voz.
- Todos los lenguajes de programación: SpeechSynthesizer ahora admite tres nuevos formatos de salida sin procesar (sin contenedor), que se usan ampliamente en escenarios de streaming en vivo.
- JavaScript: se ha agregado la API getVoicesAsync() a SpeechSynthesizer para recuperar la lista de voces de síntesis admitidas (incidencia 1350 de GitHub)
- JavaScript: se ha agregado la API getWaveFormat() a AudioStreamFormat para admitir formatos de onda que no son PCM (incidencia 452 de GitHub)
- JavaScript: se han agregado API de getter/setter y mute()/unmute() a SpeakerAudioDestination (incidencia 463 de GitHub)
Corrección de errores
- C++, C#, Java, JavaScript, Objective-C y Swift: corrección para quitar un retraso de 10 segundos al detener un reconocedor de voz que usa pushAudioInputStream. Esto es para el caso en el que no se inserta ningún audio nuevo después de llamar a StopContinuousRecognition (incidencias 1318, 331 de GitHub)
- Unity en Android y UWP: se han corregido los metadatos de Unity para UWP, Android Arm64 y el subsistema de Windows para Android (WSA) Arm64 (incidencia 1360 de GitHub)
- iOS: ahora se ha corregido la compilación de la aplicación del SDK de voz en cualquier dispositivo iOS al usar CocoaPods (incidencia 1320 de GitHub)
- iOS: cuando SpeechSynthesizer está configurado para transmitir audio directamente a un hablante, la reproducción se detiene al principio en condiciones poco frecuentes. Este problema se ha corregido.
- JavaScript: use la reserva del procesador de scripts para la entrada del micrófono si no se encuentra ningún worklet de audio (incidencia 455 de GitHub)
- JavaScript: se ha agregado el protocolo al agente para mitigar los errores encontrados con la integración de Sentry (incidencia 465 de GitHub)
Samples GitHub
- Ejemplos de C++, C#, Python y Java que muestran cómo obtener resultados detallados del reconocimiento. Los detalles incluyen resultados de reconocimiento alternativos, puntuación de confianza, forma léxica, formulario normalizado, formulario normalizado enmascarado, con temporización de nivel de palabra para cada uno.
- Se ha agregado un ejemplo de iOS mediante AVFoundation como origen de audio externo.
- Se ha agregado un ejemplo de Java para mostrar cómo obtener el formato SRT (texto SubRip) mediante el evento WordBoundary.
- Ejemplos de Android para Pronunciation Assessment.
- C++, C# que muestran el uso de las nuevas clases de registro de diagnóstico.
SDK de Voz 1.19.0: versión de noviembre de 2021
Aspectos destacados
El servicio Speaker Recognition ya está disponible con carácter general (GA). Las API del SDK de Voz están disponibles en C++, C#, Java y JavaScript. Con Speaker Recognition puede verificar de forma precisa a los hablantes e identificarlos por sus características de voz únicas. Para más información sobre este tema, consulte la documentación.
Se ha eliminado la compatibilidad con Ubuntu 16.04 junto con Azure DevOps y GitHub. Ubuntu 16.04 llegó al final de su ciclo de vida en abril de 2021. Migre los flujos de trabajo de Ubuntu 16.04 a Ubuntu 18.04 o posterior.
La vinculación de OpenSSL en archivos binarios de Linux ha cambiado a dinámica. El tamaño de archivo binario de Linux se ha reducido en aproximadamente un 50 %.
Se ha agregado compatibilidad con Mac M1 basado en ARM de silicio.
Nuevas características
C++/C#/Java: se han agregado nuevas API para habilitar la compatibilidad del procesamiento de audio con la entrada de voz con Microsoft Audio Stack. Se documenta aquí.
C++ : nuevas API para el reconocimiento de la intención a fin de facilitar una coincidencia de patrones más avanzada. Esto incluye las entidades List y Prebuilt Integer, así como la compatibilidad con la agrupación de intenciones y entidades como modelos (la documentación, las actualizaciones y los ejemplos están en desarrollo y se van a publicar en un futuro próximo).
Mac: compatibilidad con Silicon basado en Arm64 (M1) para paquetes CocoaPod, Python, Java y NuGet relacionados con el problema 1244 de GitHub.
iOS/Mac: los archivos binarios de iOS y macOS ahora se empaquetan en paquetes xcframework relacionados con el problema 919 de GitHub.
iOS/Mac: compatibilidad con Mac Catalyst relacionado con el problema 1171 de GitHub.
Linux: nuevo paquete tar agregado para CentOS7 Acerca del SDK de Voz. El paquete .tar de Linux ahora contiene bibliotecas específicas para RHEL/CentOS 7 en
lib/centos7-x64
. Las bibliotecas del SDK de Voz de lib/x64 todavía son aplicables a todas las demás distribuciones x64 de Linux compatibles (incluido RHEL/CentOS 8) y no funcionan en RHEL/CentOS 7.JavaScript: API de VoiceProfile y SpeakerRecognizer ahora admiten async/await.
JavaScript: se ha agregado compatibilidad con las regiones de Azure del gobierno de los Estados Unidos.
Windows: se ha agregado compatibilidad con la reproducción en Plataforma universal de Windows (UWP).
Corrección de errores
Android: actualización de seguridad de OpenSSL (actualizado a la versión 1.1.1l) para paquetes Android.
Python: se ha resuelto un error que se generaba al seleccionar un dispositivo de altavoz en Python.
Core: vuelve a conectarse automáticamente cuando se produce un error en un intento de conexión.
iOS: compresión de audio deshabilitada en paquetes iOS debido a problemas de compilación de bitcode e inestabilidad al usar GStreamer. Los detalles están disponibles en el problema 1209 de GitHub.
Samples GitHub
Mac/iOS: se han actualizado ejemplos e inicios rápidos para usar un paquete xcframework.
.NET: ejemplos actualizados para usar la versión 3.1 de .NET Core.
JavaScript: se ha agregado un ejemplo de asistentes para voz.
SDK de Voz 1.18.0: versión de julio de 2021
Nota: Empiece a usar el SDK de Voz aquí.
Resumen de los aspectos destacados
- Ubuntu 16.04 alcanzó el final del ciclo de vida en abril de 2021. Con Azure DevOps y GitHub, se quitará la compatibilidad con la versión 16.04 en septiembre de 2021. Migre los flujos de trabajo de ubuntu-16.04 a ubuntu-18.04 o posterior antes de ese momento.
Nuevas características
- C++ : la coincidencia de patrones de lenguaje simple con el reconocedor de intenciones ahora facilita la implementación de escenarios de reconocimiento de intenciones simples.
- C++/C#/Java: se ha agregado una nueva API
GetActivationPhrasesAsync()
a la claseVoiceProfileClient
para recibir una lista de frases de activación válidas en la fase de inscripción de Speaker Recognition para escenarios de reconocimiento independientes.- Importante: la característica Speaker Recognition está en versión preliminar. Todos los perfiles de voz creados en la versión preliminar se interrumpirán 90 días después de que la característica Speaker Recognition se haya movido de la versión preliminar a disponibilidad general. En ese momento, los perfiles de voz de la versión preliminar dejarán de funcionar.
- Python: se ha agregado compatibilidad con la identificación continua del lenguaje (LID) en los objetos
SpeechRecognizer
yTranslationRecognizer
existentes. - Python: se ha agregado un nuevo objeto de Python llamado
SourceLanguageRecognizer
para realizar una operación de LID única o continua (sin reconocimiento ni traducción). - JavaScript: se ha agregado la API
getActivationPhrasesAsync
a la claseVoiceProfileClient
para recibir una lista de frases de activación válidas en la fase de inscripción de Speaker Recognition para escenarios de reconocimiento independientes. - JavaScript: la API
enrollProfileAsync
deVoiceProfileClient
ahora se puede esperar asincrónicamente. Consulte este código de identificación independiente para ver un ejemplo de uso.
Mejoras
- Java: se ha agregado compatibilidad con AutoCloseable a muchos objetos de Java. Ahora se admite el modelo try-with-resources para liberar recursos. Consulte este ejemplo que usa try-with-resources. Consulte también el tutorial de la documentación de Java de Oracle sobre la instrucción try-with-resources para obtener información sobre este patrón.
- Se ha reducido significativamente la superficie de disco para muchas plataformas y arquitecturas. Ejemplos del archivo binario
Microsoft.CognitiveServices.Speech.core
: en Linux x64 es 475 KB más pequeño (reducción del 8,0 %), en Windows UWP Arm64 es 464 KB más pequeño (reducción del 11,5 %), en Windows x86 es 343 KB más pequeño (reducción del 17,5 %) y en Windows x64 es 451 KB más pequeño (reducción del 19,4 %).
Corrección de errores
- Java: se ha corregido un error de síntesis cuando el texto de síntesis contiene caracteres suplentes. Consulte los detalles aquí.
- JavaScript: el procesamiento de audio del micrófono del explorador ahora usa
AudioWorkletNode
en lugar deScriptProcessorNode
(en desuso). Consulte los detalles aquí. - JavaScript: se mantienen correctamente las conversaciones activas durante escenarios de traducción de conversación de larga duración. Consulte los detalles aquí.
- JavaScript: se ha corregido un problema con la reconexión del reconocedor a una secuencia multimedia en el reconocimiento continuo. Consulte los detalles aquí.
- JavaScript: se ha corregido un problema con la reconexión del reconocedor a un elemento pushStream en el reconocimiento continuo. Consulte los detalles aquí.
- JavaScript: se ha corregido el cálculo de desplazamiento de nivel de palabra en los resultados detallados del reconocimiento. Consulte los detalles aquí.
Ejemplos
- Puede encontrar ejemplos de inicios rápidos de Java actualizados aquí.
- Ejemplos de Speaker Recognition de JavaScript actualizados para mostrar el nuevo uso de
enrollProfileAsync()
. Consulte los ejemplos aquí.
SDK de voz 1.17.0: versión de mayo de 2021
Nota
Empiece a usar el SDK de voz aquí.
Resumen de los aspectos destacados
- Superficie más pequeña: seguimos disminuyendo la superficie de memoria y disco del SDK de voz y sus componentes.
- Una nueva API de identificación de idioma independiente permite reconocer qué idioma se habla.
- Desarrolle aplicaciones de realidad mixta y juegos habilitadas para voz con Unity en macOS.
- Ahora puede usar la característica de Texto a voz además del reconocimiento de voz con el lenguaje de programación Go.
- Varias correcciones de errores para solucionar los problemas que nuestros valiosos clientes han marcado en GitHub. Gracias. No deje de enviar sus comentarios.
Nuevas características
- C++/C#: nueva detección de idioma continua y al inicio gracias a la API
SourceLanguageRecognizer
. Si solo quiere detectar los idiomas hablados en el contenido del audio, esta es la API para hacerlo. Consulte los detalles para C++ y C#. - C++/C#: el reconocimiento de voz y el reconocimiento de traducción ahora admiten la identificación de idioma continua y al inicio para que pueda determinar mediante programación qué idiomas se hablan antes de que se transcriban o traduzcan. Consulte la documentación aquí sobre el reconocimiento de voz y aquí sobre la traducción de voz.
- C#: se ha agregado compatibilidad con Unity para macOS (x64). Esta funcionalidad hace posible los casos de uso de reconocimiento de voz y síntesis de voz en realidad mixta y juegos.
- Go: se ha agregado compatibilidad con la síntesis de voz/texto a voz al lenguaje de programación Go para que la síntesis de voz esté disponible incluso en más casos de uso. Consulte nuestro inicio rápido o nuestra documentación de referencia.
- C++/C#/Java/Python/Objective-C/Go: el sintetizador de voz ahora admite el objeto
connection
. Este objeto ayuda a administrar y supervisar la conexión al servicio Voz y es especialmente útil para conectarse previamente a fin de reducir la latencia. Consulte la documentación aquí. - C++/C#/Java/Python/Objective-C/Go: ahora se expone la latencia y el tiempo en ejecución en
SpeechSynthesisResult
para ayudarle a supervisar y diagnosticar los problemas de latencia de la síntesis de voz. Consulte los detalles para C++, C#, Java, Python, Objective-C y Go. - C++/C#/Java/Python/Objective-C: Texto a voz ahora usa voces neuronales de forma predeterminada si no especifica la voz que desea utilizar. Esto proporciona una salida de mayor fidelidad de forma predeterminada, pero también aumenta el precio predeterminado. Puede especificar cualquiera de nuestras más de 70 voces estándar o más de 130 voces neuronales para cambiar el valor predeterminado.
- C++/C#/Java/Python/Objective-C/Go: hemos agregado una propiedad Gender a la información de síntesis de voz para facilitar la selección de voces en función del sexo. Así se soluciona el problema n.º 1055 de GitHub.
- C++, C#, Java, JavaScript: ahora se admiten
retrieveEnrollmentResultAsync
,getAuthorizationPhrasesAsync
ygetAllProfilesAsync()
en Speaker Recognition para facilitar la administración de usuarios de todos los perfiles de voz de una cuenta dada. Consulte la documentación de C++, C#, Java, JavaScript. Así se soluciona el problema n.º 338 de GitHub. - JavaScript: se han agregado reintentos para errores de conexión que harán que las aplicaciones de voz basadas en JavaScript sean más sólidas.
Mejoras
- Los archivos binarios del SDK de voz de Linux y Android se han actualizado para usar la versión más reciente de OpenSSL (1.1.1k).
- Mejoras en el tamaño del código:
- Language Understanding ahora se divide en una biblioteca "lu" independiente.
- El tamaño del archivo binario principal de Windows x64 disminuyó en un 14,4 %.
- El tamaño de archivo binario del núcleo Arm64 de Android disminuyó en un 13,7 %.
- El tamaño de otros componentes también ha disminuido.
Corrección de errores
- Todos: se ha corregido el problema n.º 842 de GitHub para ServiceTimeout. Ahora puede transcribir archivos de audio largos mediante el SDK de voz sin que la conexión al servicio termine con este error. Sin embargo, todavía se recomienda usar la transcripción por lotes para archivos largos.
- C# : se ha corregido el problema n.º 947 de GitHub donde ninguna entrada de voz podía dejar la aplicación en mal estado.
- Java: se ha corregido el problema n.º 997 de GitHub donde el SDK de voz para Java 1.16 se bloqueaba al usar DialogServiceConnector sin una conexión de red o una clave de suscripción no válida.
- Se ha corregido un bloqueo al detener repentinamente el reconocimiento de voz (por ejemplo, mediante CTRL+C en la aplicación de consola).
- Java: se ha agregado una corrección para eliminar archivos temporales en Windows cuando se usa el SDK de voz para Java.
- Java: se ha corregido el problema n.º994 de GitHub donde al llamar a
DialogServiceConnector.stopListeningAsync
podía producirse un error. - Java: se ha corregido un problema del cliente en el inicio rápido del asistente virtual.
- JavaScript: se ha corregido el problema n.º 366 de GitHub donde
ConversationTranslator
producía el error "this.cancelSpeech no es una función". - JavaScript: se ha corregido el problema n.º 298 de GitHub donde el ejemplo "Get result as an in-memory stream" (Obtener resultado como una secuencia en memoria) reproducido sonaba muy alto.
- JavaScript: se ha corregido el problema n.º 350 de GitHub donde al llamar a
AudioConfig
podía producirse el error "ReferenceError: MediaStream no está definido". - JavaScript: se ha corregido una advertencia UnhandledPromiseRejection en Node.js en sesiones de larga duración.
Ejemplos
- Se ha actualizado la documentación de ejemplos de Unity para macOS aquí.
- Ahora hay un ejemplo de React Native para el servicio de reconocimiento de Voz de Azure AI disponible aquí.
SDK de Voz 1.16.0: versión marzo de 2021
Nota
El SDK de voz en Windows depende de Microsoft Visual C++ Redistributable compartido para Visual Studio 2015, 2017 y 2019. Descárguela aquí.
Nuevas características
- C++/C#/Java/Python: se ha pasado a la versión más reciente de GStreamer (1.18.3) para agregar compatibilidad con la transcripción de cualquier formato multimedia en Windows, Linux y Android. Consulte la documentación aquí.
- C++/C#/Java/Objective-C/Python: se ha agregado compatibilidad con la descodificación de TTS/audio sintetizado comprimidos en el SDK. Si establece el formato de audio de salida en PCM y GStreamer está disponible en el sistema, el SDK solicitará automáticamente el audio comprimido del servicio para ahorrar ancho de banda y descodificar el audio en el cliente. Para deshabilitar esta función, puede configurar
SpeechServiceConnection_SynthEnableCompressedAudioTransmission
afalse
. Detalles de C++, C#, Java, Objective-C, Python. - JavaScript: los usuarios de Node.js ya pueden usar la
AudioConfig.fromWavFileInput
API. Esto soluciona el problema de GitHub n.º 252. - C++/C#/Java/Objective-C/Python: se ha agregado el método
GetVoicesAsync()
para que TTS devuelva todas las voces de síntesis disponibles. Detalles de C++, C#, Java, Objective-C, Python. - C++/C#Java/JavaScript/Objective-C/Python: se ha agregado un evento
VisemeReceived
para la síntesis de voz y TTS para devolver la animación sincrónica de visema. Consulte la documentación aquí. - C++/C#/Java/JavaScript/Objective-C/Python: evento
BookmarkReached
agregado para TTS. Puede establecer marcadores en el SSML de entrada y obtener los desplazamientos de audio de cada marcador. Consulte la documentación aquí. - Java: se ha agregado compatibilidad con las API de Speaker Recognition. Consulte los detalles aquí.
- C++/C#/Java/JavaScript/Objective-C/Python: se han agregado dos nuevos formatos de audio de salida con el contenedor WebM para TTS (Webm16Khz16BitMonoOpus y Webm24Khz16BitMonoOpus). Se trata de formatos mejores para el streaming de audio con el códec Opus. Detalles de C++, C#, Java, JavaScript, Objective-C, Python.
- C++/C#/Java: se ha agregado compatibilidad con la recuperación del perfil de voz para el escenario de Speaker Recognition. Detalles de C++, C# y Java.
- C++/C#/Java/Objective-C/Python: se ha agregado compatibilidad con una biblioteca compartida independiente para el micrófono de audio y el control de altavoces, Esto permite al desarrollador usar el SDK en entornos que no tienen dependencias de biblioteca de audio necesarias.
- Objective-C/Swift: se ha agregado compatibilidad con el marco de módulos con encabezado umbrella. Esto permite al desarrollador importar el SDK de voz como un módulo en las aplicaciones de Objective-C/Swift de iOS/Mac. Esto soluciona el problema de GitHub n.º 452.
- Python: se ha agregado compatibilidad con Python 3.9 y la compatibilidad anulada con Python 3.5 por final de ciclo de vida de Python para 3.5.
Problemas conocidos
- C++/C#/Java:
DialogServiceConnector
no se puede utilizarCustomCommandsConfig
para tener acceso a una aplicación de comandos personalizados y, en su lugar, se producirá un error de conexión. Esto puede solucionarse agregando manualmente el id. de la aplicación a la solicitud conconfig.SetServiceProperty("X-CommandsAppId", "your-application-id", ServicePropertyChannel.UriQueryParameter)
. El comportamiento esperado deCustomCommandsConfig
se restaurará en la próxima versión.
Mejoras
- Como parte de nuestro esfuerzo para reducir el uso de la memoria y la superficie de memoria de disco del SDK de voz, los archivos binarios de Android ahora son entre un 3 % y un 5 % más pequeños.
- Además, se han mejorado la precisión y la legibilidad. Consulte también las secciones de nuestra documentación de referencia de C# aquí.
Corrección de errores
- JavaScript: los encabezados de archivos WAV grandes ahora se analizan correctamente (aumenta el sector del encabezado a 512 bytes). Esto soluciona el problema de GitHub n.º 962.
- JavaScript: problema corregido de temporización del micrófono si la secuencia de micro finaliza antes de detener el reconocimiento, solucionar un problema con el reconocimiento de voz no funciona en Firefox.
- JavaScript: ahora se controla correctamente la promesa de inicialización cuando el explorador fuerza el micrófono antes de que se complete la activación.
- JavaScript: se ha reemplazado la dependencia de la dirección URL con el análisis de direcciones URL. Esto soluciona el problema de GitHub n.º 264.
- Android: las devoluciones de llamada fijas no funcionan cuando
minifyEnabled
se establece en true. - C++/C#/Java/Objective-C/Python: se
TCP_NODELAY
establecerá correctamente en la E/S de socket subyacente para TTS a fin de reducir la latencia. - C++/C#Java/Python/Objective-C/Go: se corrigió un bloqueo ocasional cuando el reconocedor se destruyó justo después de iniciar un reconocimiento.
- C++/C#/Java: se ha corregido un bloqueo ocasional en la destrucción del reconocedor del hablante.
Ejemplos
- JavaScript: las muestras del explorador ya no requieren la descarga de archivos de biblioteca de JavaScript independiente.
SDK de Voz 1.15.0: Versión de enero de 2021
Nota
El SDK de voz en Windows depende de Microsoft Visual C++ Redistributable compartido para Visual Studio 2015, 2017 y 2019. Descárguela aquí.
Resumen de los aspectos destacados
- Menor superficie de memoria y disco para que el SDK sea más eficaz.
- Formatos de salida con una mayor fidelidad disponibles para la versión preliminar privada de la voz neuronal personalizada.
- Ahora el Reconocedor de intenciones puede devolverse más que la intención superior, lo que le ofrece la posibilidad de realizar una evaluación independiente de la intención del cliente.
- Ahora es más fácil configurar el asistente para voz o los bots, y puede hacer que deje de escuchar inmediatamente, y ejercer un mayor control sobre cómo responde a los errores.
- Se ha mejorado el rendimiento del dispositivo haciendo que la compresión sea opcional.
- Use el SDK de Voz en ARM/Arm64 de Windows.
- Se ha mejorado la depuración de nivel inferior.
- La característica de evaluación de la pronunciación está ahora más disponible.
- Varias correcciones de errores para solucionar los problemas que nuestros valiosos clientes han marcado en GitHub. Gracias. No deje de enviar sus comentarios.
Mejoras
- El SDK de Voz es ahora más eficaz y ligero. Se ha iniciado un esfuerzo en versiones múltiples para reducir el uso de memoria y la superficie del disco del SDK de voz. Como primer paso, se han reducido considerablemente los tamaños de archivo en las bibliotecas compartidas de la mayoría de las plataformas. En comparación con la versión 1.14:
- Las bibliotecas de Windows compatibles con UWP de 64 bits son aproximadamente un 30 % más pequeñas.
- En las bibliotecas de Windows de 32 bits todavía no se ha mejorado el tamaño.
- Las bibliotecas de Linux son entre un 20-25 % más pequeñas.
- Las bibliotecas de Android son entre un 3-5 % más pequeñas.
Nuevas características
- Todos: nuevos formatos de salida de 48 KHz disponibles para la versión preliminar privada de voz neuronal personalizada a través de la API de síntesis de voz de TTS: Audio48Khz192KBitRateMonoMp3, audio-48khz-192kbitrate-mono-mp3, Audio48Khz96KBitRateMonoMp3, audio-48khz-96kbitrate-mono-mp3, Raw48Khz16BitMonoPcm, raw-48khz-16bit-mono-pcm, Riff48Khz16BitMonoPcm, riff-48khz-16bit-mono-pcm.
- Todos: Voz personalizada también es más fácil de usar. Se ha agregado compatibilidad para configurar Voz personalizada mediante
EndpointId
(EndpointId
, C#, Java, JavaScript, Objective-C, Python). Antes de este cambio, los usuarios de Voz personalizada debían establecer la dirección URL del punto de conexión con el métodoFromEndpoint
. Ahora los clientes pueden usar el métodoFromSubscription
como si fueran voces precompiladas. Después, pueden especificar el id. de implementación mediante el establecimiento deEndpointId
. Esto simplifica la configuración de voces personalizadas. - C++/C#/Java/Objective-C/Python: consiga más intenciones que la principal con
IntentRecognizer
. Ahora admite la configuración del resultado JSON que contiene todas las intenciones y no solo la principal con el métodoLanguageUnderstandingModel FromEndpoint
mediante el parámetro de URIverbose=true
. Esto soluciona el problema nº 880 de GitHub. Vea aquí la documentación actualizada. - C++/C#/Java: haga que el asistente para voz o el bot dejen de escuchar de forma inmediata.
DialogServiceConnector
(C++, C#, Java) ahora tiene un métodoStopListeningAsync()
para acompañar aListenOnceAsync()
. Esto detiene de forma inmediata la captura de audio y espera correctamente un resultado, lo que lo convierte en perfecto para su uso con escenarios de pulsación de botones "Detener ahora". - C++/C#/Java/JavaScript: Haga que el asistente para voz o el bot reaccione mejor a los errores del sistema subyacentes.
DialogServiceConnector
(C++, C#, Java, JavaScript) ahora tiene un nuevo controlador de eventosTurnStatusReceived
. Estos eventos opcionales se corresponden con todas las resolucionesITurnContext
del bot y notificarán los errores de ejecución cuando se produzcan, por ejemplo, como resultado de una excepción no controlada, un tiempo de espera o una caída de la red entre Direct Line Speech y el bot.TurnStatusReceived
facilita la respuesta a las condiciones de error. Por ejemplo, si un bot tarda demasiado en una consulta de la base de datos de back-end (por ejemplo, al buscar un producto),TurnStatusReceived
permite que el cliente sepa que tiene que volver a preguntar con "Lo sentimos, no lo he entendido, vuelva a intentarlo" o algo similar. - C++/C# : Use el SDK de Voz en más plataformas. Ahora el paquete NuGet del SDK de Voz es compatible con los archivos binarios nativos de escritorio ARM/Arm64 de Windows (UWP ya lo era antes), con el fin de que el SDK de Voz sea más útil en más tipos de máquinas.
- Java:
DialogServiceConnector
ahora tiene un métodosetSpeechActivityTemplate()
que antes se había excluido accidentalmente del lenguaje. Esto equivale a establecer la propiedadConversation_Speech_Activity_Template
y solicitará que todas las actividades futuras de Bot Framework originadas por el servicio Direct Line Speech combinen el contenido proporcionado en sus cargas de JSON. - Java: se ha mejorado la depuración de bajo nivel. Ahora la clase
Connection
tiene un eventoMessageReceived
, similar a otros lenguajes de programación (C++, C#). Este evento proporciona acceso de bajo nivel a los datos entrantes del servicio y puede ser útil para tareas de diagnóstico y depuración. - JavaScript: configuración más sencilla para los asistentes de voz y bots mediante
BotFrameworkConfig
, que ahora tiene los métodos de fábricafromHost()
yfromEndpoint()
que simplifican el uso de ubicaciones de servicio personalizadas frente a la configuración manual de propiedades. También se ha estandarizado la especificación opcional debotId
para usar un bot no predeterminado en los generadores de configuración. - JavaScript: Se ha mejorado el rendimiento del dispositivo mediante la propiedad de control de cadena agregada para la compresión de WebSocket. Por motivos de rendimiento, se ha deshabilitado la compresión de WebSocket de forma predeterminada. Se puede volver a habilitar en el caso de escenarios de ancho de banda bajo. Más detalles aquí. Esto soluciona el problema de GitHub n.º 242.
- JavaScript: Se ha agregado compatibilidad con la evaluación de la pronunciación para permitir la evaluación de la pronunciación de voz. Vea este inicio rápido.
Corrección de errores
- Todos (excepto JavaScript): Se ha corregido una regresión en la versión 1.14, en la que el reconocedor asignaba demasiada memoria.
- C++: se ha corregido un problema de recolección de elementos no utilizados con
DialogServiceConnector
, lo que soluciona el problema de GitHub n.º 794. - C# : Se ha corregido un problema con el cierre de subprocesos que provocaba el bloqueo de los objetos durante aproximadamente un segundo al eliminarlos.
- C++/C#/Java: se ha corregido una excepción que impide que una aplicación establezca el token de autorización de voz o la plantilla de actividad más de una vez en un objeto
DialogServiceConnector
. - C++/C#/Java: Se ha corregido un bloqueo del reconocedor debido a una condición de carrera en el desmontaje.
- JavaScript:
DialogServiceConnector
no respetaba anteriormente el parámetrobotId
opcional especificado en las fábricas deBotFrameworkConfig
. Por esto era necesario establecer el parámetro de cadena de consultabotId
manualmente para usar un bot no predeterminado. El error se ha corregido y se respetarán y usarán los valoresbotId
proporcionados para los generadores deBotFrameworkConfig
, incluidas las nuevas adiciones defromHost()
yfromEndpoint()
. Esto también se aplica al parámetroapplicationId
paraCustomCommandsConfig
. - JavaScript: Se ha corregido la incidencia 881 de GitHub, lo que permite volver a usar el objeto de reconocedor.
- JavaScript: se ha corregido un problema que hacía que el SKD enviara
speech.config
varias veces en una sesión de TTS, lo que desperdiciaba ancho de banda. - JavaScript: se ha simplificado el control de errores en la autorización del micrófono, lo que permite que se muestre un mensaje más descriptivo cuando el usuario no ha permitido la entrada del micrófono en el explorador.
- JavaScript: se ha corregido el problema de GitHub n.º 249 en el que los errores de tipo en
ConversationTranslator
yConversationTranscriber
generaban un error de compilación para los usuarios de TypeScript. - Objective-C: Se ha corregido un problema por el que se producía un error en la compilación de GStreamer para iOS en Xcode 11.4, lo que soluciona el problema de GitHub n.º 911.
- Python: se ha corregido el problema 870 de GitHub y se quita "DeprecationWarning: el módulo imp ha quedado en desuso en favor de importlib".
Ejemplos
- Ahora en el ejemplo de archivo para el explorador de JavaScript se usan archivos para el reconocimiento de voz. Esto soluciona el problema de GitHub n.º 884.
SDK de voz 1.14.0: Versión de octubre de 2020
Nota
El SDK de voz en Windows depende de Microsoft Visual C++ Redistributable compartido para Visual Studio 2015, 2017 y 2019. Descárguela aquí.
Nuevas características
- Linux: se agregó compatibilidad con Debian 10 y Ubuntu 20.04 LTS.
- Python/Objective-C: se agregó compatibilidad para la API de
KeywordRecognizer
. La documentación estará aquí. - C++/Java/C#: se agregó compatibilidad para establecer cualquier
HttpHeader
par clave-valor a través deServicePropertyChannel::HttpHeader
. - JavaScript: se agregó compatibilidad con la API de
ConversationTranscriber
. Consulte la documentación aquí. - C++/C#: se agregó el nuevo método
AudioDataStream FromWavFileInput
(para leer archivos .WAV) aquí (C++) y aquí (C#). - C++/C#/Java/Python/Objective-C/Swift: se agregó un método
stopSpeakingAsync()
para detener la síntesis de texto a voz. Lea la documentación de referencia aquí (C++), aquí (C#), aquí (Java), aquí (Python) y aquí (Objective-C/Swift). - C#, C++, Java: se agregó la función
FromDialogServiceConnector()
a la claseConnection
, que se puede utilizar para supervisar los eventos de conexión y desconexión deDialogServiceConnector
. Lea la documentación de referencia aquí (C#), aquí (C++) y aquí (Java). - C++/C#/Java/Python/Objective-C/Swift: se ha agregado compatibilidad con la evaluación de la pronunciación, que evalúa la pronunciación de la voz y ofrece a los oradores información sobre la precisión y la fluidez del audio hablado. Consulte la documentación aquí.
Cambio importante
- JavaScript: PullAudioOutputStream.read() tiene un cambio del tipo de retorno de una promesa interna a una promesa de JavaScript nativa.
Correcciones de errores
- En todos: se corrigió la regresión de 1.13 en
SetServiceProperty
, donde se omitían los valores con determinados caracteres especiales. - C# : se corrigieron ejemplos de la consola de Windows en Visual Studio 2019 en los que no se podían encontrar los archivos DLL nativos.
- C#: se corrigió el bloqueo con la administración de memoria cuando se usaba la secuencia como entrada
KeywordRecognizer
. - ObjectiveC/Swift: se corrigió el bloqueo con la administración de memoria cuando se usaba la secuencia como entrada del reconocedor.
- Windows: se corrigió el problema de coexistencia con BT HFP/A2DP en UWP.
- JavaScript: se corrigió la asignación de identificadores de sesión para mejorar el registro y la ayuda en las correlaciones internas de depuración y servicio.
- JavaScript: se agregó una corrección para que
DialogServiceConnector
deshabilite las llamadas aListenOnce
después de realizar la primera llamada. - JavaScript: se corrigió un problema que hacía que la salida de resultados solo fuera "simple".
- JavaScript: se corrigió un problema de reconocimiento continuo en Safari en macOS.
- JavaScript: mitigación de la carga de CPU en escenarios de procesamiento elevado de solicitudes.
- JavaScript: se permite el acceso a los detalles del resultado de la inscripción de perfil de voz.
- JavaScript: se agregó una corrección para el reconocimiento continuo en
IntentRecognizer
. - C++/C#/Java/Python/Swift/ObjectiveC: se corrigió una dirección URL incorrecta para australiaeast y brazilsouth en
IntentRecognizer
. - C++/C#: se agregó
VoiceProfileType
como argumento al crear un objetoVoiceProfile
. - C++/C#/Java/Python/Swift/ObjectiveC: se corrigió el argumento potencial
SPX_INVALID_ARG
al intentar leerAudioDataStream
desde una posición determinada. - IOS: se corrigió un bloqueo con el reconocimiento de voz en Unity.
Ejemplos
- ObjectiveC: se agregó un ejemplo para el reconocimiento de palabras clave aquí.
- C#/JavaScript: se agregó un inicio rápido para la transcripción de conversaciones aquí (C#) y aquí (JavaScript).
- C++/C#/Java/Python/Swift/ObjectiveC: se ha agregado un ejemplo de evaluación de la pronunciación aquí
Problema conocido
- El certificado DigiCert Global Root G2 no se admite de forma predeterminada en HoloLens 2 y Android 4.4 (KitKat) y debe agregarse al sistema para que el SDK de voz sea funcional. El certificado se agregará a las imágenes del sistema operativo de HoloLens 2 en un futuro próximo. Los clientes de Android 4.4 deben agregar el certificado actualizado al sistema.
Pruebas reducidas ante la COVID-19
Debido al trabajo de forma remota en las últimas semanas, no pudimos realizar tantas pruebas manuales de comprobación de como normalmente hacemos. No hemos hecho ningún cambio que creemos que pueda haber generado algún error y se han superado todas las pruebas automatizadas. En el improbable caso de que falte algo, háganoslo saber en GitHub.
Y sigan sanos.
SDK de voz 1.13.0: versión de julio de 2020
Nota
El SDK de voz en Windows depende de Microsoft Visual C++ Redistributable compartido para Visual Studio 2015, 2017 y 2019. Descárguelo e instálelo aquí.
Nuevas características
- C# : se ha agregado compatibilidad para la transcripción de conversaciones asincrónicas. Consulte la documentación aquí.
- JavaScript: se ha agregado compatibilidad con Speaker Recognition tanto para el explorador como para Node.js.
- JavaScript: se ha agregado compatibilidad para la identificación del idioma. Consulte la documentación aquí.
- Objective-C: se ha agregado compatibilidad para la conversación entre varios dispositivos y la transcripción de conversaciones.
- Python: se ha agregado compatibilidad con audio comprimido para Python en Windows y Linux. Consulte la documentación aquí.
Corrección de errores
- Todos: se ha corregido un problema que provocaba que KeywordRecognizer no hiciera avanzar los flujos después de un reconocimiento.
- Todos: se ha corregido un problema que provocaba que el flujo obtenido de KeywordRecognitionResult no incluyera la palabra clave.
- Todos: se ha corregido un problema por el que SendMessageAsync no enviaba realmente el mensaje a través de la conexión después de que hubiese terminado la espera de los usuarios.
- Todos: se ha corregido un bloqueo en las API de Speaker Recognition cuando los usuarios llamaban al método VoiceProfileClient::SpeakerRecEnrollProfileAsync varias veces y no esperaban a que las llamadas finalizaran.
- Todos: se ha corregido la habilitación del registro de archivos en las clases VoiceProfileClient y SpeakerRecognizer.
- JavaScript: se ha corregido un problema con la limitación al minimizar el explorador.
- JavaScript: se ha corregido un problema con la fuga de memoria en los flujos.
- JavaScript: se ha agregado almacenamiento en caché para las respuestas de OCSP de NodeJS.
- Java: se ha corregido un problema que provocaba que los campos BigInteger devolvieran siempre 0.
- iOS: Se ha corregido un problema con la publicación de aplicaciones basadas en el SDK de Voz en iOS App Store.
Ejemplos
- C++ : se ha agregado código de ejemplo para Speaker Recognition aquí.
Pruebas reducidas ante la COVID-19
Debido al trabajo de forma remota en las últimas semanas, no pudimos realizar tantas pruebas manuales de comprobación de como normalmente hacemos. No hemos hecho ningún cambio que creemos que pueda haber generado algún error y se han superado todas las pruebas automatizadas. En el improbable caso de que falte algo, háganoslo saber en GitHub.
Y sigan sanos.
SDK de voz 1.12.1: Versión de junio de 2020
Nuevas características
- C#, y C++ : Versión preliminar de Speaker Recognition: Esta característica permite la identificación del hablante (¿quién habla?) y la verificación del hablante (¿es quien dice ser?). Consulte la documentación de información general.
Corrección de errores
- C#, C++: se ha corregido la grabación del micrófono que no funcionaba en la versión 1.12 de Speaker Recognition.
- JavaScript: correcciones para la conversión de texto a voz en Firefox y Safari, tanto en macOS como en iOS.
- Corrección del bloqueo por infracción de acceso del comprobador de aplicaciones Windows en la transcripción de conversaciones cuando se usa el flujo de ocho canales.
- Corrección del bloqueo de la violación del acceso al comprobador de aplicaciones Windows en la traducción de conversaciones entre varios dispositivos.
Ejemplos
- C#: código de ejemplo de Speaker Recognition.
- C#: código de ejemplo de Speaker Recognition.
- Java: ejemplo de código para el reconocimiento de la intención en Android.
Pruebas reducidas ante la COVID-19
Debido al trabajo de forma remota en las últimas semanas, no pudimos realizar tantas pruebas manuales de comprobación de como normalmente hacemos. No hemos hecho ningún cambio que creemos que pueda haber generado algún error y se han superado todas las pruebas automatizadas. En el improbable caso de que falte algo, háganoslo saber en GitHub.
Y sigan sanos.
SDK de voz 1.12.0: Versión de mayo de 2020
Nuevas características
- Go: nueva compatibilidad del lenguaje Go con el reconocimiento de voz y el asistente para voz personalizada. Configure el entorno de desarrollo aquí. Para ver el código de ejemplo, consulte la sección Ejemplos más adelante.
- JavaScript: se ha agregado compatibilidad con el explorador para texto a voz. Consulte la documentación aquí.
- C++, C#, Java: nuevo objeto
KeywordRecognizer
y las API compatibles con las plataformas Windows, Android, Linux e iOS. Consulte la documentación aquí. Para ver el código de ejemplo, consulte la sección Ejemplos más adelante. - Java: Se ha agregado la conversación con varios dispositivos con compatibilidad con traducción. Vea el documento de referencia aquí.
Mejoras y optimizaciones
- JavaScript: Implementación optimizada del micrófono del explorador para mejorar la precisión del reconocimiento de voz.
- Java: enlaces refactorizados mediante la implementación directa de JNI sin SWIG. Este cambio reduce en 10 veces el tamaño de los enlaces de todos los paquetes de Java usados para Windows, Android, Linux y Mac, y facilita el desarrollo de la implementación de Java del SDK de voz.
- Linux: Documentación de compatibilidad actualizada con las notas específicas de RHEL 7 más recientes.
- Se ha mejorado la lógica de conexión para intentar conectarse varias veces cuando se producen errores de servicio y de red.
- Se ha actualizado la página de inicio rápido de Voz de portal.azure.com para ayudar a los desarrolladores a realizar el siguiente paso en el recorrido de Voz de Azure AI.
Corrección de errores
- C#, Java: Se ha corregido un problema con la carga de bibliotecas de SDK en Linux ARM (de 32 y 64 bits).
- C#: se ha corregido la cancelación explícita de identificadores nativos para los objetos TranslationRecognizer, IntentRecognizer y Connection.
- C# : Se ha corregido la administración de la duración de la entrada de audio para el objeto ConversationTranscriber.
- Se ha corregido un problema por el que la razón del resultado de
IntentRecognizer
no se establecía correctamente al reconocer la intención de frases simples. - Se ha corregido un problema por el que el desplazamiento del resultado de
SpeechRecognitionEventArgs
no se establecía correctamente. - Se ha corregido una condición de carrera en la que el SDK intentaba enviar un mensaje de red antes de abrir la conexión de WebSocket. Era reproducible para
TranslationRecognizer
al agregar participantes. - Se han corregido las fugas de memoria en el motor de reconocedor de palabras clave.
Ejemplos
- Go: Se han agregado inicios rápidos para el reconocimiento de voz y el asistente de Voz personalizada. Encuentre el código de ejemplo aquí.
- JavaScript: se han agregado inicios rápidos para Texto a voz, Traducción y Reconocimiento de la intención.
- Ejemplos de reconocimiento de palabras clave para C# y Java (Android).
Pruebas reducidas ante la COVID-19
Debido al trabajo de forma remota en las últimas semanas, no pudimos realizar tantas pruebas manuales de comprobación de como normalmente hacemos. No hemos hecho ningún cambio que creemos que pueda haber generado algún error y se han superado todas las pruebas automatizadas. Si falta algo, háganoslo saber en GitHub.
Y sigan sanos.
SDK de voz 1.11.0: Versión de marzo de 2020
Nuevas características
- Linux: Se ha agregado compatibilidad con Red Hat Enterprise Linux (RHEL)/CentOS 7 x64.
- Linux: se ha agregado compatibilidad con C# de .Net Core en Linux ARM32 y Arm64. Obtenga más información aquí.
- C#, C++: se ha agregado
UtteranceId
enConversationTranscriptionResult
, un identificador coherente en todos los intermedios y el resultado final del reconocimiento de voz. Detalles de C#, C++. - Python: se ha agregado compatibilidad con
Language ID
Consulte speech_sample.py en el repositorio de GitHub. - Windows: se ha agregado compatibilidad con el formato de entrada de audio comprimido en la plataforma Windows para todas las aplicaciones de consola win32. Consulte los detalles aquí.
- JavaScript: compatibilidad con síntesis de voz (texto a voz) en NodeJS. Obtenga más información aquí.
- JavaScript: se han agregado nuevas API para habilitar la inspección de todos los mensajes enviados y recibidos. Obtenga más información aquí.
Corrección de errores
- C#, C++: se ha corregido un problema y ahora
SendMessageAsync
envía el mensaje binario como tipo binario. Detalles de C#, C++. - C#, C++: se ha corregido un problema por el cual el uso del evento
Connection MessageReceived
puede causar un bloqueo si se eliminaRecognizer
antes del objetoConnection
. Detalles de C#, C++. - Android: el tamaño del búfer del audio desde el micrófono ha disminuido de 800 ms a 100 ms para mejorar la latencia.
- Android: se ha corregido un problema con el emulador de Android para x86 en Android Studio.
- JavaScript: se ha agregado compatibilidad con regiones en China con la API
fromSubscription
. Consulte los detalles aquí. - JavaScript: se ha agregado más información para los errores de conexión de NodeJS.
Ejemplos
- Unity: se ha corregido el ejemplo público de reconocimiento de la intención, en el que se produjo un error en la importación de JSON de LUIS. Consulte los detalles aquí.
- Python: Ejemplo agregado para
Language ID
. Consulte los detalles aquí.
Pruebas abreviadas de COVID-19: Debido al trabajo de forma remota en las últimas semanas, no pudimos realizar tantas pruebas manuales de comprobación de dispositivos como normalmente hacemos. Por ejemplo, no hemos podido probar la entrada y salida del micrófono en Linux, iOS y macOS. No hemos hecho ningún cambio que creemos que pudiera haber producido algún error en estas plataformas y todas las pruebas automatizadas han pasado. En el improbable caso de que falte algo, háganoslo saber en GitHub.
Gracias por su asistencia continuada. Como siempre, publique las preguntas o comentarios en GitHub o en Stack Overflow.
Y sigan sanos.
Speech SDK 1.10.0: versión de febrero de 2020
Nuevas características
- Se han agregado paquetes de Python para admitir la nueva versión 3.8 de Python.
- Compatibilidad con Red Hat Enterprise Linux (RHEL) y CentOS 8 x64 (C++, C#, Java y Python).
Nota
Los clientes deben configurar OpenSSL según estas instrucciones.
- Compatibilidad de Linux ARM32 con Debian y Ubuntu.
- DialogServiceConnector ahora admite un parámetro opcional "bot ID" en BotFrameworkConfig. Este parámetro permite el uso de varios bots de Direct Line Speech con un solo recurso de voz. Si no se especifica el parámetro, se utilizará el bot predeterminado (el que se determine en la página de configuración del canal de Direct Line Speech).
- DialogServiceConnector ahora tiene una propiedad SpeechActivityTemplate. Direct Line Speech usará el contenido de esta cadena JSON para rellenar previamente una amplia variedad de campos admitidos en todas las actividades que llegan a un bot de Direct Line Speech, incluidas las actividades generadas automáticamente en respuesta a eventos como el reconocimiento de voz.
- TTS ahora usa la clave de suscripción para la autenticación, lo que reduce la latencia del primer byte del primer resultado de la síntesis después de crear un sintetizador.
- Se han actualizado los modelos de reconocimiento de voz de 19 configuraciones regionales, con lo que se ha logrado una reducción media de la tasa de errores de palabras del 18,6 % (es-ES, es-MX, FR-CA, fr-FR, TI-IT, ja-JP, ko-KR, pt-BR, zh-CN, ZH-HK, NB-NO, fi-FL, ru-RU, pl-PL, CA-ES, zh-TW, TH-TH, pt-PT y tr-TR). Los nuevos modelos aportan mejoras significativas en varios dominios, entre los que se incluyen los escenarios de dictado, transcripción del centro de llamadas e indexación de vídeo.
Corrección de errores
- Corrección del error por el que la transcripción de conversaciones no esperaba correctamente en las API de Java
- Revisión del emulador de Android x86 para Xamarin problema de GitHub
- Adición de métodos Property (Get|Set) a AudioConfig
- Corrección de un error de TTS en el que audioDataStream no se puede detener cuando se produce un error en la conexión
- El uso de un punto de conexión sin una región provocaría errores en el USP para el traductor de conversaciones
- La generación de identificadores en las aplicaciones universales de Windows ahora usa un algoritmo de GUID único; cuyo valor predeterminado anterior y no intencionado es una implementación con código auxiliar que a menudo producía colisiones en conjuntos de interacciones grandes.
Ejemplos
- Muestra de Unity con la que usar Speech SDK Micrófono de Unity y streaming en modo de inserción
Otros cambios
Acerca del SDK de Voz 1.9.0: Versión de enero de 2020
Nuevas características
- Conversación entre varios dispositivos: conecte varios dispositivos a la misma conversación basada en texto o en voz y, opcionalmente, traduzca los mensajes que se envían entre ellos. Más información en este artículo.
- Se ha agregado compatibilidad con el reconocimiento de palabras clave para el paquete
.aar
de Android y se ha agregado compatibilidad con las versiones x86 y x64. - Objective-C: se han agregado los métodos
SendMessage
ySetMessageProperty
al objetoConnection
. Consulte la documentación aquí. - La API de C++ para TTS ahora admite
std::wstring
como entrada de texto de síntesis, lo que elimina la necesidad de convertir un valor wstring en string antes de pasarlo al SDK. Consulte los detalles aquí. - C#: El identificador de idioma y la configuración del idioma de origen ya están disponibles.
- JavaScript: se ha agregado una característica al objeto
Connection
para pasar por los mensajes personalizados desde el servicio de Voz como objetoreceivedServiceMessage
de devolución de llamada. - JavaScript: se ha agregado compatibilidad con
FromHost API
para facilitar su uso con contenedores locales y nubes soberanas. Consulte la documentación aquí. - JavaScript: ahora se admite
NODE_TLS_REJECT_UNAUTHORIZED
gracias a una contribución deNODE_TLS_REJECT_UNAUTHORIZED
. Consulte los detalles aquí.
Cambios importantes
OpenSSL
se ha actualizado a la versión 1.1.1b y está vinculada estáticamente a la biblioteca principal del SDK de Voz para Linux. Esto puede producir una interrupción si la bandeja de entradaOpenSSL
no se ha instalado en el directorio/usr/lib/ssl
del sistema. Consulte nuestra documentación en los documentos sobre el SDK de Voz para solucionar el problema.- Se ha cambiado el tipo de datos devuelto para C#
WordLevelTimingResult.Offset
deint
along
para permitir el acceso aWordLevelTimingResults
cuando los datos de voz duren más de 2 minutos. PushAudioInputStream
yPullAudioInputStream
envían ahora información de los encabezados WAV al servicio de Voz basado enAudioStreamFormat
, que se especificó como opción cuando se crearon. Los clientes deben utilizar ahora el formato de entrada de audio admitido. Cualquier otro formato obtendrá resultados de reconocimiento no óptimos o podría causar otros problemas.
Corrección de errores
- Consulte la actualización de
OpenSSL
en cambios importantes anteriores. Hemos corregido un bloqueo intermitente y un problema de rendimiento (contención de bloqueo bajo carga alta) en Linux y Java. - Java: Se han realizado mejoras en la clausura de objetos en escenarios de alta simultaneidad.
- Se ha reestructurado nuestro paquete NuGet. Se han eliminado las tres copias de
Microsoft.CognitiveServices.Speech.core.dll
yMicrosoft.CognitiveServices.Speech.extension.kws.dll
en las carpetas lib, con lo cual el paquete NuGet es ahora más pequeño y su descarga es más rápida, y se han agregado los encabezados necesarios para compilar algunas aplicaciones nativas en C++. - Aquí puede encontrar ejemplos corregidos del inicio rápido. Estos estaban saliendo sin mostrar la excepción "No se encontró el micrófono" en Linux, macOS y Windows.
- Se ha corregido un bloqueo del SDK por el que se producían resultados de reconocimientos de voz largos en determinadas rutas de acceso al código como en este ejemplo.
- Se ha corregido un error en la implementación del SDK en el entorno de Azure Web App para solucionar este problema del cliente.
- Se ha corregido un error de TTS al usar varias etiquetas
<voice>
o<audio>
para solucionar<voice>
. - Se ha corregido un error TTS 401 cuando se recupera el SDK del estado suspendido.
- JavaScript: Se ha corregido una importación circular de datos de audio gracias a una contribución de euirim.
- JavaScript: se ha agregado compatibilidad para establecer las propiedades del servicio, como se hizo en 1.7.
- JavaScript: se ha corregido un problema por el que un error de conexión podría provocar intentos de reconexión de WebSocket continuos e incorrectos.
Ejemplos
- Se ha agregado el ejemplo de reconocimiento de palabras clave para Android aquí.
- Se ha agregado el ejemplo de TTS para el escenario de servidor aquí.
- Se han agregado inicios rápidos de conversación entre varios dispositivos para C# y C++ aquí.
Otros cambios
- Se ha optimizado el tamaño de la biblioteca principal del SDK en Android.
- El SDK de las versiones 1.9.0 y posteriores admite los tipos
int
ystring
en el campo Versión de la firma de voz para la transcripción de conversaciones.
SDK de Voz 1.8.0: Versión de noviembre de 2019
Nuevas características
- Se ha agregado una API
FromHost()
para facilitar su uso con contenedores locales y nubes soberanas. - Se ha agregado la identificación del idioma de origen para el reconocimiento de voz (en Java y C++)
- Se ha agregado el objeto
SourceLanguageConfig
para el reconocimiento de voz, que se usa para especificar los idiomas de origen esperados (en Java y C++). - Se ha agregado compatibilidad con
KeywordRecognizer
en Windows (UWP), Android e iOS mediante los paquetes de NuGet y Unity. - Se ha agregado la API de Java de conversación remota para realizar la transcripción de conversaciones en lotes asincrónicos.
Cambios importantes
- Las funcionalidades de transcripción de conversaciones se han movido al espacio de nombres
Microsoft.CognitiveServices.Speech.Transcription
. - Partes de los métodos de transcripción de conversaciones se han movido a la nueva clase
Conversation
. - Compatibilidad eliminada para iOS de 32 bits (ARMv7 y x86)
Corrección de errores
- Se ha corregido un bloqueo si se usa
KeywordRecognizer
local sin una clave de suscripción válida al servicio de voz.
Ejemplos
- Ejemplo de Xamarin para
KeywordRecognizer
- Ejemplo de Unity para
KeywordRecognizer
- Ejemplos de C++ y Java de identificación automática del idioma de origen.
SDK de voz 1.7.0: versión de septiembre de 2019
Nuevas características
- Compatibilidad con la versión beta agregada para Xamarin en la Plataforma universal de Windows (UWP), Android e iOS
- Compatibilidad con iOS agregada para Unity
- Se ha agregado compatibilidad de entrada
Compressed
para ALaw, Mulaw, FLAC, en Android, iOS y Linux. - Se ha agregado
SendMessageAsync
en la claseConnection
para enviar un mensaje al servicio. - Se ha agregado
SetMessageProperty
en la claseConnection
para establecer la propiedad de un mensaje. - TTS agregó enlaces para Java (JRE y Android), Python, Swift y Objective-C.
- TTS agregó compatibilidad de reproducción para macOS, iOS y Android
- Se ha agregado información de "límite de palabras" para TTS
Corrección de errores
- Se ha corregido un problema de compilación de IL2CPP en Unity 2019 para Android
- Se ha corregido un problema con los encabezados con formato incorrecto en la entrada de archivo WAV que se procesa de forma incorrecta
- Se ha corregido un problema con UUID que no es único en algunas propiedades de conexión
- Se han corregido algunas advertencias sobre los especificadores de nulabilidad en los enlaces SWIFT (puede que se requieran pequeños cambios en el código)
- Se ha corregido un error que provocaba que las conexiones de WebSocket se cerraran de manera incorrecta en la carga de red
- Se ha corregido un problema en Android que a veces provoca que
DialogServiceConnector
use identificadores de impresión duplicados. - Se han introducido mejoras en la estabilidad de las conexiones entre interacciones multiproceso y la generación de informes de errores (a través de eventos
Canceled
) cuando se producen conDialogServiceConnector
. - Los inicios de sesión de
DialogServiceConnector
ahora proporcionarán eventos correctamente, incluso si se llama aListenOnceAsync()
durante una operaciónStartKeywordRecognitionAsync()
activa. - Se ha resuelto un bloqueo asociado a la recepción de actividades
DialogServiceConnector
.
Ejemplos
- Inicio rápido para Xamarin
- Se ha actualizado el inicio rápido de CPP con información de Arm64 de Linux
- Se ha actualizado el inicio rápido de Unity con información de iOS
SDK de Voz 1.6.0: versión de junio de 2019
Ejemplos
- Ejemplos de inicio rápido para Texto a voz en UWP y Unity
- Ejemplo de inicio rápido para Swift en iOS
- Ejemplos de Unity para Traducción y Reconocimiento de la intención comunicativa y Voz
- Ejemplos de inicios rápidos actualizados para
DialogServiceConnector
Mejoras y cambios
- Espacio de nombres de cuadro de diálogo:
- El nombre de
SpeechBotConnector
ha cambiado aDialogServiceConnector
- El nombre de
BotConfig
ha cambiado aDialogServiceConfig
BotConfig::FromChannelSecret()
se ha reasignado aDialogServiceConfig::FromBotSecret()
- Todos los clientes de Voz de Direct Line existentes siguen siendo compatibles después del cambio de nombre
- El nombre de
- Actualización del adaptador REST de TTS para admitir una conexión persistente de proxy
- Un mejor mensaje de error cuando se pasa una región no válida
- Swift/Objective-C:
- Mejores informes de errores: los métodos que pueden generar un error ahora se encuentran en dos versiones: una que expone un objeto
NSError
para el control de errores y una que genera una excepción. La primera se expone a Swift. Este cambio requiere adaptaciones en el código Swift existente. - Mejor control de eventos
- Mejores informes de errores: los métodos que pueden generar un error ahora se encuentran en dos versiones: una que expone un objeto
Corrección de errores
- Corrección de TTS: donde el futuro de
SpeakTextAsync
se devolvió sin esperar al fin de la representación del audio - Corrección para la serialización de las cadenas en C# para permitir la compatibilidad total con idiomas
- Corrección del problema de las aplicaciones centrales de .NET para cargar la biblioteca principal con un marco de destino net461 en ejemplos
- Corrección de problemas ocasionales para implementar bibliotecas nativas en la carpeta de salida en los ejemplos
- Corrección para cerrar el socket web de manera confiable
- Corrección de un posible bloqueo al abrir una conexión con sobrecarga en Linux
- Corrección de metadatos faltantes en el paquete de marcos para macOS
- Corrección de problemas con
pip install --user
en Windows
Speech SDK 1.5.1
Se trata de una versión de corrección de errores y solo afecta al SDK nativo o administrado. No afecta a la versión de JavaScript del SDK.
Corrección de errores
- Corrección de FromSubscription cuando se usa con la transcripción de la conversación.
- Corrección de errores en la detección de palabras clave en los asistentes para voz.
Speech SDK 1.5.0 Versión de mayo de 2019
Nuevas características
- La detección de palabras clave (KWS) ahora está disponible para Windows y Linux. La funcionalidad 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.
- La funcionalidad de sugerencia de frases está disponible a través del SDK. Para más información, consulte esta página.
- La funcionalidad de transcripción de conversaciones está disponible a través del SDK.
- Compatibilidad agregada con los asistentes para voz mediante el canal Direct Line Speech.
Ejemplos
- Se han agregado ejemplos para nuevas características o nuevos servicios admitidos por el SDK.
Mejoras y cambios
- Se han agregado varias propiedades de reconocimiento para ajustar el comportamiento del servicio o los resultados del servicio (por ejemplo, enmascaramiento de palabras soeces etc.).
- Ahora puede configurar el reconocimiento a través de las propiedades de configuración estándar, incluso si ha creado el valor de
FromEndpoint
del reconocedor. - Objective-C: se agregó la propiedad
OutputFormat
aSPXSpeechConfiguration
. - El SDK ahora admite Debian 9 como una distribución de Linux.
Corrección de errores
- Se ha corregido un problema donde el recurso de altavoz se destruía demasiado pronto en la conversión de texto a voz.
Speech SDK 1.4.2
Se trata de una versión de corrección de errores y solo afecta al SDK nativo o administrado. No afecta a la versión de JavaScript del SDK.
Speech SDK 1.4.1
Esta es una versión solo para JavaScript. No se agregó ninguna característica. Se realizaron las siguientes correcciones:
- Se impide que el paquete web cargue https-proxy-agent.
Speech SDK 1.4.0 Versión de abril de 2019
Nuevas características
- El SDK admite ahora el servicio de Texto a voz en versión beta. Se admite en Windows y Linux Desktop desde C++ y C#. Para más información, consulte la información general sobre Texto a voz.
- El SDK ahora admite archivos de audio MP3 y Opus/OGG como archivos de entrada de secuencia. Esta característica solo está disponible en Linux desde C++ y C# y está actualmente en versión beta (más detalles aquí).
- Speech SDK para Java, .NET Core, C++ y Objective-C ha conseguido compatibilidad con macOS. La compatibilidad de Objective-C con macOS está actualmente en versión beta.
- iOS: Speech SDK para iOS (Objective-C) ahora también se publica como una instancia de CocoaPod.
- JavaScript: compatibilidad con micrófono no predeterminada como dispositivo de entrada.
- JavaScript: compatibilidad con servidores proxy para Node.js.
Ejemplos
- se han agregado ejemplos para usar Speech SDK con C++ y con Objective-C en macOS.
- Se han agregado ejemplos que muestran el uso del servicio de Texto a voz.
Mejoras y cambios
- Python: ahora se exponen propiedades adicionales de los resultados del reconocimiento mediante la propiedad
properties
. - Para la compatibilidad adicional con el desarrollo y la depuración, puede redirigir la información de registro y diagnóstico del SDK a un archivo de registro (más información aquí).
- JavaScript: mejora del rendimiento del procesamiento de audio.
Corrección de errores
- Mac/iOS: se corrigió un error que daba lugar a una larga espera cuando no se podía establecer una conexión con el servicio de Voz.
- Python: mejora del control de errores en los argumentos de las devoluciones de llamada de Python.
- JavaScript: se corrigieron los informes de estado erróneos de la voz que finalizaban en RequestSession.
Speech SDK 1.3.1 Actualización de febrero de 2019
Se trata de una versión de corrección de errores y solo afecta al SDK nativo o administrado. No afecta a la versión de JavaScript del SDK.
Corrección de error
- Se ha corregido una fuga de memoria cuando se usa la entrada de micrófono. No afecta a la entrada de archivos o basada en secuencias.
Speech SDK 1.3.0: versión de febrero de 2019
Nuevas características
- El SDK de voz admite la selección del micrófono de entrada mediante la clase
AudioConfig
. Esto permite transmitir datos de audio al servicio de voz desde un micrófono no predeterminado. Para más información, consulte la documentación en la que se describe cómo seleccionar un dispositivo de entrada de audio. Esta característica aún no está disponible en JavaScript. - Speech SDK ahora es compatible con Unity en una versión beta. Proporcione sus comentarios en la sección de problemas en el repositorio de ejemplos de GitHub. Esta versión es compatible con Unity en Windows x86 y x64 (aplicaciones de escritorio o de la Plataforma universal de Windows) y Android (ARM32/64, x86). Puede encontrar más información en nuestra guía de inicio rápido sobre Unity.
- El archivo
Microsoft.CognitiveServices.Speech.csharp.bindings.dll
(incluido en versiones anteriores) ya no es necesario. La funcionalidad está ahora integrada en el SDK principal.
Ejemplos
El siguiente contenido nuevo está disponible en nuestro repositorio de ejemplo:
- Ejemplos adicionales para
AudioConfig.FromMicrophoneInput
. - Ejemplos adicionales de Python para traducción y reconocimiento de intenciones.
- Ejemplos adicionales para usar el objeto
Connection
en iOS. - Ejemplos adicionales de Java para la traducción con la salida de audio.
- Nuevo ejemplo de uso de la API de REST de transcripción de lotes.
Mejoras y cambios
- Python
- Mensajes de error y verificación de parámetros mejorada en
SpeechConfig
. - Adición de compatibilidad para el objeto
Connection
. - Compatibilidad con Python (x86) de 32 bits en Windows.
- Speech SDK para Python ya no está disponible como beta.
- Mensajes de error y verificación de parámetros mejorada en
- iOS
- El SDK ahora se compila en función de la versión 12.1 del SDK de iOS.
- El SDK ahora es compatible con las versiones 9.2 y posteriores de iOS.
- Documentación de referencia mejorada y corrección de varios nombres de propiedad.
- JavaScript
- Adición de compatibilidad para el objeto
Connection
. - Archivos de definición de tipos agregados para JavaScript agrupado.
- Compatibilidad e implementación iniciales para sugerencias de frases.
- Colección de propiedades devuelta con JSON del servicio para reconocimiento.
- Adición de compatibilidad para el objeto
- Los archivos DLL de Windows contienen ahora un recurso de versión.
- Si crea un valor de
FromEndpoint
de reconocedor, puede agregar parámetros directamente a la dirección URL del punto de conexión. ConFromEndpoint
no puede configurar el reconocedor mediante las propiedades de configuración estándar.
Corrección de errores
- La contraseña de proxy y el nombre de usuario de proxy vacíos no se administraron correctamente. Con esta versión, si establece el nombre de usuario de proxy y la contraseña de proxy en una cadena vacía, no se enviarán al conectarse al proxy.
- El identificador de sesión creado por el SDK no siempre es realmente aleatorio para algunos lenguajes o entornos. Se ha agregado la inicialización del generador aleatorio para corregir este problema.
- Control mejorado del token de autorización. Si desea usar un token de autorización, especifíquelo en
SpeechConfig
y deje la clave de suscripción vacía. A continuación, cree el reconocedor como de costumbre. - En algunos casos, el objeto
Connection
no se publicó correctamente. Ahora se ha corregido. - Se corrigió el ejemplo de JavaScript para admitir la salida de audio para la síntesis de traducción también en Safari.
Speech SDK 1.2.1
Esta es una versión solo para JavaScript. No se agregó ninguna característica. Se realizaron las siguientes correcciones:
- Activar el final del flujo en turn.end, y no en speech.end.
- Corrección del error de la bomba de audio por el que no se programaba el siguiente envío en caso de error del envío actual.
- Corregir el reconocimiento continuo con el token de autenticación.
- Corrección de errores de diferentes reconocedores y puntos de conexión.
- Mejoras en la documentación.
Speech SDK 1.2.0: Versión de diciembre de 2018
Nuevas características
- Python
- La versión beta de la compatibilidad con Python (3.5 y versiones posteriores) está disponible con esta versión. Para más información, consulte aquí](quickstart-python.md).
- JavaScript
- Objecto
Connection
- Desde el objeto
Recognizer
, puede acceder al objetoConnection
. Este objeto le permite iniciar la conexión al servicio y suscribirse para conectar y desconectar eventos explícitamente. (Esta característica no está disponible aún ni en JavaScript ni en Python).
- Desde el objeto
- Compatibilidad con Ubuntu 18.04.
- Android
- Compatibilidad con ProGuard habilitada durante la generación del APK.
Mejoras
- Mejoras en el uso de subprocesos internos, lo que reduce el número de subprocesos, bloqueos y exclusiones mutuas.
- Se mejoraron los informes de errores y la información. En algunos casos, los mensajes de error no se propagan totalmente.
- Se actualizaron las dependencias de desarrollo en JavaScript para usar los módulos actualizados.
Corrección de errores
- Se han corregido las fugas de causadas por un error de coincidencia de tipos en
RecognizeAsync
. - En algunos casos, se perdieron excepciones.
- Corrección de las fugas de memoria en los argumentos de eventos de traducción.
- Se ha corregido un problema de bloqueo al volver a conectar en sesiones de larga ejecución.
- Se ha corregido un problema que podría dar lugar a que faltase el resultado final para las traducciones con errores.
- C#: Si no se esperaba una operación
async
en el subproceso principal, es posible que se pudiese desechar el reconocedor antes de completarse la tarea asincrónica. - Java: Se ha corregido un problema que provocaba un bloqueo de la VM de Java.
- Objective-C: Se ha corregido la asignación de la enumeración; se devolvió RecognizedIntent en lugar de
RecognizingIntent
. - JavaScript: Se ha establecido el formato de salida predeterminado en "simple" en
SpeechConfig
. - JavaScript: Se ha quitado una incoherencia entre las propiedades del objeto de configuración en JavaScript y otros lenguajes.
Ejemplos
- Se han actualizado y corregido varios ejemplos, como las voces de salida para la traducción, etc.
- Se han agregado ejemplos de Node.js en el repositorio de ejemplo.
Speech SDK 1.1.0
Nuevas características
- Compatibilidad con Android x86/x64.
- Compatibilidad con proxy: En el objeto
SpeechConfig
, ahora puede llamar a una función para establecer la información del proxy (nombre de host, puerto, nombre de usuario y contraseña). Esta característica no está disponible aún en iOS. - Mensajes y códigos de error mejorados. Si un reconocimiento devolvió un error, esto ya ha establecido
Reason
(en el evento cancelado) oCancellationDetails
(en el resultado del reconocimiento) enError
. El evento cancelado ahora contiene dos miembros adicionales,ErrorCode
yErrorDetails
. Si el servidor devolvió información de error adicional con el error notificado, ahora estará disponible en los nuevos miembros.
Mejoras
- Verificación adicional agregada en la configuración del reconocedor y mensaje de error adicional agregado.
- Control mejorado del silencio prolongado en medio de un archivo de audio.
- Paquete NuGet: para proyectos de .NET Framework, evita la compilación con la configuración de AnyCPU.
Corrección de errores
- En los reconocedores se han encontrado varias excepciones corregidas. Además, las excepciones se detectan y se convierten en un evento
Canceled
. - Corrección de una fuga de memoria en la administración de propiedades.
- Se corrigió el error en el que un archivo de entrada de audio podría bloquear el reconocedor.
- Se corrigió un error donde se podrían recibir eventos después de un evento de detención de la sesión.
- Se corrigieron algunas condiciones de subprocesos.
- Se corrigió un problema de compatibilidad de iOS que podría dar lugar a un bloqueo.
- Mejoras de estabilidad para la compatibilidad del micrófono en Android.
- Se corrigió un error donde un reconocedor en JavaScript ignoraría el lenguaje de reconocimiento.
- Se corrigió un error que impedía establecer el valor
EndpointId
(en algunos casos) en JavaScript. - Se cambió el orden de los parámetros en AddIntent en JavaScript y se agregó la firma de JavaScript
AddIntent
que faltaba.
Ejemplos
- Se han agregado ejemplos de C++ y C# para el uso de transmisiones de inserción y extracción en el repositorio de ejemplos.
Speech SDK 1.0.1
Mejoras en la confiabilidad y correcciones de errores:
- Corrección de un potencial error grave debido a una condición de carrera al desechar un reconocedor
- Corrección de un posible error grave cuando hay propiedades sin establecer.
- Comprobación adicional de errores y parámetros.
- Objective-C: corrección de posibles errores graves causados por la invalidación de nombres en NSString.
- Objective-C: ajuste de visibilidad en la API
- JavaScript: corrección con respecto a los eventos y sus cargas.
- Mejoras en la documentación.
Se ha agregado un nuevo ejemplo de Javascript en nuestro repositorio de ejemplos.
SDK de Voz de Azure AI 1.0.0: versión de septiembre de 2018
Nuevas características
- Compatibilidad con Objective-C en iOS. Consulte la Guía de inicio rápido de Objective-C para iOS.
- Se admite JavaScript en el explorador. Consulte la Guía de inicio rápido de JavaScript.
Cambios importantes
- Con esta versión se presentan una serie de cambios importantes. Consulte esta página para más información.
SDK de Voz de Azure AI 0.6.0: versión de agosto de 2018
Nuevas características
- Ahora, las aplicaciones de UWP creadas con SDK de Voz superan el Kit para la certificación de aplicaciones en Windows (WACK). Consulte la Guía de inicio rápido de UWP.
- Compatibilidad con .NET Standard 2.0 en Linux (Ubuntu 16.04 x64).
- Experimental: compatibilidad con Java 8 en Windows (64 bits) y Linux (Ubuntu 16.04 x 64). Consulte la Guía de inicio rápido de Java Runtime Environment.
Cambios funcionales
- Se expone más información detallada sobre los errores de conexión.
Cambios importantes
- En Java (Android), la función
SpeechFactory.configureNativePlatformBindingWithDefaultCertificate
ya no requiere un parámetro de ruta de acceso. Ahora, la ruta de acceso se detecta automáticamente en todas las plataformas compatibles. - En Java y C#, se ha quitado el descriptor de acceso get- de la propiedad
EndpointUrl
.
Corrección de errores
- En Java, se implementa ahora el resultado de la síntesis de audio en el reconocedor de traducción.
- Se ha corregido un error que podía provocar subprocesos inactivos y un mayor número de sockets abiertos y sin usar.
- Se ha corregido un problema por el que un proceso de reconocimiento de larga ejecución podía terminar en mitad de la transmisión.
- Se ha corregido una condición de carrera en el proceso de apagado del reconocedor.
SDK de Voz de Azure AI 0.5.0: versión de julio de 2018
Nuevas características
- Compatibilidad con la plataforma Android (API 23: Android Marshmallow 6.0 o posterior). Consulte el inicio rápido de Android.
- Compatibilidad con .NET Standard 2.0 en Windows. Consulte el inicio rápido de .NET Core.
- Experimental: compatibilidad con UWP en Windows (versión 1709 o posterior).
- Consulte la Guía de inicio rápido de UWP.
- Tenga en cuenta que las aplicaciones para UWP creadas con el SDK de Voz aún no pasan el kit para la certificación de aplicaciones en Windows (WACK).
- Compatibilidad con el reconocimiento de ejecución prolongada con reconexión automática.
Cambios funcionales
StartContinuousRecognitionAsync()
admite reconocimiento de ejecución prolongada.- El resultado del reconocimiento contiene más campos. Tienen un desplazamiento desde el principio del audio y la duración (ambos en tics) del texto reconocido y valores adicionales que representan el estado de reconocimiento, por ejemplo,
InitialSilenceTimeout
eInitialBabbleTimeout
. - Compatibilidad con AuthorizationToken para la creación de instancias de fábrica.
Cambios importantes
- Eventos de reconocimiento: el tipo de evento
NoMatch
se combina con el eventoError
. - SpeechOutputFormat en C# se llama ahora
OutputFormat
para concordar con C++. - El tipo de valor devuelto de algunos métodos de la interfaz
AudioInputStream
se ha modificado ligeramente:- En Java, el método
read
ahora devuelvelong
en lugar deint
. - En C#, el método
Read
ahora devuelveuint
en lugar deint
. - En C++, los métodos
Read
yGetFormat
ahora devuelvensize_t
en lugar deint
.
- En Java, el método
- C++: las instancias de secuencias de entrada de audio ahora solo se pueden pasar como un valor
shared_ptr
.
Corrección de errores
- Se han corregido los valores devueltos incorrectos cuando se agota el tiempo de espera de
RecognizeAsync()
. - Se ha eliminado la dependencia de las bibliotecas de Media Foundation en Windows. El SDK ahora usa las API de audio básicas.
- Corrección de la documentación: se ha agregado una página de regiones para describir cuáles son las regiones admitidas.
Problema conocido
- SDK de Voz para Android no informa de los resultados de la síntesis de voz para la traducción. Este problema se solucionará en la próxima versión.
SDK de Voz de Azure AI 0.4.0: versión de junio de 2018
Cambios funcionales
AudioInputStream
Un reconocedor ahora puede consumir una secuencia como origen de audio. Para más información, consulte la guía de procedimientos relacionada.
Formato de salida detallado
Al crear un elemento
SpeechRecognizer
, puede solicitar el formato de salidaDetailed
oSimple
.DetailedSpeechRecognitionResult
contiene una puntuación de confianza, texto reconocido, formato léxico sin formato, formato normalizado y formato normalizado con palabras soeces enmascaradas.
Cambio importante
- En C# se cambia de
SpeechRecognitionResult.RecognizedText
aSpeechRecognitionResult.Text
.
Corrección de errores
- Se ha corregido un posible problema de devolución de llamada en la capa USP durante el apagado.
- Si un reconocedor usaba un archivo de entrada de audio, mantenía el identificador de archivo más tiempo del necesario.
- Se han eliminado varios interbloqueos entre el suministro de mensajes y el reconocedor.
- Se desencadena un resultado
NoMatch
cuando se agota la respuesta del servicio. - Las bibliotecas de Media Foundation en Windows son de carga retrasada. Esta biblioteca solo es necesaria para la entrada del micrófono.
- La velocidad de carga de los datos de audio se limita al doble de la velocidad de audio original.
- En Windows, los ensamblados .NET de C# ahora son de nombre seguro.
- Corrección de la documentación:
Region
necesita información para crear un reconocedor.
Se han agregado más ejemplos y se actualizan constantemente. Para obtener el conjunto más reciente de ejemplos, consulte el repositorio de GitHub de ejemplos de SDK de Voz.
SDK de Voz de Azure AI 0.2.12733: versión de mayo de 2018
Esta versión es la primera versión preliminar pública del SDK de Voz de Azure AI.