SDK de JavaScript para vídeo Release Notes
v2.34.2 — junio de 2026
Fijo
-
Se ha solucionado un problema por el que cambiar de dispositivo de entrada de audio (por ejemplo, al conectar unos auriculares Bluetooth) poco después de iniciar la sesión podía provocar un
audioAcquisitionProblemlo que provocó una pérdida total del audio para los participantes remotos en cuanto la sesión pasó a una topología enrutada. -
Se ha solucionado un problema por el que las aplicaciones que se ejecutaban dentro de un Chrome WebView de Android no podían acceder a la prueba previa a la llamada ni unirse a una videoconferencia.
-
Se ha corregido una definición de TypeScript que faltaba: la
constraintsesa propiedad no se incluyó en elGetUserMediaPropertiesinterfaz enot.d.ts, lo que provoca una discrepancia con el comportamiento real del SDK en tiempo de ejecución.
v2.34.1 — mayo de 2026
Fijo
-
Se ha solucionado un problema por el que el uso de `publisher.setPreferredResolution()` junto con un filtro de fondo (desenfoque o sustitución) provocaba que la resolución publicada cambiara a un valor inesperado. Ahora, el publisher mantiene la resolución prevista cuando se aplica un filtro de fondo.
-
Se ha solucionado un problema por el que, al desactivar y volver a activar el vídeo (publicarVídeo(false) seguido de publicarVídeo(true)) mientras había un filtro de fondo activo (desenfoque o sustitución), los participantes remotos podían ver brevemente fotogramas sin filtrar. Ahora, el SDK garantiza que solo se envíen fotogramas filtrados tras volver a activar el vídeo.
-
Se ha corregido un cambio introducido en la versión 2.34, en el que la definición de TypeScript de OT.hasMediaProcessorSupport() exigía erróneamente un parámetro «mediaType». Ahora, el parámetro «mediaType» es opcional, lo que restablece la compatibilidad con el código existente que llama a OT.hasMediaProcessorSupport() sin argumentos.
v2.34.0 — mayo de 2026
Añadido
-
Se han añadido nuevos datos sobre el estado de la red. Esta versión incorpora nuevas métricas sobre el estado de la red a la función de observabilidad del cliente, lo que ofrece una visión detallada del rendimiento de la red y de los indicadores de calidad. Estas métricas complementan las estadísticas de emisores y suscriptores introducidas en la versión 2.33.0 y ayudan a los desarrolladores a supervisar de forma proactiva las condiciones de la red que afectan a la calidad del vídeo, diagnosticar problemas de conectividad y tomar decisiones fundamentadas sobre posibles ajustes. Para obtener más información, consulta esta documentación.
-
Se ha añadido compatibilidad con el desenfoque y la sustitución del fondo en Safari y Firefox. Esta versión añade compatibilidad con el desenfoque y la sustitución del fondo en Safari y Firefox. Esto garantiza la coherencia de las funciones en todos los principales navegadores y dispositivos, respondiendo así a las peticiones de los clientes de que se ofrezca una compatibilidad uniforme con los efectos de fondo en todas las plataformas. Para comprobar la disponibilidad de las API del navegador necesarias, el SDK utiliza un web worker integrado. Este web worker integrado puede provocar infracciones de la Política de Seguridad de Contenidos (CSP) en aplicaciones que aplican una CSP estricta; concretamente, aquellas que no incluyen
blob:ydata:en elworker-srcochild-srcdirectivas. Para obtener más información, consulta esta documentación. -
Se ha añadido compatibilidad con la traducción de subtítulos en directo. Esta versión incorpora compatibilidad con la traducción de subtítulos en directo, que ofrece traducción de subtítulos en tiempo real durante las videollamadas. Cada participante puede seleccionar de forma independiente el idioma de traducción que prefiera. Esta función es compatible con el conjunto completo de idiomas de AWS Translate. Se trata de una función en fase beta privada; para activar la traducción de subtítulos en directo en tu proyecto, ponte en contacto con nosotros. Para obtener más información sobre los subtítulos en directo, consulta esta documentación.
Fijo
-
Esta versión corrige un problema de sincronización por el que la configuración de un conector de procesador multimedia inmediatamente después de la creación de un suscriptor podía fallar. Ahora, el SDK espera a que la transmisión esté disponible antes de aplicar el conector.
-
Esta versión corrige un problema por el que los flujos no se suscribían en sesiones con cifrado de extremo a extremo y conexión de par único activados.
-
Esta versión corrige un problema con la gestión automática de reconexiones que podía causar reinicios innecesarios de la conexión durante la recuperación de la red. Ahora las reconexiones se producen de forma más fiable sin interrumpir las conexiones estables entre pares.
-
Esta versión corrige una condición de carrera en la que al llamar a
subscribeToVideo(true)inmediatamente después de la inicialización del abonado podría fallar si aún no se hubiera recibido la pista de vídeo. -
Esta versión corrige problemas por los que la pérdida de paquetes se calculaba de forma incorrecta y por los que, en algunas situaciones, no se activaban los eventos de recambio de audio. Estas correcciones se identificaron durante la implementación de la información sobre el estado de la red función, ya que los eventos de recambio de audio son uno de los datos que se utilizan para determinar el estado de la red. Ambas correcciones dan lugar a un comportamiento de recambio de audio más preciso y fiable.
v2.33.1 — marzo de 2026
Requisitos
La biblioteca OpenTok.js es compatible actualmente con:
- Electron (última versión)
- Google Chrome (última versión disponible)
- Google Chrome para Android (última versión)
- Compatibilidad con la versión beta de Google Chrome para iOS (última versión publicada)
- Firefox (última versión)
- Firefox para Android (última versión disponible)
- Compatibilidad con la versión beta de Firefox para iOS (última versión publicada)
- Microsoft Edge, versiones 79 y posteriores, para Windows y macOS (versiones de Edge basadas en Chromium)
- Safari 11+ en macOS e iOS. Para obtener información sobre la interoperabilidad de vídeo y otras cuestiones, consulte el Compatibilidad con el navegador Safari página.
- Opera (última versión)
- Samsung (última versión)
- WebView Android API nivel 36+
- WebView en iOS 18.6 y versiones posteriores
Importante: La versión 2.16 de OpenTok.js fue la última versión compatible con el plugin para Internet Explorer. La versión 2.16 de OpenTok.js quedó obsoleta en mayo de 2020 para el entorno Standard y en junio de 2020 para el entorno Enterprise.
La librería OpenTok.js utiliza el puerto 443. El puerto 443 debe estar abierto en la red del cliente.
Problemas conocidos
Problemas específicos del navegador
Safari
- La calidad del vídeo puede parecer reducida cuando se transmite contenido del lienzo, debido a la reducción de resolución interna, al manejo de la relación de píxeles del dispositivo o a la codificación WebRTC de Safari. Consulta esto Error de WebKit.
- El cifrado de extremo a extremo no funciona cuando las herramientas de desarrollo están abiertas en navegadores basados en WebKit (Safari en macOS/iOS, Chrome en iOS). Estamos trabajando para solucionar el problema.
- El SDK de JavaScript para vídeo 2.27 y versiones posteriores no es compatible con Safari 14 y versiones anteriores.
- El audio de los nuevos suscriptores no se oye hasta que se active la pestaña del navegador. Al cambiar a esa pestaña, se restablece el audio. Consulta esto Error de WebKit.
- En Safari 17.0 y versiones posteriores, la configuración de resolución de vídeo no se tiene en cuenta en el caso de los vídeos compartidos en pantalla. La resolución resultante es siempre de 640x360. Consulta esto Error de WebKit.
- Al llamar a
OT.initPublisher()Para inicializar un emisor de pantalla compartida sin un controlador de gestos de usuario, es posible que recibas unInvalidAccessError. Esto es comportamiento esperado de Safari. - En iOS 16.4 y versiones posteriores, con iCloud Private Relay activado, los usuarios pueden sufrir desconexiones durante las sesiones en las que se utiliza este servicio. Consulta esto Error de WebKit.
- Es posible que se pierda el audio y el vídeo tras recibir una llamada telefónica en Safari para iOS. Tras aceptar una llamada y volver a la sesión, es posible que se interrumpa el audio y el vídeo del dispositivo iOS. Consulta estos errores de WebKit: #213853, #219318.
- La calidad de audio de las transmisiones publicadas desde Safari en iOS/iPadOS puede deteriorarse con el tiempo y presentar crujidos o distorsiones. Consulta esto Error de WebKit.
iOS
- Para los usuarios que acceden a través del navegador de iOS, es posible que el volumen del audio no sea el correcto en algunos casos. Estamos trabajando para solucionarlo. Consulta esto Error de WebKit.
- El vídeo parpadea al cambiar la orientación del dispositivo o al ajustar el tamaño del vídeo en iOS 17 y versiones posteriores. Consulta esto Error de WebKit.
- El vídeo se muestra inicialmente con una resolución incorrecta en una aplicación de publicación de vídeos en iOS 17 o posterior, lo que provoca un parpadeo visible al cambiar de tamaño. Consulta esto Regresión de WebKit.
- En iOS 17 aparecen emojis de forma inesperada en los vídeos debido a que Apple... Reacciones Función. Los usuarios finales deben desactivarla manualmente: abre el Centro de control → pulsa en «Efectos de vídeo» → pulsa en «Reacciones».
Chrome / Chromium
- En Windows, con los controladores de audio de Intel Smart Sound Technology, es posible que un Publisher no envíe un
audioInputDeviceChangedal cambiar de dispositivo de entrada de audio. El audio seguirá transmitiéndose correctamente. Estamos trabajando para solucionar el problema. - Si se cierra la tapa del portátil mientras se está publicando, el editor se destruye. Consulta esto Error de Chromium.
- La cancelación de eco está desactivada con la entrada de audio estéreo en Chrome 73 y versiones posteriores. Consulta esto Problema con Chrome.
- La publicación no está disponible en
httppáginas (exceptohttp://localhost). Las páginas deben servirse a través dehttps. - El vídeo puede presentar parpadeos en las transmisiones con
videoTypeajustado a"custom"cuando el contenido de vídeo no varía mucho. ConfiguraciónvideoContentHintatextodetailalivia el problema. Véase el Guía de configuración de vídeo.
Firefox
- La configuración de la frecuencia de fotogramas no tiene ningún efecto en Firefox en macOS cuando se utiliza la cámara integrada de FaceTime. Consulta esto Error de Mozilla.
- Configuración
audioBitrateenOT.initPublisher()No funciona en Firefox. Mira esto Error de Mozilla. - En Android 13, los permisos de micrófono y cámara de Firefox requieren que se reinicie el dispositivo para que surtan efecto una vez configurados.
- En Android 13, es posible que la resolución del vídeo no se actualice correctamente al cambiar la orientación. Consulta esto Regresión de Mozilla.
Android
- En Android 12 y 13, Chrome requiere utilizar «Volumen multimedia» para ajustar el volumen, en lugar del control deslizante de volumen del teléfono. Consulta esto Error de Chromium.
- En WebView para Android, cuando la aplicación pasa a segundo plano (cambio de aplicación o llamada entrante), el vídeo del editor se apaga y no se reanuda al volver al primer plano.
macOS
- En macOS 14 (Sonoma), aparecen emojis de forma inesperada en los vídeos debido a que Apple... Reacciones Función. Para desactivarla: haz clic en el icono verde de la cámara en la barra de menú → desmarca «Reacciones».
Cuestiones generales
- El
accessDialogOpenedEl evento podría activarse por error al llamar aOT.getUserMedia(), aunque no se haya mostrado ningún cuadro de diálogo de acceso. - En algunos casos, al compartir una presentación de Google Slides en una pestaña, el vídeo aparece con bandas negras si la relación de aspecto establecida por el autor es de 4:3. Esto no ocurre cuando se comparte la presentación completa en pantalla.
- En el caso de algunos usuarios de Firefox para móviles, la orientación del dispositivo puede alterar la transmisión de vídeo del editor. Consulta esto Error de Mozilla.
Problemas resueltos
- Se ha corregido una fuga de memoria que afectaba a las sesiones de larga duración con varios participantes.
- Se ha corregido un error de definición de TypeScript por el que la propiedad publisher stats se denominaba incorrectamente
transporten lugar detransportStats.
v2.33.0 — febrero de 2026
Novedades y cambios
-
Se han añadido nuevas estadísticas para emisores y suscriptores, así como eventos de cambio en la calidad del vídeo. Esta versión incorpora nuevas estadísticas para emisores y suscriptores, entre las que se incluyen: métricas de la capa de vídeo para la emisión simultánea (simulcast) y SVC, y estadísticas de transporte para los emisores; métricas de seguimiento de la congelación y la pausa del vídeo, así como de decodificación, para los suscriptores; y eventos de cambio en la calidad del vídeo tanto para emisores como para suscriptores. Para obtener más información, consulta esta documentación.
-
Se ha añadido compatibilidad total con las estadísticas de red de los remitentes en las sesiones de vídeo. Esta versión incorpora compatibilidad total con las estadísticas de red de los remitentes para los suscriptores en las sesiones de vídeo (una función que anteriormente se encontraba en fase beta). Para obtener más información, consulta esta documentación.
-
Se ha añadido compatibilidad con la resolución y la frecuencia de fotogramas preferidas para los editores. Esta versión incorpora nuevos métodos para configurar la resolución y la frecuencia de fotogramas preferidas para los editores, lo que permite ajustar dinámicamente la calidad del vídeo de salida sin superar la resolución ni la frecuencia de fotogramas especificadas originalmente al inicializar el editor. Para obtener más información, consulta esta documentación.
-
OpenTok.js ya es totalmente compatible con Google Chrome para iOS. Para obtener más información, consulta esta documentación.
-
Hemos obviado la función
video.frameRateen los objetos stats devueltos porSubscriber.getStats()controlador de finalización. Esta propiedad está en desuso y se eliminará en el futuro. En su lugar, utiliza elvideo.decodedFrameRateen su lugar. Para más información, véase esta documentación.
Problemas resueltos
- Se ha resuelto un problema por el que las definiciones de TypeScript para la tasa de bits máxima del editor no se incluían en las versiones anteriores.
- Se ha corregido una pérdida de memoria en la lógica de gestión de websocket para el protocolo de señalización.
- Se ha solucionado un problema por el que las opciones de procesamiento de audio (control de ganancia, cancelación de eco, etc.) no se aplicaban correctamente en determinados casos.
- Se han solucionado problemas relacionados con la gestión de cambios en los dispositivos de entrada de audio, entre ellos la detección del cambio de dispositivo predeterminado y la precisión en el seguimiento de los dispositivos.