Notas de la versión del SDK nativo de Brightcove para Android

En este tema, encontrará la información más reciente sobre cambios y mejoras en Brightcove Native SDK para Android.

Únase a la lista de correo y reciba anuncios de lanzamiento de los SDK nativos:

Lanzamiento actual

Versión 8.0.0

11 enero 2023

Esta importante versión de Brightcove Native SDK para Android contiene cambios de comportamiento significativos. Para obtener más información, consulte el documento The Native SDK for Android Release 8.0.0 .

Cambios en el SDK:

  • Con esta versión de Brightcove Native SDK para Android, se admite la reproducción en primer plano y en segundo plano de contenido de solo audio.
  • El MediaPlayback interfaz abstrae la reproducción de la VideoView para admitir la reproducción continua de medios de solo audio. El MediaPlayback comunica el estado de reproducción a la notificación y al VideoView .
  • Compatibilidad con un servicio de primer plano continuo para la reproducción continua.
  • Mejora la carga de listas de reproducción y el almacenamiento previo en búfer para una experiencia de usuario final más fluida.

Cambios de ExoPlayer:

  • Se agregó una notificación de estilo multimedia con controles de reproducción personalizables desde el tono de notificación y la pantalla de bloqueo. Este BrightcoveNotification La clase conecta la reproducción con un servicio en primer plano.

Lanzamientos Anteriores

Versión 7.1.4

16 noviembre 2022

Cambios en el complemento de transmisión:

  • Agrega soporte para Brightcove Cast Receiver emeHeaders CustomData objeto.

Versión 7.1.3

27 octubre 2022

Cambios en el SDK:

  • Soluciona un problema en el que para algunas solicitudes de métricas de análisis de reproducción, un video_duration el parámetro de solicitud no se incluiría.
  • Soluciona un problema con la compatibilidad con Live HLSe con protección de claves de licencia.

Versión 7.1.2

30 septiembre 2022

Cambios en el SDK:

  • Se agregó soporte para audio Dolby Atmos. Dado que no todos los dispositivos Android admiten la reproducción con este formato, se recomienda transcodificar el contenido para producir variantes de audio estéreo y Dolby Atmos. Para obtener más información, consulte el documento Dolby Atmos Audio .

Cambios de ExoPlayer:

  • Se agregó soporte para los valores de rol DASH Dub y Description.

Versión 7.1.1

1 de septiembre de 2022

Cambios en el SDK:

  • Soluciona un problema de rendimiento que podría ocurrir al cargar subtítulos cerrados de mayor tamaño.

Cambios de ExoPlayer:

  • Agrega métodos setter y getter para el allowChunklessPreparation propiedad de ExoPlayer HLSMediaSource.Factory . Con Exoplayer 2.17.0, el valor predeterminado de esta propiedad se cambió de false a true , que tenía el efecto secundario no deseado de desactivar la visualización de los subtítulos 608/708 si estaban presentes en el contenido de HLS. Si su contenido HLS incluye subtítulos 608/708, use el ExoPlayerVideoDisplayComponent 's setAllowHlsChunklessPreparation(false) para deshabilitar la preparación sin fragmentos de HLS en ExoPlayer HLSMediaSource.Factory , que restaurará la visualización de 608/708 subtítulos.

Versión 7.1.0

22 agosto 2022

Cambios en el SDK:

  • Agrega soporte para una propiedad de fuente de cifrado con transmisiones HLSe Live.
  • Mejora el manejo de respuestas para conexiones de simultaneidad de transmisión genérica.
  • Soluciona un problema en el que una duración nula o faltante devuelta para un video en vivo remoto creado en VideoCloud Studio, daría como resultado un VideoParserException .
  • Agrega un tipo de evento de simultaneidad de transmisión genérica (GSC), GSC_HEARTBEAT_STOPPED .

Cambios de ExoPlayer:

  • Proporciona métodos setter y getter en ExoPlayerVideoDisplayComponent Para el DefaultRenderersFactory .
  • En el TrackSelectorHelper clase, applySelectionOverride(int, SelectionOverrideCreator) es obsoleto. Por favor use applyTrackSelectionOverrides(int, TrackSelectionOverrideCreator) en cambio.
  • Corrige las devoluciones de llamada para recuperar metadatos de los medios durante la reproducción.

Cambios en el complemento SSAI:

  • Esta versión de SDK nativo de Brightcove para Android es la versión final para usar la biblioteca de Android IAB de Brightcove como una dependencia externa. Las futuras versiones de SDK incluirán la biblioteca de Android de IAB como una integración en el complemento SSAI.
  • Soluciona un problema de análisis con BrightcoveDebug elementos que tienen etiquetas de cierre automático.
  • Con esta versión, se admite Live DRM con SSAI.

Versión 7.0.1

6 julio 2022

Cambios en el SDK:

  • Con esta versión de Brightcove Native SDK para Android, MediaPlayer ya no es compatible con la reproducción de contenido.
  • Brightcove Native SDK para Android ahora es compatible con Android 12 .
  • El SDK nativo de Brightcove para Android ahora admite la reproducción de transmisiones en vivo HLS de baja latencia.

Cambios de ExoPlayer:

El SDK de Brightcove Native Player para Android ahora es compatible con ExoPlayer 2.17.1. Tenga en cuenta los siguientes cambios importantes con esta actualización:

  • Esta versión de ExoPlayer requiere Java 11 y Gradle 7.4.
  • La sesión de Drm < T extiende ExoMediaCrypto>< /T> la interfaz ya no requiere un parámetro.
  • ExoPlayerDrmSessionManager < T extiende ExoMediaCrypto>< /T> la interfaz ya no requiere un parámetro.
  • En la clase TrackSelectorHelper , el método updateTracksSelectionArray(@Nullable TrackSelectionArray trackSelections) está en desuso y se reemplaza por updateTracksGroupInfos(@Nullable ImmutableList < TracksInfo.TrackGroupInfo> trackGroupInfos) .
  • En la clase MediaSourceUtil , el método findRenditionUrl(@NonNull HlsMasterPlaylist hlsMasterPlaylist, int trackType, @NonNull Format format) está en desuso y se reemplaza por findRenditionUrl(@NonNull HlsMultivariantPlaylist hlsMasterPlaylist, int trackType, @NonNull Format format) .
  • En la clase ExoAdPlayer , el constructor requiere un StyledPlayerView en lugar de un PlayerView .
  • La clase DashAudioTrackSelector ahora está obsoleta y reemplazada por ExoPlayerVideoDisplayComponent*.setPeakBitrate(int)* .
  • La clase DashPeakBitRateTrackSelector ahora está obsoleta y reemplazada por ExoPlayerVideoDisplayComponent*.setPeakBitrate(int)* .
  • La clase HLSPeakBitrateTrackSelector ahora está obsoleta y reemplazada por ExoPlayerVideoDisplayComponent*.setPeakBitrate(int)*.

Cambios en el complemento de transmisión:

  • Se actualizó la compatibilidad con ExoPlayer Cast Extension a 2.17.1
  • En la clase GoogleCastComponent , los métodos loadItems(MediaQueueItem, int) y addItems(MediaQueueItem) ahora devuelven void en lugar de PendingResult RemoteMediaClient.MediaChannelResult> .

Soluciona un problema al transmitir videos DRM remotos, donde el remitente de Cast enviaba un campo CustomData inesperado a la aplicación Brightcove Cast Receiver.

Complemento IMA:

  • La dependencia del SDK de IMA de Google se actualizó a 3.27.0. Esta actualización incluye soporte para Android 12.

Complemento de pulso:

  • Compatibilidad con Pulse SDK actualizada a 2.5.20.3.0

Cambios en el complemento SSAI:

  • SSAIComponent ahora admite el uso del propio objeto XML Brightcove VideoCloud VMAP como fuente. Para usar un objeto XML VMAP de VideoCloud como fuente, llame a processVideo(String vmapXmlString) en la clase SSAIComponent .

Versión 6.18.6

14 junio 2022

Cambios en el SDK:

  • Soluciona un problema de subprocesamiento en el Catalog clase, lo que resultó en un requisito en SDK versión 6.18.5 que el Catalog debe definirse e instanciarse solo desde el subproceso principal del reproductor. Desde la versión 6.18.6 en adelante, el Catalog aún debe definirse dentro de la Player Activity clase, pero la creación de instancias se puede llamar desde otros subprocesos. Consulte las aplicaciones de muestra del SDK de Android de Brightcove para ver ejemplos de cómo definir e instanciar el Catalog .
  • Actualiza la versión de dependencia de GSON de 2.8.5 a 2.8.9 en respuesta a un informe de CVE (CVE-2022-25647) sobre una posible vulnerabilidad en algunas clases, ninguna de las cuales utiliza Brightcove SDK.

Cambios de ExoPlayer:

  • Soluciona un problema por el que una búsqueda en un reproductor en pausa provocaba que el depurador de la barra de búsqueda no actualizara su progreso cuando se reanudaba la reproducción.
  • Soluciona un problema con los TTL de manifiesto corto donde la configuración DRM multisesión no se volvió a aplicar cuando el video se actualizó después de su manifiesto. timestamp venció.

Versión 6.18.5

27 mayo 2022

Cambios en el SDK:

  • Agrega soporte para TTL de manifiesto corto.
  • IMPORTANTE : El uso de esta versión SDK requiere el Catálogo y HttpRequestConfig objetos a ser instanciados en el hilo principal del jugador (en su onCreate método). Tenga en cuenta que estos objetos se pueden definir globalmente (lo cual es preferible) o en el onCreate método. Consulte BasicSsaiSampleApp para ver un ejemplo de objetos definidos localmente e instanciados, y VideoViewListSampleApp para ver un ejemplo de objetos definidos globalmente e instanciados localmente. Tenga en cuenta también que este es un requisito independiente del uso de la función TTL de manifiesto corto.

Cambios en el complemento SSAI:

  • Agrega soporte para TTL de manifiesto corto.

Versión 6.18.4

20 mayo 2022

Cambios en el SDK:

  • Soluciona un problema por el que podría producirse un bloqueo si una cuenta no configurada para Generic Stream Concurrency (GSC) intentara reproducir contenido en un reproductor configurado para GSC.
  • Mejora el manejo de errores de GSC en los casos en que se pueden usar tokens no válidos o caducados al intentar reproducir contenido.

Versión 6.18.3

6 mayo 2022

Cambios en el SDK:

  • Soluciona un problema de accesibilidad en el que cuando la barra de búsqueda está enfocada, el porcentaje de progreso del video es leído constantemente por el TalkBack sistema.
  • Soluciona un problema de accesibilidad en el que al tocar dos veces la vista del video se enfocaba en la barra de búsqueda y provocaba una búsqueda inesperada en el video.

Cambios de ExoPlayer:

  • ExoPlayerVideoDisplayComponent ahora proporciona un método getter que devuelve la instancia actual del WidevineMediaDrmCallback , o una instancia vacía si es necesario crearla.

Cambios en el complemento de miniaturas:

  • Soluciona un problema por el que las listas de reproducción con una combinación de Video Cloud y videos remotos hacían que se mostrara una miniatura del último video de Video Cloud reproducido al seleccionar un video remoto.

Versión 6.18.2

24 de marzo de 2022

Cambios en el SDK:

  • Se solucionó un problema donde video_engagement Los eventos de análisis para videos VOD remotos podrían tener un video_seconds_viewed parámetro en lugar del parámetro de rango esperado.
  • Se corrigieron los oyentes de clic en el botón del jugador cuando se usaban diseños personalizados.
  • Se solucionó un problema por el cual una llamada a NumberUtil.safeLongToInt podría fallar cuando su entrada es demasiado grande. Ahora, cuando la entrada no se puede convertir de forma segura, el método devuelve Integer.MIN_VALUE con un mensaje explicativo.

Cambios de ExoPlayer:

  • Se solucionó un problema por el cual, con listas de reproducción mixtas con contenido DRM y Clear, la reproducción fallaba si se cargaba un video Clear después de reproducir un video DRM.
  • Se agregó soporte para configurar el multiSession propiedad (necesaria para la rotación de claves) al crear la DefaultDrmSessionManager en ExoPlayer.

Versión 6.18.1

26 ene 2022

Cambios de ExoPlayer:

  • Se agregó una verificación para abordar un bloqueo que podría ocurrir si la instancia de ExoPlayer se vuelve nula y getCurrentManifest() se llama en el ExoPlayerVideoDisplayComponent .

Versión 6.18.0

21 de diciembre de 2021

Cambios en el SDK:

Cambios en el complemento SSAI:

Versión 6.17.3

10 dic 2021

Cambios en el SDK:

  • Soluciona un problema de simultaneidad de transmisión genérica (GSC) en el que la segunda solicitud de latido seguiría a la primera solicitud 30 segundos después, en lugar de la frecuencia configurada en la cuenta.
  • Mejoras en la funcionalidad de solicitud de latido de GSC durante los eventos del ciclo de vida de Actividad del jugador, Fragmento de jugador y Imagen en imagen, así como reintentos en fallas de solicitud de latido.

Versión 6.17.2

19 de noviembre de 2021

Cambios en el SDK:

  • Esta versión agrega soporte para Generic Stream Concurrency (GSC). Consulte las páginas de soporte de Brightcove para obtener más información.
  • Limitaciones
    • Chromecast no es compatible con esta versión. La compatibilidad con Chromecast se incluirá en una versión futura del SDK.
  • Problemas conocidos
    • Al enviar solicitudes al servicio de latidos de GSC, la segunda solicitud seguirá a la primera solicitud 30 segundos después, en lugar de la frecuencia establecida para la cuenta. Este problema solo ocurre en la segunda solicitud de latido, no afecta la reproducción y se abordará en una versión futura del SDK.

Versión 6.17.1

14 de octubre de 2021

Cambios de ExoPlayer:

  • Se solucionó un problema con el registro demasiado detallado desde el ExoPlayerVideoDisplayComponent

Versión 6.17.0

8 de octubre de 2021

Cambios en el SDK:

  • Brightcove Native SDK para Android ahora es compatible con Android 11

Cambios de ExoPlayer:

  • Brightcove Native SDK para Android ahora es compatible con ExoPlayer 2.14.2. Tenga en cuenta los siguientes cambios:

    • En el ExoPlayerVideoDisplayComponent clase el getBrightcoveDrmSession() : BrightcoveDrmSession el método ha quedado en desuso. En su lugar, utilice ExoPlayerDrmSessionManager. See ExoPlayerVideoDisplayComponent:getExoPlayerDrmSessionManager(): ExoPlayerDrmSessionManage

    • En el ExoPlayerVideoDisplayComponent clase, en el InfoListener subclase, el método onDecoderInitialized(AnalyticsListener.EventTime eventTime, int trackType, String decoderName,long initializationDurationMs) ha quedado en desuso. En su lugar, utilice onAudioDecoderInitialized(AnalyticsListener.EventTime eventTime, String decoderName, long initializationDurationMs) : void y/o onVideoDecoderInitialized(AnalyticsListener.EventTime eventTime, String decoderName, long initializationDurationMs) : void

    • El constructor de la ExoPlayerDrmSessionManager la clase ha quedado en desuso. En su lugar, utilice el ExoPlayerDrmSessionManager.Builder

    • El constructor de la OfflineLicenseManager la clase ha quedado en desuso. El OfflineLicenseManager ahora usa el patrón Builder. Ver OfflineLicenseManager.Builder

    • En la clase BrightcoveSegmentTemplate , el método getSegmentCount(long periodDurationUs) ha quedado en desuso. En su lugar, utilice getSegmentCountLong(long periodDurationUs)

    • Esta versión de ExoPlayer requiere que se cree y se acceda a cualquier instancia de ExoPlayer en el subproceso principal, por lo que cualquier acceso a la ExoPlayerVideoDisplayComponent.getExoPlayer El método o el acceso directo a cualquier método de ExoPlayer también debe estar en el hilo principal. Versión 6.16.6

Versión 6.16.6

4 de octubre de 2021

Cambios en el SDK:

  • Mejora la video_seconds_viewed medición en video_engagement eventos enviados al back-end de Brightcove Analytics

Cambios de ExoPlayer:

  • Soluciona un problema por el que un dispositivo podía entrar en suspensión durante la reproducción de anuncios.

Versión 6.16.5

23 ago 2021

Cambios en el SDK:

  • Soporte mejorado para subtítulos 608/708 que tienen un atributo de idioma
  • emitir un DID_SET_VIDEO_STILL_ERROR evento cuando la imagen del póster de un video no se puede cargar

Cambios de ExoPlayer:

  • Emitir un AD_ERROR evento de error si se interrumpe la carga del anuncio o si ExoAdPlayer o su contexto son nulos

Cambios en el complemento de reproducción sin conexión:

  • Se solucionó un problema por el cual poner en segundo plano o salir de la aplicación podía causar que el contenido sin conexión no se reprodujera.

Versión 6.16.4

4 ago 2021

Cambios en la reproducción sin conexión:

  • Se solucionó un problema por el cual algunos archivos de imagen no se descargaban correctamente

Versión 6.16.3

1 de julio de 2021

Cambios en el SDK:

  • Agrega compatibilidad con marcas de agua forenses. Para obtener más información, consulte el documento Forensic Watermarking with Native SDKs .
  • Actualizado el VideoUtils clase para agregar un método de utilidad para eliminar las fuentes de subtítulos del sidecar del objeto Video
  • Se solucionó un problema por el cual el video_duration El parámetro de URL no se incluyó en las solicitudes al back-end de Analytics de Brightcove para generar informes

Cambios en el complemento de transmisión:

  • Se agregó soporte para configurar una URL a un reproductor personalizado para la aplicación del receptor Cast. Consulte la documentación de soporte del SDK de Android para obtener más información.
  • Se agregó soporte para enviar subtítulos seleccionados y la información de la pista de audio a un receptor Cast

Cambios en la reproducción sin conexión:

  • Se agregó soporte para establecer propiedades en el AbstractOfflineCatalog clase. Las propiedades del catálogo sin conexión se pueden establecer de dos formas:

    • Como un Map<String, String> de pares clave/valor usando el setProperties(Map<String, String>) método
    • A través de getProperties().put(key, value) método
  • Se agregó soporte para crear personalizado NotificationChannels en el DownloadManager clase. Consulte la documentación de soporte del SDK de Android para obtener más información.

Versión 6.16.2

10 de mayo de 2021

Cambios en el SDK:

  • Se solucionó un problema por el cual el texto se rastrea con el tipo subtitles no estaban siendo analizados o mostrados
  • Se solucionó un problema por el cual las pistas de texto que tienen el position atributo con el adicional line-left o line-right el atributo no se estaba analizando o mostrando

Cambios en ExoPlayer 2:

  • Se solucionó un problema por el cual se podía usar un índice incorrecto para obtener el idioma de audio seleccionado actualmente

Cambios en el complemento de Omniture:

  • Se solucionó un problema por el cual los latidos del corazón continuarían después de que el jugador fuera destruido.

Cambios en el complemento SSAI:

  • Se agregó compatibilidad de análisis para elementos de extensión VMAP y VAST anidados

  • Se agregó soporte de análisis para VAST AdVerification elementos

Versión 6.16.1

12 de enero de 2021

Cambios en el SDK:

  • Informes de participación de video mejorados para videos SSAI VOD.
  • La DashWidevineAuthorizer la clase está en desuso. Por favor use el WidevineAuthorizer clase en su lugar.

Cambios en el complemento IMA:

  • El SDK de IMA de Google se ha actualizado a la versión 3.21.1.
  • Se mejoró la compatibilidad con los anuncios que se pueden omitir y se solucionó un problema por el cual los anuncios que se pueden omitir podrían no salir limpiamente y el audio del anuncio podría escucharse después de reanudar la reproducción del contenido.
  • Se solucionó un problema con la configuración de tipos de mímica para anuncios, donde los tipos de mímica proporcionados por el usuario no los establecía el generador del complemento.
  • Se agregaron métodos de conveniencia de plugin Builder para:
    • Establecer tipos de anuncios mimos en el AdsRenderingSettings objeto - ver Builder.setMimeTypes(List) : void
    • Establecer el tiempo de espera de carga del video del anuncio en el AdsRenderingSettings objeto - ver Builder.setLoadVideoTimeout(int) : void
    • Configuración del modo de depuración en el ImaSdkSettings objeto - ver Builder.setDebugMode(boolean) : void
  • Tenga en cuenta:

    Estos métodos de conveniencia son métodos de miembros en el AdsRenderingSettings y ImaSdkSettings Objetos del SDK de IMA de Google. Cuando se llama directamente a través de Builder, estos métodos configurarán el AdsRenderingSettings y ImaSdkSettings objetos que se crean de forma predeterminada en Builder.

    Si decide crear personalizado AdsRenderingSettings y ImaSdkSettings Objetos del SDK de IMA de Google para usar en el complemento de IMA, puede llamar a los métodos de esos objetos directamente:

    • AdsRenderingSettings.setMimeTypes(List) : void
    • AdsRenderingSettings.setLoadVideoTimeout(int) : void
    • ImaSdkSettings.setDebugMode(boolean) : void

Cambios en el complemento SSAI:

  • Se agregó soporte para transmisiones SSAI en vivo que se crean como objetos de video remotos.

Versión 6.16.0

14 de oct de 2020

Cambios en el complemento de transmisión:

  • El complemento Cast se ha rediseñado y ahora es compatible con Brightcove Cast Receiver v2.0.
  • Consulte la documentación del SDK nativo de Android de Brightcove y las aplicaciones de muestra del SDK nativo de Android de Brightcove para obtener más información y ejemplos de código.

Versión 6.15.1

22 septiembre 2020

Cambios en el SDK:

  • El SDK nativo de Brightcove para Android ahora es compatible con el idioma árabe (RTL) en los controles del reproductor y las etiquetas de la interfaz de usuario.

  • Tenga en cuenta: Si bien se admite el texto en idioma árabe (RTL), actualmente solo se admiten los diseños de control del reproductor de izquierda a derecha (LTR).

  • Se solucionó un problema donde ciertos video_view y video_engagement Los parámetros de eventos de análisis podrían incluir números arábigos no occidentales para los siguientes parámetros:

    • video_view:
      • start_time_ms
      • load_time_ms
    • video_engagement:
      • range
      • video_seconds_viewed

Cambios en el complemento de transmisión:

  • El complemento Cast ahora admite texto en árabe (RTL) en los controles de transmisión y las etiquetas de la interfaz de usuario.
  • Tenga en cuenta que la compatibilidad con el idioma árabe no se extiende a las pantallas (tiempo transcurrido y duración del video) en el controlador expandido Cast.

  • La visualización de estos componentes está controlada por la API de Google Cast.

Cambios en el complemento de reproducción sin conexión:

  • El complemento de reproducción sin conexión ahora admite texto en árabe (RTL) en las etiquetas de la interfaz de usuario.

Cambios en el complemento Pulse:

  • El complemento Pulse ahora admite texto en árabe (RTL) en los controles de anuncios y las etiquetas de la interfaz de usuario.

Cambios en el complemento SSAI:

  • El complemento SSAI ahora admite texto en árabe (RTL) en los controles de anuncios y las etiquetas de la interfaz de usuario.

Versión 6.15.0

25 agosto 2020

Cambios en el SDK:

  • Se implementó una verificación nula adicional para los URI de subtítulos.

Cambios de ExoPlayer:

  • Se corrigió una regresión en el ExoPlayerVideoDisplayComponent setPeakBitrate() método en el que se ignoraría la tasa de bits especificada y se seleccionaría la tasa de bits más alta en su lugar.

Cambios en el complemento IMA:

  • El SDK de IMA de Google se ha actualizado a la versión 3.19.4. Algunos de los cambios incluyen:

    • SdkFactory.createAdDisplayContainer() es obsoleto
    • AdDisplayContainer.setPlayer(VideoAdPlayer) es obsoleto
    • AdDisplayContainer.setAdContainer(ViewGroup) es obsoleto
    • AdsRequest.setAdDisplayContainer(AdDisplayContainer) es removido

      Para obtener la lista completa de cambios, consulte el historial de versiones del SDK de Android IMA de Google.

  • La GoogleIMAComponent ahora usa un constructor para su construcción.
  • El complemento IMA crea automáticamente el AdDisplayContainer utilizando la BrightcoveVideoView por defecto.

    Puede proporcionar un AdDisplayContainerFactory hacia GoogleIMAComponent.Builder para proporcionar el tuyo AdDisplayContainer.

  • Los siguientes métodos quedaron obsoletos en el GoogleIMAVideoAdPlayer clase:
    • playAd(). Use playAd(AdMediaInfo) en lugar de
    • loadAd(String). Use loadAd(AdMediaInfo, AdPodInfo) en lugar de
    • stopAd(). Use stopAd(AdMediaInfo) en lugar de
    • resumeAd(). Use playAd(AdMediaInfo) en lugar de
    • pauseAd(). Use pauseAd(AdMediaInfo) en lugar de

  • Se solucionó un problema por el cual el complemento IMA no emitía el AD_PAUSED/AD_RESUME eventos al llamar GoogleIMAVideoAdPlayer.pauseAd y GoogleIMAVideoAdPlayer.resumeAd , respectivamente.

    Para obtener más información, visite la descripción general del SDK de Android de Brightcove en el sitio de asistencia de Brightcove.

Cambios en el complemento VMAP:

  • El complemento VMAP obsoleto se eliminó del SDK nativo de Brightcove para Android. Para la publicación de anuncios VMAP, continúe utilizando el complemento IMA.

Cambios en el complemento OnceUx:

  • El complemento OnceUx obsoleto se eliminó del SDK nativo de Brightcove para Android. En su lugar, utilice el complemento SSAI.

Versión 6.14.1

7 agosto 2020

Cambios en el complemento SSAI:

  • Soluciona un problema donde el CustomClick elemento fallaría al analizar.

  • Soluciona un problema al analizar el elemento de extensión VAST.

Versión 6.14.0

8 de julio de 2020

Cambios en el SDK:

  • Integración mejorada con Android TalkBack (y Samsung Voice Assistant).

  • La VideoParser ahora ignorará cualquier fuente DRM que no contenga sistemas de claves Widevine.

  • Se solucionó un problema por el cual el VideoParser no podría analizar una fuente de VTT en miniatura que no contiene la propiedad de ancho de banda.

  • Se solucionó un problema en las plataformas de Android TV donde el botón Opciones del reproductor no se mostraba después de que se completaban las pausas publicitarias de inserción de anuncios del lado del servidor.

Cambios en el complemento IMA:

  • ExoPlayer ahora se usa para la reproducción de anuncios en lugar de MediaPlayer.

Versión 6.13.3

21 de mayo de 2020

Cambios en el SDK:

  • Representación mejorada de texto ruby en subtítulos cerrados de sidecar. Próximamente se producirá una mejora similar para los subtítulos en manifiesto.

Cambios en el complemento de transmisión:

  • Se solucionó un problema por el cual la actividad no se lanzaba como se esperaba cuando se usaba el complemento de Chromecast.

Cambios en el complemento IMA:

  • Se agregó compatibilidad con la orientación por segmentos de público (anuncios), mediante la cual los pares clave / valor se agregan al parámetro cust_params de la URL de la etiqueta de anuncio.

Cambios en el complemento SSAI:

  • Se agregó soporte para la segmentación de segmentos de audiencia (anuncios), mediante el cual los pares clave / valor se agregan a la URL de origen de VMAP.

  • Se solucionó un problema por el cual una URL vacía o con un formato incorrecto en un elemento de seguimiento de VAST puede causar un bloqueo de la aplicación.

Versión 6.13.2

24 abr 2020

Cambios en la reproducción sin conexión:

  • Se actualizó la dependencia de FileDownloader a v1.7.7

    Esta actualización corrige un problema por el cual la descarga mientras la aplicación está en segundo plano podría pausarse inesperadamente.

Cambios en el complemento de miniaturas:

  • Se solucionó un problema de alineación entre el depurador y la vista previa en miniatura en Android TV

Versión 6.13.1

16 abr 2020

Cambios en el SDK:

  • Se agregó soporte para videos HEVC.

    En dispositivos que admiten HEVC (con API nivel 21 y superior), la reproducción de HEVC ahora está disponible automáticamente. Consulte la documentación para obtener detalles técnicos.

Cambios en el complemento Pulse:

  • Búsqueda agregada sin soporte de anuncios al configurar adsDisabled en VideoPlaybackController

  • Se agregó soporte para reproducir anuncios de passback de Pulse

  • Se agregó un mensaje para indicar cuándo el usuario está en un anuncio de pausa.

Cambios en el complemento de miniaturas:

  • Mayor tamaño de la imagen en miniatura que se muestra en tabletas

  • Mayor velocidad de arrastre de miniaturas en Android TV

Cambios en el complemento SSAI:

  • Se solucionó un problema por el cual los subtítulos ocultos podían no estar sincronizados con el video

Versión 6.12.0

5 de marzo de 2020

Cambios en el SDK:

  • Obsoleto BrightcoveSurfaceView.isVideo360Supported(). Según las versiones compatibles actuales, siempre devuelve verdadero.

Complemento de pulso:

  • Con esta versión, Brightcove Native SDK para Android implementa el complemento de publicidad Pulse.

Versión 6.11.0

7 febrero 2020

Cambios en el SDK:

  • Se agregó soporte para el servicio de administración de derechos de reproducción de Brightcove.

  • Rompiendo el cambio: El objeto Lista de reproducción ahora es inmutable.

  • El objeto Lista de reproducción ahora puede contener una combinación de videos con estado Status.OK y Status.ERROR

  • Playlist.getErrorVideos(): Este nuevo método devolverá solo videos con el estado de Status.ERROR

  • Playlist.getAllVideosAndErrors(): Este nuevo método devolverá todos los videos con ambos estados, Status.OK y Status.ERROR , siguiendo el mismo orden que se devolvió en la respuesta del Servicio de gestión de derechos de reproducción

  • Nota: Playlist.getVideos() y Playlist.getCount() se comportan de la misma manera que las versiones anteriores, es decir, solo consideran los videos con estado Status.OK

  • Añadido ErrorListener.onError(List) llamar de vuelta.

  • Obsoleto ErrorListener.onError(String) llamar de vuelta.

  • El objeto Video ahora tiene un código de estado, que puede ser Status.OK o Status.ERROR. Puede recuperar el estado a través de Video.getStatus():Status.

  • Status.OK: El video tiene todas las propiedades esperadas y no tiene Video.Fields.ERRORS en eso.

  • Status.ERROR: El video tiene Video.Fields.ERRORS en sus propiedades en forma de List<CatalogError>.

Complemento VMAP:

  • El complemento VMAP ha quedado obsoleto. Para publicidad del lado del cliente con documentos VMAP y VAST, utilice el complemento IMA.

Versión 6.10.1

17 de enero de 2020

Cambios de ExoPlayer:

  • Se corrigió un bloqueo al intentar reproducir una transmisión en vivo de HLS.

Cambios en la reproducción sin conexión:

  • Se solucionó un problema por el cual algunos archivos de subtítulos VTT no se descargaban correctamente.

Complemento Cast:

  • Agregado nuevo CastMediaUtil.toMediaInfo métodos sin el parámetro de contexto de Android innecesario.

  • Obsoleto CastMediaUtil.toMediaInfo métodos con el parámetro de contexto de Android innecesario.

Versión 6.10.0

19 dic 2019

Cambios en el SDK:

  • Rompiendo el cambio: El SDK nativo de Android de Brightcove ahora se crea utilizando bibliotecas de AndroidX (JetPack). Consulte las páginas de soporte del SDK de Android para obtener más información sobre este cambio y los pasos necesarios para migrar el código de su aplicación.

  • Se solucionó un problema con el backgroundOpacity método en BrightcoveCaptionStyle donde este método no establecía la opacidad de fondo en los subtítulos como se esperaba.

  • Se solucionó un problema por el cual la funcionalidad de pantalla completa no funcionaba como se esperaba en el BrightcovePlayerFragment.

Cambios de ExoPlayer:

  • La compatibilidad con ExoPlayer en Brightcove Android Native SDK se ha actualizado a 2.10.8.

  • Se solucionó un problema en la selección de pistas de audio por el que no se podían seleccionar representaciones con tasas de bits más altas después de cambiar de idioma.

Cambios en el complemento IMA:

  • Agrega soporte para contenido en vivo con anuncios pre-roll del lado del cliente.

Cambios en el complemento SSAI:

  • Se solucionó un problema por el cual el botón Subtítulos no se mostraba constantemente durante la reproducción de contenido. Tenga en cuenta que este problema está solucionado actualmente solo para dispositivos móviles; una solución para dispositivos Android TV seguirá en una próxima versión.

Versión 6.9.0

22 de oct de 2019

Cambios en el SDK:

  • El SDK de Android ahora apunta y es compatible con Android 10 (targetSdkVersion 29).

  • Corrige una RunTimeException: "Lienzo: tratando de utilizar un mapa de bits reciclado", al intentar mostrar la imagen del póster.

  • Se agregaron las siguientes constantes de conveniencia como clave de parámetros de consulta HttpRequestConfig:

    • HttpRequestConfig.KEY_DELIVERY_RULE_CONFIG_ID Se usa para agregar un ID de configuración de reglas de entrega
    • HttpRequestConfig.KEY_AD_CONFIG_ID Se usa para agregar un ID de configuración de anuncios SSAI

Cambios en ExoPlayer v1:

  • Todo el soporte para ExoPlayer 1.x se ha eliminado de The Brightcove Native SDK para Android. Asegúrese de utilizar ExoPlayer v2. Para obtener más detalles, consulte la Migración a ExoPlayer 2 Framework documento.

Cambios en el complemento SSAI:

  • Las transmisiones DVR en vivo y en vivo con inserción de anuncios del lado del servidor (Live SSAI) ahora son compatibles.

  • Rompiendo el cambio: La Event.PLAYHEAD_POSITION propiedad en ambos eventos, EventType.PROGRESS y EventType.AD_PROGRESS , ahora contiene la posición absoluta del cabezal de reproducción, que es la misma posición del cabezal de reproducción dada por el reproductor subyacente.
    Por favor use Event.PROGRESS_BAR_PLAYHEAD_POSITION en su lugar, para obtener la posición relativa del cabezal de reproducción.

  • La Event.PROGRESS_BAR_PLAYHEAD_POSITION la propiedad fue introducida para ambos EventType.PROGRESS y EventType.AD_PROGRESS eventos que contienen la posición relativa del cabezal de reproducción (como Event.PLAYHEAD_POSITION hizo en versiones anteriores).

  • Se agregaron controles de anuncios para Android TV.

  • Se solucionó un problema por el cual el botón de rebobinado no se rebobinaba correctamente después de clics consecutivos.

Versión 6.8.1

31 de mayo de 2019

Cambios de ExoPlayer2:

  • ExoPlayer2 se ha degradado a la versión 2.9.3 debido a un problema con HLS Multiple Audio Tracks en la versión 2.9.6.

Cambios en la reproducción sin conexión:

  • Agregue soporte para el servicio de autenticación de reproducción (PAS).

  • Los siguientes métodos se agregan al com.brightcove.player.edge.AbstractOfflineCatalog:

    • findOfflineVideoById(String, @NonNull HttpRequestConfig): Video
    • findOfflineVideoById(String, @NonNull HttpRequestConfig, @NonNull OfflineCallback<Video>): void
    • requestPurchaseLicense(@NonNull Video, @NonNull EventListener, @NonNull HttpRequestConfig): void
    • requestRentalLicense(@NonNull Video, @NonNull Date, long, @NonNull EventListener, @NonNull HttpRequestConfig): void
  • El siguiente método se elimina de la com.brightcove.player.edge.AbstractOfflineCatalog

    • renewLicense(@NonNull Video, @NonNull EventListener): void
  • Soluciona un problema al cargar imágenes de póster para videos descargados. Cuando esté disponible, se cargará una imagen local.

Cambios en el complemento FreeWheel:

  • Agrega soporte para contenido en vivo con anuncios pre-roll del lado del cliente

Cambios en el complemento SSAI:

  • Soluciona un problema por el cual una fuente de contenido se podía cargar directamente desde el src atributo en la respuesta de la API de reproducción, en lugar de desde el contenturi atributo en el VMAP.

Versión 6.8.0

1 de mayo de 2019

Cambios en el SDK:

  • La versión mínima del SDK de Android compatible con Brightcove Native SDK para Android es ahora 19.

  • El SDK nativo de Brightcove para Android ahora es compatible con Java 8. Tenga en cuenta que las aplicaciones de Android desarrolladas con esta versión del SDK de Android pueden requerir que se agregue la siguiente directiva al archivo build.gradle para garantizar la compatibilidad del código de bytes:

    compileOptions{
    targetCompatibility JavaVersion.VERSION_1_8
    sourceCompatibility JavaVersion.VERSION_1_8
    }

Cambios de ExoPlayer2:

  • ExoPlayer2 se ha actualizado a la versión 2.9.6

  • Tenga en cuenta que esta actualización tiene los siguientes cambios de API:

  • Rompiendo el cambio Remoto:constructor TrackSelectorHelper(@NonNull ExoPlayer player, @NonNull MappingTrackSelector trackSelector)

    Usar constructor TrackSelectorHelper(@NonNull ExoPlayer player, @NonNull DefaultTrackSelector trackSelector)

  • Rompiendo el cambio Remoto: setTrackSelector(@NonNull MappingTrackSelector trackSelector)

    Usar setTrackSelector(@NonNull DefaultTrackSelector trackSelector)

  • Remoto getTrackSelector(): MappingTrackSelector

    Usar getTrackSelector(): DefaultTrackSelector

Cambios en el complemento FreeWheel:

  • El complemento FreeWheel se ha actualizado para admitir la versión 6.28.0 de FreeWheel AdManager.

  • Tenga en cuenta que FreeWheel ahora empaqueta la biblioteca de AdManager como un archivo de Android (AAR).

Cambios en el complemento IMA:

  • El complemento IMA se ha actualizado para admitir la versión 3.11.2 del SDK de IMA de Google.

  • Esta versión del SDK de IMA de Google es compatible con los estándares de medición abierta.

  • por favor refiérase a Documentación de Brightcove Android SDK para más información.

  • Se solucionó un problema por el cual los anuncios mid-roll llamados después de largos períodos de reproducción de contenido no se reproducían.

Cambios en el complemento SSAI:

  • El complemento SSAI ahora admite la entrega de contenido a través del Servicio de autorización de reproducción (PAS) de Brightcove.

  • Tenga en cuenta que PAS solo funciona con el complemento SSAI. PAS con el complemento OnceUx obsoleto no es compatible.

Versión 6.7.0

5 abr 2019

Complemento SSAI:

  • Con esta versión, Brightcove Native SDK para Android implementa el complemento SSAI. Para obtener más información sobre este nuevo complemento, visite la descripción general del SDK de Android de Brightcove en el sitio de soporte de Brightcove.

Cambios en el complemento OnceUx:

  • Con esta versión, el complemento OnceUx está obsoleto. En su lugar, utilice el nuevo complemento SSAI. Para obtener más información, visite la descripción general del SDK de Android de Brightcove en el sitio de asistencia de Brightcove.

Versión 6.6.0

29 de marzo de 2019

Cambios en el SDK:

  • Se ha agregado una nueva clase, HttpRequestConfig. Esta clase admite la adición de parámetros de URL de solicitud y / o encabezados de solicitud que pueden ser requeridos por los servicios de Brightcove (por ejemplo, Brightcove Edge API o Brightcove Playback Authorization Service (PAS)). Consulte la documentación de soporte de Brightcove para obtener más información sobre el uso de esta clase.

  • Junto con la clase HttpRequestConfig, se agregan los siguientes métodos a la clase com.brightcove.player.edge.Catalog: findPlaylistByID (String, HttpRequestConfig, PlaylistListener): void findPlaylistByReferenceID (String, HttpRequestConfisteVideo, PlayIDReferenceID (String, HttpRequestConfisteVideo) VideoListener): void findVideoByReferenceID (String, HttpRequestConfig, VideoListener): void

  • Los siguientes métodos findPlaylist están obsoletos en com.brightcove.player.edge.Catalog: findPlaylistByID (String, Map <String, String>, PlaylistListener): void findPlaylistByID (String, Map <String, String>, Map <String, String>, PlaylistListener): void findPlaylistByReferenceID (String, Map <String, String>, PlaylistListener): void findPlaylistByReferenceID (String, Map <String, String>, Map <String, String>, PlaylistListener): void

  • Los siguientes métodos findVideo están obsoletos en com.brightcove.player.edge.Catalog: findVideoByID (String videoID, Map <String, String>, VideoListener): void findVideoByID (String videoID, Map <String, String>, Map <String, String >, VideoListener): void findVideoByReferenceID (String, Map <String, String>, VideoListener): void findVideoByReferenceID (String, Map <String, String>, Map <String, String>, VideoListener): void

Brightcove Native SDK para Android es compatible con Brightcove Playback Authorization Service (PAS)

  • En la versión de disponibilidad limitada de Brightcove Playback Authorization Service (PAS), las siguientes funciones son compatibles con Brightcove Native SDK para Android:

    • Transmisión en línea de contenido DRM con PAS

    • Transmisión en línea de contenido HLSe con PAS

  • En la versión de disponibilidad limitada de Brightcove Playback Authorization Service (PAS), las siguientes funciones no son compatibles actualmente con Brightcove Native SDK para Android y se implementarán en una próxima versión:

    • Inserción de anuncios del lado del servidor con el complemento OnceUx con PAS

    • Reproducción sin conexión con PAS

    • Chromecast con PAS

  • Nota importante sobre ExoPlayer 1:

    • ExoPlayer 1 está obsoleto y estará al final de su vida útil a fines del tercer trimestre de 2019, momento en el que ya no estará disponible en Brightcove Native SDK para Android.

Versión 6.5.1

12 de febrero de 2019

Cambios en el complemento OnceUx:

  • Se solucionó un problema por el cual el elemento IFrameResource se analizaba incorrectamente desde fuentes VMAP.

Versión 6.5.0

6 dic. 2018

Cambios en el SDK:

  • Se eliminaron las dependencias innecesarias en Brightcove Android SDK.

  • Se agregaron versiones asincrónicas de los siguientes métodos a la clase OfflineCatalog: getVideoDownloadStatus findAllQueuedVideoDownload findAllVideoDownload findOfflineVideoByID downloadVideo cancelVideoDownload pauseVideoDownload resumeVideoDownload deleteVideo getMediaFormatTracksAvailable

  • Se solucionó un problema por el cual el método Estimación Tamaño en la clase OfflineCatalog devolvía un valor inesperado.

  • Se solucionó un problema por el cual un video sin conexión creado con VideoParser.buildVideoFromJSON () no se reproducía como se esperaba.

Cambios en el complemento OnceUx:

  • Se solucionó un problema por el cual aparecían elementos de menú de subtítulos duplicados.

Complemento Cast: Actualización de la nota de la versión: Si bien el complemento Cast no tiene cambios en esta versión, es importante tener en cuenta estas aclaraciones en las funciones actualmente admitidas de este complemento.

  • Android 9: las pruebas han demostrado que se requiere el siguiente permiso para usar Chromecast con Android 9, en particular cuando la aplicación está en segundo plano y se vuelve a poner en primer plano, y para usar notificaciones para controlar una sesión de transmisión. Esta etiqueta de permisos de uso debe agregarse al archivo AndroidManifest.xml de una aplicación: <uses-allow android: name = "android.permission.FOREGROUND_SERVICE" />

  • Subtítulos: las pruebas han demostrado que los subtítulos en el manifiesto solo con Dynamic Delivery DASH se muestran como se esperaba.

  • Subtítulos: los subtítulos en el manifiesto con HLS no son compatibles actualmente.

  • Subtítulos: actualmente no se admiten los subtítulos adicionales en ninguna configuración de video. Esta aclaración también está presente en la nota de la versión del complemento Cast para la versión de Brightcove Android SDK v6.3.0.

Versión 6.4.0

17 de octubre de 2018

Cambios en el SDK:

  • Brightcove Native SDK para Android ahora es compatible con Android 9.0 (Pie). Tenga en cuenta que, con la versión de Android Pie, debe tener en cuenta algunos cambios importantes, como Network TLS habilitado de forma predeterminada, la desactivación del cliente HTTP Apache y la desactivación de las constantes de Android ConnectivityManager. Es posible que deba realizar cambios adicionales en su aplicación. Para obtener más información, visite https://support.brightcove.com/android-pie-support-native-sdk-android.

  • DefaultSourceSelectionController y ExoPlayerSourceSelectionController ahora preferirán las fuentes HTTPS en su selección si están disponibles; de lo contrario, el controlador de selección seleccionará la primera fuente disponible.

Lanzamientos anteriores

Versión 6.3.2

24 septiembre 2018

Cambios en el SDK:

  • Se solucionó un problema por el cual el botón Configuración en Android TV no funcionaba como se esperaba.

  • Se solucionó un problema por el cual getRefereiceId () y getDescription () en la clase Video no funcionaban como se esperaba.

  • Se agregó un método, getLongDescription (), a la clase Video.

  • Se solucionó un problema en la clase OfflineCatalog donde llamar a setDownloadPath con un argumento nulo causaba una NullPointerException.

  • Se corrigió un problema en la clase OfflineCatalog donde llamar al método estimadoSize podía devolver un valor inesperadamente grande.

  • Se solucionó un problema por el cual una actividad que no estaba habilitada para Picture-In-Picture arrojaba una IllegalStateException no fatal. El error ahora se registra como una advertencia.

  • Soporte obsoleto para la clase BrightcoveClosedCaptioningSurfaceView.

Cambios en el complemento OnceUx:

  • Se agregó soporte para el elemento VAST Icon.

Versión 6.3.1

09 agosto 2018

Cambios en el SDK:

  • Se solucionó un problema por el cual Android Studio arrojaba una excepción en el Editor de diseño al renderizar BrightcoveVideView.

Cambios en ExoPlayer v2:

  • Se agregaron las clases LoadControlConfig y AllocatorConfig. Los valores establecidos en estas clases se utilizarán para crear el objeto ExoPlayer DefaultLoadControl, que se utiliza al crear la instancia de ExoPlayer. AllocatorConfig se puede establecer al crear LoadControlConfig. LoadControlConfig se puede establecer en la instancia ExoPlayerVideoDisplayComponent.

Cambios en el complemento OnceUx:

  • Se solucionó un problema por el cual la imagen de póster predeterminada que se muestra en BrightcoveVideoView no desaparecerá después de que comience a reproducirse el preroll.

Versión 6.3.0

27 de julio de 2018

Cambios en el complemento de transmisión: El complemento Cast se ha actualizado con una dependencia de ExoPlayer Cast Extension v2.7.0. Tenga en cuenta que ciertas funciones de VideoCloud tienen soporte limitado o aún no son compatibles cuando se usa el complemento Cast con la aplicación de receptor de muestra de Google.

  • Android 9: las pruebas han demostrado que se requiere el siguiente permiso para usar Chromecast con Android 9, en particular cuando la aplicación está en segundo plano y se vuelve a poner en primer plano, y para usar notificaciones para controlar una sesión de transmisión. Esta etiqueta de permisos de uso debe agregarse al archivo AndroidManifest.xml de una aplicación: <uses-allow android: name = "android.permission.FOREGROUND_SERVICE" />

  • Subtítulos: las pruebas han demostrado que los subtítulos en el manifiesto solo con Dynamic Delivery DASH se muestran como se esperaba.

  • Subtítulos: los subtítulos en el manifiesto con HLS no son compatibles actualmente.

  • Subtítulos: actualmente no se admiten los subtítulos adicionales en ninguna configuración de video.

  • Widevine Modular DRM no es compatible cuando se usa el complemento Cast con la aplicación de receptor de muestra de Google.

  • No se admiten varias pistas de audio cuando se utiliza el complemento Cast con la aplicación de receptor de muestra de Google.

  • La publicidad del lado del cliente y del lado del servidor no es compatible cuando se usa el complemento Cast con la aplicación de receptor de muestra de Google.

  • Las transmisiones de DVR en vivo y en vivo no son compatibles cuando se usa el complemento Cast con la aplicación de receptor de muestra de Google.

Cambios en el complemento FreeWheel:

  • El complemento FreeWheel se ha actualizado para admitir FreeWheel AdManager v6.23.0. Tenga en cuenta que se trata de un cambio importante y que esta versión de Brightcove Native SDK para Android no funcionará con versiones anteriores de FreeWheel AdManager. Consulte las notas de la versión en FreeWheel AdManager v6.23.0 para obtener más información sobre los cambios en esa versión.

Cambios en el complemento IMA:

  • El complemento IMA ahora es compatible con la versión 3.9.0 del SDK de IMA de Google para Android.

Versión 6.2.3

16 de julio de 2018

Cambios en el SDK:

  • Reproducción sin conexión: Se actualizó la versión de la biblioteca FileDownloader a 1.7.4.

  • Reproducción sin conexión: Se solucionó un problema por el cual la aplicación en segundo plano y el cambio del estado de la red podían generar una IllegalArgumentException.

Versión 6.2.2

9 de julio de 2018

Cambios en ExoPlayer v2:

  • Se solucionó un problema por el cual los valores en el campo HEADERS del objeto Video no se agregaban como se esperaba.

Cambios en el complemento OnceUx:

  • Se solucionó un problema por el cual la búsqueda sin anuncios durante el video podía provocar que los eventos publicitarios aún se dispararan.

Versión 6.2.1

5 de junio de 2018

Cambios en ExoPlayer v2:

  • Brightcove ExoPlayer se ha revertido a v2.7.0, para evitar una regresión en el comportamiento de búsqueda hacia atrás en transmisiones en vivo y un cambio inesperado en la forma en que se calcula el valor del rango de la ventana en vivo.

  • Se solucionó un problema con el cálculo de BrightcoveSegmentTemplate.getSegmentCount cuando el manifiesto DASH tiene el parámetro startNumber diferente de 0.

  • Se agregó una validación para una posible NullPointerException en ExoPlayerVideoDisplayComponent.reportPlayerState

Versión 6.2.0

18 de mayo de 2018

Cambios en el SDK:

  • Se agregó una clase VideoParser con métodos para crear un video y una lista de reproducción a partir de un objeto JSON, siguiendo el formato de respuesta de la API de reproducción de Brightcove.

  • Sobrecargó los métodos requestPurchaseLicense () y requestRentalLicense () en la clase OfflineCatalog para configurar OutputProtection a través del objeto CustomerRightsTokenConfig.

  • Se actualizó la biblioteca FileDownloader a 1.7.3 para reproducción sin conexión.

  • Se corrigió una condición de carrera para la reproducción sin conexión al eliminar varios videos mientras se descargaban.

Cambios en ExoPlayer v2:

  • Brightcove ExoPlayer se ha actualizado a 2.7.3.

  • Los siguientes métodos quedaron obsoletos en la interfaz BrightcoveDrmSession:

    • DrmException getDrmError ()

    • Map <String, String> queryKeyStatus ()

    • byte [] getOfflineLicenseKeySetId ()

Cambios en el complemento OnceUx:

  • Se agregó soporte para analizar y leer todos los ID de creatividades de anuncios de SSAI VMAP.

  • Se eliminó el requisito del atributo id en la etiqueta de anuncio.

Versión 6.1.2

24 abr 2018

Cambios en el SDK:

  • Se solucionó un problema por el cual la descarga no se reanudaba en redes lentas (hasta 256 kbps) después de matar y reiniciar la aplicación.

Cambios en el complemento OnceUx:

  • Se solucionó un problema por el cual todos los anuncios se reproducirían después de buscar en varios grupos de anuncios.

Versión 6.1.1

6 abr 2018

Cambios en el SDK:

  • Se corrigió una dependencia de Offline Analytics que aumentaba inesperadamente el tamaño de las aplicaciones.

  • Se solucionó un problema con la reproducción sin conexión donde algunas descargas estaban colgadas al 99%.

Versión 6.1.0

29 de marzo de 2018

Cambios en el SDK:

  • Se agregó soporte para Picture-in-Picture en Android Oreo.

  • Se solucionó un problema de rendimiento de la interfaz de usuario para la reproducción sin conexión al descargar un video al hacer todas las devoluciones de llamada del Administrador de descargas en un hilo en segundo plano.

  • Mejora en las velocidades de descarga para la reproducción sin conexión.

  • Se solucionó un problema de reproducción sin conexión en el que faltaba el parámetro download_id en los eventos video_download_request y video_download_cancellation para descargas claras.

  • Se solucionó un problema con los subtítulos de WebVTT donde el uso del atributo "línea:" sin un carácter de porcentaje (%) impedía que se mostraran los subtítulos.

  • El método AbstractOfflineCatalog.renewLicense está obsoleto y ahora no es funcional. Para renovar una licencia sin conexión, utilice AbstractOfflineCatalog.requestRentalLicense (Video, Date, long, EventListener) o AbstractOfflineCatalog.requestPurchaseLicense (Video, EventListener)

ExoPlayer2 cambia:

  • ExoPlayer2 ahora informa la cantidad acumulada de bytes descargados a través del evento de participación de video actual y lo envía al servidor de Analytics como media_bytes_transferred.

  • Se agregó un método conveniente para establecer la tasa de bits máxima antes de preparar el reproductor para un nuevo video, o en cualquier momento en que se llame a ExoPlayerVideoDisplayComponent.setPeakBitrate (int peakBitrate).

Versión 6.0.2

30 de enero de 2018

Cambios en el SDK:

  • Se agregó soporte para análisis de reproducción sin conexión.

  • Se ha eliminado el complemento obsoleto Widevine Classic.

Cambios en el complemento IMA:

  • Se solucionó un problema por el cual las balizas viewable_impression no se disparaban como se esperaba.

Cambios en el complemento OnceUX:

  • Se solucionó un problema por el cual los marcadores de anuncios no se mostraban en sus ubicaciones esperadas.

  • Se solucionaron problemas relacionados con la búsqueda de anuncios anteriores y la reanudación de la reproducción desde la posición de búsqueda prevista.

  • Se solucionaron problemas por los que los controles del jugador aparecían en los anuncios SSAI en los cambios de orientación

Versión 6.0.1

18 dic 2017

Cambios en el SDK:

  • Las clases de API de medios heredadas en desuso, las del paquete com.brightcove.player.media, se eliminaron del SDK nativo de Brightcove para Android.

  • Las siguientes clases se movieron de com.brightcove.player.media a com.brightcove.player.model. Tenga en cuenta que este es un cambio importante:

    • Tipo de entrega

    • CaptionType

    • ErrorFields

    • VideoFields

Cambios en ExoPlayer v2:

  • El SDK nativo de Brightcove para Android con ExoPlayer 2 (v2.5.3) se encuentra en disponibilidad general.

  • Se agregó soporte para el complemento Omniture cuando se usa ExoPlayer 2.

  • Varias correcciones de errores.

Cambios en ExoPlayer v1:

  • El SDK nativo de Brightcove para Android con ExoPlayer 1 ha quedado obsoleto. Para obtener más información sobre el proceso de migración, visite https://support.brightcove.com/migrating-exoplayer-2-framework

Notas de la versión completas

Para obtener una lista completa de las notas de la versión, consulte la Notas de la versión de Brightcove Native SDK para Android.