Para cada versión nueva de Google Cast que se lanza, se describen los cambios a continuación y se actualizan las referencias de la API. Para ver los cambios en la lista de tareas de diseño, consulta su registro de cambios.
12 de mayo de 2025
Android Sender 22.1.0
-
Se lanzaron play-services-cast:22.1.0 y play-services-cast-framework:22.1.0.
-
Se actualizó para depender de androidx.mediarouter:mediarouter:1.8.0-beta01 y admite las APIs de
MediaRouter.RouteInfo#connect()
yMediaRouter.RouteInfo#disconnect()
de Media Router de AndroidX. -
Se agregó un
CastOptions.Builder
para configurar la API deMediaRouterParams.Builder#setMediaTransferRestrictedToSelfProviders(boolean)
de AndroidX Media Router.
-
Se actualizó para depender de androidx.mediarouter:mediarouter:1.8.0-beta01 y admite las APIs de
28 de octubre de 2024
Android Sender 22.0.0 y Android TV Receiver 21.1.1
- Se corrigió una posible vulnerabilidad de denegación del servicio que se encontraba en la biblioteca de Java Lite de Protobuf.
- Se borró MediaNotificationService. Las aplicaciones no deben usarlo directamente.
- Se corrigió un error en dispositivos con Android R o versiones anteriores en el que intentar mostrar una imagen demasiado pequeña en una notificación de Google Cast podía provocar una falla de la IU del sistema.
4 de septiembre de 2024 1 de noviembre de 2024
Receptor web 3.0.0133 3.0.0135 3.0.0137
- La versión predeterminada de Shaka Player que usa CAF se actualiza de 4.3.4 a 4.9.2. Consulta el registro de cambios de Shaka Player para obtener una lista completa de los cambios.
- Se habilitó la carga previa de contenido para el reproductor Shaka. Esto permite cambiar sin problemas entre elementos multimedia o pausas publicitarias.
- Se corrigieron los errores causados por el cambio de códecs de Shaka.
- Se agregó un nuevo campo
ErrorSeverity
para los errores de Shaka. Si la gravedad esRECOVERABLE
, la reproducción no debería detenerse. - Se corrigió una falla de carga de contenido para las solicitudes de carga simultáneas.
- De forma interna, CAF ahora usa
shaka.Player#attach
para adjuntar un elemento multimedia en lugar de pasarlo al constructorshaka.Player
(obsoleto en la API de Shaka). - Se agregaron los campos
frameType
yframeDescription
acast.framework.events.Id3Event
. Estos campos se completan cuando se usa Shaka Player para la reproducción. - Se agregaron los eventos
REQUEST_GET_STATUS
yREQUEST_PRELOAD
. Esos eventos se pueden escuchar conPlayerManager#addEventListener
. - Se agregó una respuesta de error para las solicitudes de carga con un
requestId
incorrecto en lugar de fallar de forma silenciosa. - Se corrigió el registro de advertencia para la configuración de
jumpLargeGaps
de Shaka Player, que dejó de estar disponible en la versión 4 de Shaka. - Se comenzó a propagar
requestId
en el mensajeMediaStatus
para un estadoLOADING
. - Recicla la instancia del reproductor Shaka cuando se carga contenido nuevo.
- Se quitó la compatibilidad con el comando multimedia
QUEUE_SHUFFLE
obsoleto. UsaQUEUE_UPDATE
en su lugar. - Se corrigió la compatibilidad con grupos de anuncios de VAST en los que cada etiqueta
<Ad>
tiene un atributosequence
y una etiqueta<Wrapper>
anidada. - Se corrigió la propagación del atributo
crossorigin
sin un valor de<cast-media-player>
al elemento<video>
anidado. - Se expone el idioma de audio en la banda en MPL.
22 de agosto de 2024
iOS Sender 4.8.3
- Se corrigió un error por el que el botón de transmisión no abría el selector de dispositivos cuando se presionaba.
- Se corrigió una falla que afectaba a los dispositivos con iOS 17 y versiones posteriores relacionada con AVRouting.
18 de abril de 2024
Enviador para iOS 4.8.1
- La versión mínima compatible con el SDK de Cast ahora es iOS 14.
- Manifiesto de privacidad incluido en el paquete junto con el xcframework firmado
- El modo de invitado dejó de estar disponible y se quitó. A partir de esta versión, estará disponible una sola variante del SDK para la integración.
- Se corrigió una falla que se producía si, a veces, se reproducía un anuncio breve durante la transmisión.
11 de diciembre de 2023
Receptor web 3.0.0122
- Se agregó compatibilidad con grupos de anuncios y buffet de anuncios para VAST.
- Se actualizó la IU de los controles multimedia del reproductor de Cast para dispositivos Google TV.
- Se agregó un nuevo campo
audioTrackInfo
al objetoTrack
. - Se agregó
cast.framework.system.Message
, que representa un mensaje recibido de un remitente o enviado a él. - Se cambió la lógica de pausa de búsqueda. Ahora, el receptor web crea una pausa
seek-{timestamp}
sintética solo cuando hay más de 1 pausa que se muestra desdeBreakManager#setBreakSeekInterceptor
. De lo contrario, la pausa de búsqueda sigue siendo igual a la pausa original en un cronograma. - Se agregó la opción
CastReceiverOptions#shakaVariant
para cargar versiones de depuración de Shaka Player en CAF. -
Se corrigió que
PlaybackConfig#licenseRequestHandler
yPlaybackConfig#licenseResponseHandler
no se reconocieran con Shaka para HLS cuando se usa la encriptación AES-128. - Se corrigió que
ID3Event
no se activara cuando se usaba Shaka Player. - Se corrigieron las pistas de texto transferidas paralelamente cuando se usan anuncios previos al video.
- Se corrigió la renderización de texto cuando se usa
UITextDisplayer
. - Se corrigieron varios problemas de mayúsculas y minúsculas para VAST, tipos de MIME y nombres de sistemas de protección de contenido.
- Se corrigieron varios problemas con los subtítulos forzados.
- Se corrigió la propagación de códigos
EndedReason
para eventosBREAK_CLIP_ENDED
.
4 de diciembre de 2023
Android Sender 21.4.0 y Android TV Receiver 21.0.1
-
Se lanzaron play-services-cast:21.4.0 y play-services-cast-framework:21.4.0.
- Se aumentó minSdkVersion de 16 a 19.
-
Se actualizó para depender de androidx.mediarouter:mediarouter:1.6.0-beta01. Esto hace que
MediaRouteButtons
siempre sea visible de forma predeterminada. Esto permitió reducir las situaciones en las que el descubrimiento de dispositivos Cast se inicia automáticamente sin la acción del usuario. -
Se agregó
CastOptions.Builder#setSessionTransferEnabled
para establecer si la aplicación del remitente debe mostrar dispositivos de transmisión cuando el selector de salida está habilitado. El valor predeterminado es verdadero. -
Ya no se crean
MediaSessions
cuando las apps no establecenCastMediaOptions
o establecen CastMediaOptions como nulo. -
Se corrigió un error
android.view.InflateException
MiniControllerFragment
que se podía producir cuando se usabaFragmentContainerViews
. -
Se agregaron versiones nuevas de
CastButtonFactory#setUpMediaRouteButton
que devuelvenTasks
que las apps pueden escuchar para detectar si se realizó correctamente o si se produjo una excepción. Las versiones anteriores que no tomen un argumentoExecutor
ignorarán ModuleUnavailableExceptions y fallarán en silencio.
-
Se lanzó play-services-cast-tv:21.0.1
- Se aumentó minSdkVersion de 16 a 19.
- Esta versión incluye mejoras de calidad.
20 de julio de 2023
Enviador para iOS 4.8.0
- La versión mínima que admite el SDK de iOS ahora es iOS 13.
- Primera versión estable de XCFramework.
- XCFrameworks disponibles a través de Cocoapods.
- Se restableció la funcionalidad para controlar el volumen con los botones de volumen físicos durante la reproducción de contenido multimedia.
- El botón de transmisión ahora respeta el color de tono cuando se usa en una barra de navegación.
- Ahora se puede personalizar el color del título de Navigation con la API de GCKUIStyle.
- Se corrigió el problema de la barra de navegación transparente en la vista de lista de subtítulos de pistas de contenido multimedia.
- Se corrigió una falla en la versión beta de XCFramework.
- Se agregó una API para vincular un UIControl con acciones de avance o retroceso.
- Se agregó compatibilidad con la transmisión a las Pixel Tablets.
6 de julio de 2023
Web Receiver 3.0.0111
-
Se agregó compatibilidad con la inserción de anuncios dinámicos mediante
BreakManager
,addBreak(breakData, breakClips, broadCastMediaStatus)
yremoveBreakById(breakId)
. -
Se agregó el análisis de cadenas
Subtype
a los manifiestos de Smooth. -
Se agregó compatibilidad con solicitudes asíncronas en
manifestRequestHandler
,segmentRequestHandler
ylicenseRequestHandler
para Shaka Player. - Se agregó compatibilidad con subtítulos forzados.
- Se actualizó la versión predeterminada de Shaka para CAF a la v4.3.4.
-
Se aclaró la descripción del parámetro
setActiveByIds
. - Se corrigió la forma en que CAF elige pistas de audio distintas.
- Se corrigieron las conversiones de tipo de cuerpo de la solicitud para los filtros de solicitud de Shaka.
-
Se agregó la capacidad de consultar
CreativeInformation
relacionada con unBreakClip
enBreakManager
getCreativeInfoByClipId(breakClipId)
. - Se corrigieron los metadatos de contenido multimedia que faltaban durante la carga del elemento multimedia en dispositivos controlados por el mando de pad direccional.
-
Se agregaron las propiedades
hlsSegmentFormat
yhlsVideoSegmentFormat
aBreakClip
. - Se corrigieron las comparaciones de tipos de MIME sensibles a mayúsculas y minúsculas con MPL.
- Se corrigió el almacenamiento en búfer infinito en vivo de HLS (basado en TS) durante la carga con Shaka Player.
-
Se corrigió el comportamiento de
PlayerDataBinder
para el eventoIS_AT_LIVE_EDGE_CHANGED
. - Se corrigió el bucle infinito en los datos insuficientes proporcionados en los segmentos de TS con MPL.
-
Se agregó
error.stack
para los errores de Shaka Player. -
Se cambió para usar el campo
audioMimeType
en lugar deaudioCodec
del objeto de pista de Shaka Player para propagar el campocast.framework.messages.Track.trackContentType
para las pistas de variantes. -
Se agregó
shaka.extern.track.label
acast.framework.messages.Track.name
para las pistas de Shaka Player. -
Se expandió el objeto
cast.framework.stats.Stats
para tener en cuenta los campos existentes enshaka.extern.Stats
. - Se corrigieron los cálculos de tiempo de contenido multimedia para el contenido con pausas incorporadas expandidas.
28 de marzo de 2023
Android Sender 21.3.0 y Android TV Receiver 21.0.0
-
Se lanzaron play-services-cast:21.3.0 y play-services-cast-framework:21.3.0.
-
Ahora se usa
NotificationManager
para publicar notificaciones de contenido multimedia de Cast en lugar deForeground Service
. -
Se agregó un nuevo
CastReasonCodes#CAST_CANCELLED
para indicar que se cancelan las sesiones de Cast.
-
Ahora se usa
-
Se lanzó play-services-cast-tv:21.0.0.
- Se corrigió la anotación de nulidad para
MediaManager
.
- Se corrigió la anotación de nulidad para
17 de octubre de 2022
Web Receiver 3.0.0105
- Se actualizó el reproductor Shaka a la versión 3.2.11.
-
Se agregó
cast.framework.PlaybackConfig#enableUITextDisplayer
para renderizar subtítulos en el reproductor Shaka con el DOM. -
Se agregaron
cast.framework.CastReceiverOptions#shakaVersion
ycast.framework.CastReceiverOptions#useShakaForHls
para permitir que los receptores usen Shaka Player para la reproducción de HLS. -
PlaybackConfig#manifestHandler
,PlaybackConfig#segmentHandler
yPlaybackConfig#licenseHandler
ahora pueden acceder a los encabezados de respuesta HTTP. -
Se agregó
customData
aCommandAndControlManager#ErrorResponseData
cuando el mensajeLOAD_BY_ENTITY
se resuelve con un error.
10 de octubre de 2022
Android Sender 21.2.0
-
Se lanzaron play-services-cast:21.2.0 y play-services-cast-framework:21.2.0.
-
Se presentó la función
Output Switcher
. -
Se agregó una nueva API
Cast.Listener#onDeviceNameChanged()
para notificar el cambio de nombre del dispositivo parastream transfer
. -
Se dejaron de usar
CastOptions.Builder#setVolumeDeltaBeforeIceCreamSandwich(double)
yCastOptions#getVolumeDeltaBeforeIceCreamSandwich()
. -
Se corrigió
ForegroundServiceStartNotAllowedException
conMediaNotificationService
. -
Se actualizó
MediaNotificationService
conMedia controls in System UI
. -
Se actualizaron las APIs de
RemoteMediaClient
para aceptarcustomData
anulable. -
Se actualizó
MediaInfo.Builder
para aceptarcontentId
ocontentURL
. -
Se actualizó
ImagePicker#onPickImage
para aceptarMediaMetadata
con valores nulos. -
Se actualizó la dependencia
com.google.android.datatransport:transport-api
a la versión más reciente.
-
Se presentó la función
8 de agosto de 2022
Android Sender 21.1.0 y Android TV Receiver 20.0.0
-
Se lanzaron play-services-cast:21.1.0 y play-services-cast-framework:21.1.0.
-
CastContext#getSharedInstance(Context)
quedó obsoleto. En su lugar, usaCastContext#getSharedInstance(Context, Executor)
, que muestra una API de Task, yModuleUnavailableException
para controlar la excepción cuando el SDK de Cast no carga el módulo interno de Cast. -
ApplicationMetadata#getImages()
quedó obsoleto. En su lugar, usaApplicationMetadata#getIconUrl()
, que muestra la imagen de la aplicación configurada en Play Console de Cast. -
Se corrigió un error de
ConcurrentModificationException
que podía ocurrir cuando se registraba y se anulaba el registro deMediaQueue.Callbacks
. -
Se corrigió
MediaInfo#getStreamDuration()
para las transmisiones en vivo. -
Se corrigieron las restricciones del trampolín de notificaciones para
MediaNotificationService
en Android S. -
Se corrigió el problema por el que
CastContext
filtraba la referencia a la actividad. - Se corrigió un error por el que se mostraba una imagen de fondo nítida durante un anuncio en lugar de una versión desenfocada.
-
-
Se lanzó play-services-cast-tv:20.0.0.
- Se aumentó
minSdkVersion
de 14 a 16. -
Se corrigió un problema con
MediaManager#setSessionCompatToken(MediaSession.CompatToken)
en el que no se admitía correctamente un argumento nulo.
- Se aumentó
31 de marzo de 2022
Web Receiver 3.0.0103, MPL Player 1.0.0.113
- Se actualizó la versión predeterminada de Shaka Player a la 3.2.2.
-
Se agregó una nueva API,
cast.framework.PlaybackConfig#shakaConfig
, para permitir anular la versión de Shaka Player y otras opciones de Shaka. -
Se agregó una nueva API,
cast.framework.ui.Controls#hasMediaControlsOverlay()
, para consultar si la superposición de control multimedia se renderiza sobre su aplicación. -
Se agregó un estilo nuevo,
cast.framework.ui.ControlsButton.LIKE_HEART
, para la acción del usuario "Me gusta". -
El valor
currentMediaTime
de los datos del eventocast.framework.events.EventType.BREAK_CLIP_ENDED
ahora representa la hora actual del clip de pausa más reciente en el momento en que ocurrió el evento. -
Se agregó un método
cast.framework.PlayerManager#getRawCurrentTimeSec
que muestra la hora del elemento multimedia. -
Se agregó
cast.framework.NetworkRequestInfo#timeoutInterval
para especificar el tiempo de espera de la solicitud HTTP para las solicitudes del reproductor. - Se corrigieron errores de MPL en la decodificación de subtítulos CEA 608/708 para transmisiones de A/V demuxadas.
- Se corrigió la lógica de análisis de marcas de tiempo de WebVTT de MPL para aceptar más de 2 dígitos para el valor de horas.
9 de diciembre de 2021
Android Sender 21.0.0
- Se agregó una mejor compatibilidad con la nulidad para Kotlin, ya que se convirtió en un error que se produzcan infracciones de seguridad nula. Los desarrolladores de Java no verán ningún impacto. Es posible que los desarrolladores de Kotlin vean nuevas fallas de compilación si tienen código existente que no era seguro para nulos.
19 de noviembre de 2021
Enviador para iOS 4.7.0
- Se corrigió la compatibilidad del emisor de iOS para usar credenciales de ATV con Cast Connect.
- Se corrigió un error por el que las barras de navegación tenían fondos transparentes cuando se compilaba con Xcode 13.
-
Se corrigieron los problemas de accesibilidad informados con
GCKUICastButton.
. - Se corrigió un error por el que cambiar entre Wi-Fi y red móvil desconectaba una sesión de transmisión, en lugar de suspenderla.
- Se dejó de admitir iOS 10 y iOS 11 y, como consecuencia, la compatibilidad con las arquitecturas de 32 bits.
- Se corrigieron otros errores y se mejoró el rendimiento.
16 de noviembre de 2021
Android Sender 20.1.0
- Nota: Las apps que se orientan a Android 12 deben actualizarse a Android Sender 20.1.0 para evitar fallas en el tiempo de ejecución.
- Mejoras en las colas
-
Se agregó una nueva devolución de llamada
itemsReorderedAtIndexes
a MediaQueue a la que se llama cuando se vuelve a ordenar la fila. - Se agregó compatibilidad con la serialización de comandos de cola.
-
Se hizo anulable el parámetro
customData
enRemoteMediaClient#queueSetRepeatMode
. - La función de pantalla remota dejó de estar disponible.
- El
minSdkVersion
aumentó de 14 a 16.
26 de octubre de 2021
Web Receiver 3.0.0102
- Actualiza a la versión 3.0.13 del reproductor Shaka (que, a su vez, corrige varios problemas informados anteriormente).
- Se agregó compatibilidad con imágenes secundarias en pantallas inteligentes y Chromecasts.
- Se solucionó un problema por el que no se mostraban los subtítulos en las transmisiones almacenadas en búfer debido a un error en la lógica que se usaba para detectar pistas duplicadas.
-
Se solucionó un problema por el que no se activaba la devolución de llamada de error del receptor cuando
LOAD_BY_ENTITY
mostraba un error. - Se agregó compatibilidad con los códecs de audio AAC de alta eficiencia (HE-AAC) para las transmisiones de transporte.
-
Se corrigió un error por el que
PlayerManager.getStats()
no mostraba los valores correctos de altura y ancho. -
Se quitó la información de VAST y VMAP de los mensajes
MediaStatus
para evitar desbordamientos que pueden provocar que un remitente se desconecte del receptor. -
Se solucionó un problema por el que no se proporcionaba
endedReason
al remitente cuando se omitían los anuncios. - Se corrigió un problema por el que las pausas publicitarias se quitaban de la fila de carga antes de la reproducción.
-
Se agregó un nuevo campo
cast.framework.message.QueueChange#reorderItemIds
que contiene la lista de elementos de la cola afectados por la operaciónQUEUE_CHANGE
. - Se redujo el almacenamiento en búfer en las transmisiones en vivo de HLS en MPL cuando se cambia entre pistas de audio, de modo que el audio y el video ahora permanecen sincronizados.
- Se corrigió el análisis de transmisiones HLS en MPL con subtítulos CEA608/CEA708 incorporados.
- Los controles multimedia de Chromecast con Google TV se ocultarán cuando el contenido multimedia se pause durante más de 5 segundos.
26 de mayo de 2021
iOS Sender 4.6.1
- Se solucionó un problema por el que se suspendían las sesiones de Cast en segundo plano para las aplicaciones que permiten la ejecución en segundo plano.
17 de mayo de 2021
Enviador para iOS 4.6.0
- Se cambió el comportamiento predeterminado del botón Transmitir para que siempre se muestre cuando se conecte a una red Wi-Fi.
- Se agregó un nuevo cuadro de diálogo de ayuda que se muestra cuando el usuario presiona el botón Transmitir y no se encuentran dispositivos.
-
Se dejó de usar la API de
GCKUICastButton::triggersDefaultCastDialog
. -
Se agregó compatibilidad más uniforme para la personalización de diálogos para aquellas apps que implementan una IU personalizada a través de la nueva API
GCKUICastButtonDelegate
. - Se agregó compatibilidad con el modo oscuro para iOS 13 y versiones posteriores.
-
Se agregó la personalización de marcadores de anuncios a
GCKUIStyleAttributes
. -
Se agregó compatibilidad con
hlsSegmentFormat
yhlsVideoSegmentFormat
a los medios. - Corrección de errores y mejoras en el rendimiento.
29 de abril de 2021
Receptor web 3.0.0096
20 de abril de 2021
Emisor de Android 20.0.0 y receptor de Android TV 18.0.0
-
Se lanzaron play-services-cast:20.0.0 y play-services-cast-framework:20.0.0.
- Se borraron GameManager y las APIs relacionadas. Dejar de estar disponibles desde el 2017.
-
Se agregó la clase
SessionState
a la biblioteca cliente de Cast. -
Se agregó
CastReasonCodes
para proporcionar explicaciones detalladas deCastStatusCodes
. Usa el métodoCastContext#getCastReasonCodeForCastStatusCode(int)
para traducir deCastStatusCodes
aCastReasonCodes
. -
Se agregaron
HlsSegmentFormat
yHlsVideoSegmentFormat
aMediaInfo.Builder
. -
Se marcó el
foregroundServiceType
deMediaNotificationService
comomediaPlayback
. -
Se actualizaron las dependencias de
com.google.android.datatransport:transport-api
a la versión más reciente. -
Se agregó un constructor
MediaLoadRequestData.Builder
para compilar desde un objetoMediaLoadRequestData
. - Se corrigió un problema con el botón de reproducción/pausa en el reproductor en miniatura cuando se cambiaba de VOD a una transmisión EN VIVO.
-
Se implementó
MediaIntentReceiver#ACTION_DISCONNECT
para las notificaciones multimedia de Cast.
-
Se lanzó play-services-cast-tv:18.0.0:
-
Se agregaron las clases
StoreSessionRequestData
yStoreSessionResponseData
a la biblioteca de cast-tv.
-
Se agregaron las clases
5 de abril de 2021
Web Receiver 3.0.0095
- Se actualizó Shaka Player a la versión 3.0.10.
-
El botón Transmitir ahora se muestra de forma predeterminada cuando se admite el comando multimedia
STREAM_TRANSFER
. - Se agregó la barra de sugerencias a la parte inferior de la IU de Explorar contenido multimedia. La barra de sugerencias contiene chips interactivos que, cuando se seleccionan, pueden reproducir un elemento multimedia o desplazarse por los elementos multimedia disponibles. Cada chip también se asigna a un comando de Asistente de Google disponible. Actualmente, los chips de sugerencias solo se admiten cuando el idioma del sistema está configurado en inglés o japonés.
- Se solucionó un error en Chromecast con Google TV que causaba que se mostrara la superposición de controles multimedia cuando se transmitía contenido de fotos al receptor predeterminado.
- Se agregó compatibilidad con el evento
TRACKS_CHANGED
.
18 de diciembre de 2020
Web Receiver 3.0.0085
-
Se agregaron opciones a
CastReceiverOptions
para inhabilitar la carga de Shaka y MPL.
3 de diciembre de 2020
Sender para iOS 4.5.3
-
Se corrigió el error de tiempo de carga "Símbolos indefinidos para la arquitectura arm64" para
GCKCredentialsData
. -
Se corrigió el error del compilador para la nulidad en conflicto en
GCKCredentialsData
. -
Ahora se registran mensajes de advertencia si faltan las entradas de servicio de Bonjour obligatorias en
Info.plist
.
4 de noviembre de 2020
Enviador para iOS 4.5.2
-
Se actualizó la versión mínima de la biblioteca
Protobuf
a 3.13 en CocoaPods. El uso de versiones anteriores deProtobuf
hará que el SDK falle. - Esta versión es exclusiva de CocoaPods y usa el mismo binario que la v4.5.1.
13 de octubre de 2020
Sender para iOS 4.5.1
-
Se corrigió un problema por el que
GCKUICastButton
con un selector de dispositivos personalizado no se actualizaba para reflejar el estado correcto de Cast. - Se corrigió la advertencia "Conflicting nullability specifier on return types".
14 de septiembre de 2020
Receptor web
- Se actualizó Shaka Player a la versión 2.5.16.
Sender para iOS 4.5.0
- Se agregó compatibilidad con los cambios de descubrimiento de dispositivos Cast en iOS 14, que requiere permiso explícito del usuario cuando se transmite por primera vez. Consulta Cómo transmitir por primera vez en iOS 14 para obtener más información.
- Se actualizó la compatibilidad mínima del SDK a iOS 10.
8 de septiembre de 2020
Remitente web
- Se presentó Cast Connect, que permite que las apps de Chrome transmitan contenido a las apps para Android TV. Para obtener más información, consulta la documentación del receptor de Android TV.
31 de agosto de 2020
Receptor web
- Se agregó compatibilidad con #EXT-X-DATERANGE en HLS / EventStream en DASH.
3 de agosto de 2020
Enviador para iOS 4.4.8
- Se presentó Cast Connect, que permite que las apps para iOS transmitan contenido a las apps para Android TV. Para obtener más información, consulta la documentación del receptor de Android TV.
29 de julio de 2020
Android Sender 19.0.0 y Android TV Receiver 17.0.0
-
Se presentó Cast Connect, que permite que las apps para Android TV cumplan con el protocolo de Cast para que se comporten como apps receptoras. Para obtener más información, consulta la documentación del receptor de Android TV.
- Se lanzó play-services-cast-tv:17.0.0 como el SDK del receptor para apps para Android TV.
- Se lanzaron play-services-cast:19.0.0 y play-services-cast-framework:19.0.0, incluidas las APIs de remitente de Cast Connect y las APIs que usa play-services-cast-tv.
-
Actualizaciones de la API:
-
AdBreakStatus#AD_BREAK_CLIP_NOT_SKIPPABLE
dejó de estar disponible. UsaAdBreakClipInfo#AD_BREAK_CLIP_NOT_SKIPPABLE
en su lugar. -
Se cambió el nombre de
CastRemoteDisplayLocalService#getDisplay()
aCastRemoteDisplayLocalService#getCastRemoteDisplay()
para evitar un conflicto de API en Android 11. -
Se agregaron
getCustomData()
ygetType()
enMediaError
. -
Se agregaron constantes de bits de comandos compatibles detalladas (
MediaStatus#COMMAND_*
) enMediaStatus
. -
Se expuso
MediaTrack#getRoles()
. -
Se expuso
RemoteMediaClient.Callback#onMediaError()
.
-
13 de julio de 2020
Receptor web
- Se mejoró la detección de categorías de contenido multimedia para la IU predeterminada (video o audio).
- Se agregó compatibilidad con la hora absoluta en vivo desde Shaka Player.
- Se corrigió un problema con fallas de audio en dispositivos Nest Hub Max.
- Se actualizó Shaka Player a la versión 2.5.12.
4 de mayo de 2020
Receptor web
- Ahora se pueden configurar los valores de tiempo de espera para los comandos de Asistente de Google.
- Los códigos de error de MPL detallados ahora se exponen en los eventos de error.
-
Ahora se pueden aplicar los comandos multimedia compatibles con la marca
enforceSupportedCommands
. - Se corrigieron los comandos compatibles que se informaban durante una pausa en la reproducción.
- Se solucionó un problema con una solicitud de carga aleatoria de Asistente.
- Se corrigió un error en los valores de
getStats
.
12 de marzo de 2020
Receptor web
-
Se agregó la nueva capability de dispositivo
IS_CBCS_SUPPORTED
adeviceCapabilities
. - Se actualizó Shaka Player a la versión 2.5.8.
27 de febrero de 2020
Enviador para iOS v4.4.7
- Se corrigieron los botones de volumen físicos para las apps que no usan ningún componente de la IU del SDK.
-
Se solucionó un problema con la etiqueta
currentTime
en el controlador expandido cuando se presionaban los botones de avance o retroceso de forma repetida. -
Los elementos multimedia de
GCKMediaQueue
se conservan después de que la app se mueve a segundo plano. -
Actualizaciones de personalización de la IU:
- La barra de progreso del minicontrolador ahora es personalizable.
- Ahora se puede personalizar el color de fondo de la barra de navegación y la barra de herramientas del diálogo de Cast.
- Se corrigieron problemas de la IU específicos del iPhone X.
- Se corrigieron algunos problemas que causaban interrupciones y fallas.
24 de febrero de 2020
Android Sender 18.1.0
-
Se agregaron constantes predefinidas para los
códigos de error detallados y las razones de error de
MediaError
.
22 de enero de 2020
Receptor web
- Se solucionó un problema por el que se transmitían varios estados de contenido multimedia cuando se cambiaban los comandos compatibles.
Receptor v2
- Se mejoró la selección de la tasa de bits para los anuncios VAST.
MPL
- Se agregó compatibilidad con la precarga de claves de sesión. Consulta el borrador de la 2ª edición de HTTP Live Streaming para obtener más información.
7 de enero de 2020
Receptor web
-
Se agregó compatibilidad con metadatos de tiempo ID3 en
cast.framework.events.EmsgEvent
. Además, ahora se envíaEmsgEvent
para el contenido HLS/CMAF. -
Se solucionó un problema en el que faltaban datos del reproductor durante
PLAYER_LOAD_COMPLETE
cuando se realizaba la transición a una nueva sesión multimedia. - Se solucionó un problema por el que el ícono de contenido multimedia se superponía con el número y la cuenta regresiva del clip de pausa.
- Se solucionó el problema por el que la cuenta regresiva del primer clip de pausa siempre mostraba 0:00.
- Se actualizó Shaka Player a la versión 2.5.6.
Receptor web v2
-
Se agregó la nueva capability de dispositivo
IS_DEVICE_REGISTERED
adeviceCapabilities
. Si se configura, el dispositivo Cast se registra en Play Console de Cast para la depuración. - Se corrigió un problema de carga detenida.
- Ahora se envían mensajes de error de contenido multimedia individuales para cada elemento con errores en la fila.
MPL
- Se solucionó un problema con las transmisiones en vivo en el que el audio seguía reproduciéndose durante un tiempo después de recibir un mensaje de detención.
- Se solucionó un problema por el que se mostraban artefactos de compresión de video durante los cambios de nivel de calidad.
- Se solucionó un problema por el que fallaban las transmisiones HLS que usaban segmentos *.m4s.
5 de diciembre de 2019
Android Sender 18.0.0
-
Se agregó
setMediaSessionEnabled
para que los desarrolladores habiliten y deshabiliten una sesión multimedia creada por el SDK de Cast. - Se cambió la forma en que se muestran las notificaciones multimedia durante una sesión de transmisión. Si la notificación multimedia está habilitada, siempre se mostrará durante una sesión de transmisión. Anteriormente, solo se mostraba cuando la app estaba en segundo plano.
-
Se cambiaron algunas clases relacionadas con el contenido multimedia para implementar una interfaz
Parcelable
.
11 de noviembre de 2019
Sender para iOS v4.4.6
- Se solucionó un problema relacionado con la versión mínima compatible de iOS 9.
7 de octubre de 2019
Receptor web
- Se expusieron los roles de los segmentos como parte de los metadatos de los segmentos.
- Se actualizó la versión de Shaka Player a la 2.5.5.
23 de septiembre de 2019
Enviador para iOS v4.4.5
- Se mejoró la compatibilidad con el descubrimiento de dispositivos Cast y la administración de sesiones.
-
Se agregaron nuevos comandos multimedia a
GCKMediaStatus
. -
Se agregó la propiedad
whenSkippable
aGCKAdBreakStatus
. - Se corrigieron errores de la IU para Google Ads y iOS 13.
11 de septiembre de 2019
Android Sender 17.1.0
-
Se agregó el campo
MediaError
a RemoteMediaClient.MediaChannelResult, que se puede usar para acceder al código de error detallado de los comandos multimedia que fallaron. -
MediaStatus.COMMAND_SKIP_FORWARD
yMediaStatus.COMMAND_SKIP_BACKWARD
dejaron de estar disponibles. En su lugar, las apps deben usarMediaStatus.COMMAND_QUEUE_NEXT
yMediaStatus.COMMAND_QUEUE_PREVIOUS
. -
Se agregó una nueva dependencia en
com.google.android.datatransport:transport-api:2.0.0
.
9 de septiembre de 2019
Receptor web
-
El tipo de metadatos
TV_SHOW
ahora tiene una vista previa de "Reproducir a continuación" en el reproductor predeterminado si el siguiente elemento está precargado. -
Se agregó la clase
ContentRating
al espacio de nombrescast.framework.messages
. -
Se actualizó el título de audio predeterminado de la IU para que
metadata.artist
tenga prioridad sobremetadata.albumArtist
. - Se agregó compatibilidad con valores de startTime negativos para indicar la hora de inicio en relación con el final del contenido o el borde en vivo.
- Exploración multimedia:
- El panel de navegación de contenido multimedia ahora se oculta automáticamente después de 30 segundos de inactividad del usuario.
- Se agregó el botón de reproducción/pausa y la miniatura del elemento multimedia a la esquina superior derecha de la superposición de exploración de contenido multimedia.
- Se actualizó el comportamiento de la lista de exploración de contenido multimedia. Ahora, el desplazamiento horizontal se restablece a la posición inicial de la izquierda cada vez que se establece el contenido de Explorar contenido multimedia.
- Correcciones de errores:
-
Se retrasó la resolución de la promesa de finalización
BasePlayer
para permitir que se active el evento del elemento multimedia. - Se controló el error de carga para la precarga de anuncios.
- La marca de agua ahora se muestra con el resto de los metadatos.
-
La IU de audio predeterminada en Chromecast respeta los estilos de
.progressBar
. - Se eliminó el parpadeo de una pantalla inactiva antes de la CARGA y entre la reproducción de elementos multimedia posteriores.
- Se corrigió la detención de salto para el contenido de Dash.
Receptor web v2
-
Se agregó la clase
ContentRating
al espacio de nombrescast.receiver.media
. - Se corrigió un error en el que los datos de error se propagaban de forma incorrecta cuando había varios elementos en la cola.
Biblioteca de Media Player
- Se agregaron atributos #EXT-X-MEDIA de HLS a la API.
- Correcciones de errores:
- Se corrigió un problema con las operaciones remove() de SourceBuffer fallidas que causaban que el cambio de pista de audio provocara una falla en la reproducción.
- Se solucionó un problema de análisis cuando se especificaba un tipo de formato de audio empaquetado (por ejemplo, *.ec3), pero se usaban segmentos basados en MPEG-4 (por ejemplo, *.mp4, *.mp4a, etcétera).
- Se solucionó un problema de HLS por el que los subtítulos CEA608 en banda se mostraban con una latencia notable.
- Se corrigió el contenido HLS y Smooth sin audio que no se cargaba.
27 de agosto de 2019
Remitente web
- El remitente web ahora usa la nueva sintaxis de elementos personalizados v1. Esta versión reemplaza a la v0, que dejó de estar disponible.
-
Se corrigieron los eventos modificados para
breakTime
,breakClipTime
yliveSeekableRange
con las nuevas funcionesgetEstimatedBreakTime
,getEstimatedBreakClipTime
ygetLiveSeekableRange
agregadas a Chrome M77.
12 de agosto de 2019
Sender para iOS v4.4.4
- Se mejoró la experiencia en iOS 13.
- Se mejoró la compatibilidad con la detección de dispositivos compatibles con Cast.
30 de julio de 2019
Receptor web
- Se actualizó la versión de Shaka Player a la 2.5.1.
- Se solucionó el problema por el que la superposición de metadatos desaparecía demasiado rápido durante la carga de contenido.
- Se corrigió el manejo del rechazo en el interceptor de carga para borrar el estado de carga.
- Se actualizó
setBrowseContent
para que sea nulo. - Se solucionó un problema por el que la hora actual informada era incorrecta cuando se saltaban las pausas publicitarias.
- Se agregó compatibilidad con ignoreTtmlPositionInfo para ignorar el posicionamiento de los subtítulos TTML.
- Se mejoró la compatibilidad para el manejo de errores de carga:
- Se evitó activar varias
MediaFinishedEvent
. - Se activó la devolución de llamada de error del administrador de contenido multimedia para borrar el error del reproductor al cargar.
22 de julio de 2019
Enviador para iOS v4.4.3
- Se mejoró la compatibilidad con el manejo de errores de carga proporcionando un error_reason.
- Se lanzó una versión del SDK sin el modo de invitado.
17 de junio de 2019
Android Sender 17.0.0
- El SDK más reciente cambia de las bibliotecas de compatibilidad de Android a las bibliotecas de Jetpack (AndroidX). Las bibliotecas no funcionarán, a menos que realices los siguientes cambios en tu app:
-
Actualiza
com.android.tools.build:gradle
a la versión 3.2.1 o una posterior. - Actualiza
compileSdkVersion
a la versión 28 o una posterior. - Actualiza tu app para usar Jetpack (AndroidX). Sigue las instrucciones en Cómo migrar a AndroidX.
- Para obtener más información, consulta las Notas de la versión de las APIs de Google para Android.
10 de junio de 2019
Receptor web
- Se agregó compatibilidad con Exploración multimedia, una nueva función para descubrir contenido en pantallas inteligentes.
- Se agregó la localización en la IU predeterminada para 9 configuraciones regionales nuevas:
- Danés
- Inglés (Reino Unido)
- Inglés (India)
- Inglés (Singapur)
- Francés (Canadá)
- Italiano
- Noruego
- Neerlandés
- Sueco
- Se quitaron las esquinas redondeadas de la portada del álbum para la IU remota.
- Se corrigieron errores en las secciones En vivo y otras.
Sender para iOS v4.4.2
- Modo de invitado
- Se agregó compatibilidad con la opción "Habilitar modo de invitado" de la Consola de desarrolladores de Cast.
- Se solucionó un problema de administración de sesiones del modo de invitado.
- Correcciones de errores
- Se corrigió un problema de localización que se introdujo en la versión 4.4.1.
24 de abril de 2019
Sender para iOS v4.4.1
- Se agregó compatibilidad alfa para transmisiones en vivo. Para obtener más información, consulta la guía para desarrolladores.
- Se agregaron nuevas estructuras de datos y atributos para el estado de las transmisiones en vivo.
- Se agregaron nuevas claves de GCKMediaMetadata.
- Se agregaron los siguientes comandos multimedia de transmisión en vivo:
- [GCKRemoteMediaClient loadMediaWithLoadRequestData:]
- [GCKRemoteMediaClient seekWithOptions:]
- Se mejoró la IU del controlador expandido para admitir transmisiones en vivo:
- Se cambió el diseño y la apariencia del controlador expandido.
- Correcciones de errores
- Se corrigió la parte inferior de GCKUICastContainerViewController en el iPhone X.
- Se solucionó el problema de reconexión cuando el SO realiza actividades de red extensas.
- Se corrigió la falla en la inicialización de la etiqueta de accesibilidad con GCKUICastButton.
23 de abril de 2019
Receptor web
- Se agregó compatibilidad alfa para transmisiones en vivo. Para obtener más información, consulta la guía para desarrolladores.
- Se actualizó la IU para admitir transmisiones en vivo, incluido el indicador en vivo.
- Se agregó el campo mediaCategory al estado del contenido multimedia para indicar si es un video, audio o foto.
- Correcciones de errores
- Se corrigió el uso del valor que devuelve playbackConfig.segmentHandler.
Biblioteca de Media Player
- Se agregó compatibilidad con el códec HEVC a HLS en MPL.
Remitente web
- Se agregó compatibilidad alfa para transmisiones en vivo. Para obtener más información, consulta la guía para desarrolladores.
- Se agregó compatibilidad con anuncios. Para obtener más información, consulta la guía para desarrolladores.
- Se agregó RemotePlayerController.skipAd() para los anuncios que se pueden omitir.
Android Sender 16.2.0
- Se agregó compatibilidad alfa para transmisiones en vivo. Para obtener más información, consulta la guía para desarrolladores.
- Se agregaron nuevas estructuras de datos y atributos para el estado de las transmisiones en vivo.
- Se agregaron nuevas claves de MediaMetadata.
- Se agregaron los siguientes comandos multimedia de transmisión en vivo:
- RemoteMediaClient#load(MediaLoadRequestData)
- RemoteMediaClient#seek(MediaSeekOptions)
- Se mejoró la IU del controlador expandido para admitir transmisiones en vivo:
- Se agregó compatibilidad con transmisiones en vivo a los widgets de la IU del controlador expandido.
- Se cambió el diseño y la apariencia del controlador expandido.
- Se introdujo el widget CastSeekBar compatible con transmisiones en vivo para reemplazar el SeekBar nativo.
- Se modificó ExpandedControllerActivity para usar CastSeekBar en lugar de SeekBar para la compatibilidad con transmisiones en vivo. ExpandedControllerActivity#getSeekBar() ahora dejó de estar disponible y mostrará una instancia ficticia.
- Se agregó un nuevo estado de jugador MediaStatus#PLAYER_STATE_LOADING:
- Cuando el receptor web comienza a cargar el contenido multimedia, la propiedad playerState en MediaStatus se establece en MediaStatus#PLAYER_STATE_LOADING hasta que comienza a almacenar en búfer o reproducir contenido.
- En la mayoría de los casos, la app controla este estado de la misma manera que controlaba MediaStatus#PLAYER_STATE_BUFFERING.
- Los estados de almacenamiento en búfer y carga no siempre son intercambiables.
- Durante la carga, el receptor web aún no resuelve toda la información multimedia, por lo que la única información multimedia disponible es la que estaba presente en la solicitud de carga de contenido multimedia del remitente.
- Mientras se almacena en búfer, la información multimedia puede contener información adicional que resuelve el receptor.
- Se modificó MediaMetadata para admitir audiolibros:
- Se agregaron nuevas claves de MediaMetadata.
- Se agregó un nuevo tipo de metadatos para los audiolibros.
25 de marzo de 2019
Receptor web
-
Se reemplazó el uso de
document.registerElement()
porcustomElements.define()
para que el SDK de receptor web sea compatible con versiones más recientes de la plataforma de Cast. -
MediaStatus.breakStatus
ahora muestra un objeto vacío cuando hay pausas publicitarias para el contenido, pero no se está reproduciendo una. - Se solucionó un problema con el análisis de etiquetas VAST intercaladas.
Biblioteca de Media Player
- Se solucionó el problema de retraso de alrededor de 20 s cuando se cambiaban las pistas de audio.
13 de febrero de 2019
Receptor web
- Se corrigió la aparición repentina del botón Omitir anuncio para la IU táctil.
- Se corrigió la visualización de información de pausas en el control remoto.
Biblioteca de Media Player
- Se corrigió un problema con el manejo de licenseUrl para el contenido multimedia precargado.
5 de febrero de 2019
Sender para iOS v4.3.5
- Se agregó compatibilidad con los metadatos de audiolibros. Consulta GCKMediaMetadata.h para obtener más detalles.
- Establece el valor correcto para static_framework en el podspec.
- Se dividieron los styleAttributes para la barra de navegación y la barra de herramientas en el controlador de conexión.
- Correcciones de errores
- Se corrigió una falla en ciertas inicializaciones de bases de datos fallidas.
- Se solucionó un problema con la barra de volumen del receptor web durante las llamadas telefónicas entrantes o los timbres de alarma.
- Se corrigió la llamada redundante de ciertos métodos delegados durante el descubrimiento.
- Se solucionó un problema por el que la lista de la fila de contenido multimedia no se borraba después de que se terminaba de reproducir el último elemento de la fila.
- No se permite mostrar dispositivos cercanos inaccesibles cuando la red no está disponible.
- Se inhabilitó el control deslizante de volumen en el controlador de vista del dispositivo para los dispositivos en los que no se puede controlar el volumen.