August 27
Media agent for Roku v4.2.3
Added
- Added
contentIsLiveattribute toVideoAction/VideoAdActionevents, reflecting the Video node'scontent.livefield when set — brings Roku in line with the standard cross-agent video data model.
Fixed
- Fixed
CONTENT_BUFFER_ENDbeing delayed until playback resumed when a rebuffer completed while the video was paused. The event now fires as soon as buffering actually recovers, independent of whether the user has resumed playback — correcting over-reported buffering duration and total rebuffering time for pause-during-buffer scenarios. - Fixed
errorCode/errorMessage/backtracebeing stamped onto everyVideoAction/VideoAdActionevent, including heartbeats — Roku's Video node reportserrorCode: 0(notinvalid) even absent an error, so every non-error event was leaking error-shaped attributes (NR-606648). These now only appear on actual error events. - Fixed MediaTailor SSAI debug logging (
nrActivateLogging) being silently suppressed since its introduction in 4.2.0 — an extra argument passed tonrCheckLoggingState()viacallFunccaused the call to no-op instead of evaluating the logging gate, so no MediaTailor debug output was ever produced regardless of logging state.
August 27
Agente de medios para Roku v4.2.3
Agregado
- Se agregó el atributo
contentIsLivea los eventosVideoAction/VideoAdAction, lo que refleja el campocontent.livedel nodo Video cuando está configurado —alinea a Roku con el modelo de datos de video estándar entre agentes.
Fijado
- Se corrigió el retraso de
CONTENT_BUFFER_ENDhasta que se reanudaba la reproducción al completarse una recarga del búfer mientras el video estaba pausado. Ahora el evento se activa tan pronto como el almacenamiento en búfer se recupera realmente, independientemente de si el usuario ha reanudado la reproducción —corrige la duración del almacenamiento en búfer y el tiempo total de recarga del búfer sobrestimados para los escenarios de pausa durante el almacenamiento en búfer. - Se solucionó el problema por el cual
errorCode/errorMessage/backtracese marcaba en cada eventoVideoAction/VideoAdAction, incluidos los latidos —el nodo Video de Roku informaerrorCode: 0(noinvalid) incluso en ausencia de un error, por lo que cada evento sin error filtraba atributos con formato de error (NR-606648). Ahora estos solo aparecen en eventos de error reales. - Se solucionó el problema por el cual el logging de depuración de MediaTailor SSAI (
nrActivateLogging) se suprimía silenciosamente desde su introducción en la versión 4.2.0 —un argumento adicional pasado anrCheckLoggingState()a través decallFuncprovocaba que la llamada no realizara ninguna operación en lugar de evaluar la puerta de logging, por lo que nunca se producía ninguna salida de depuración de MediaTailor independientemente del estado del logging.
August 5
Media agent for Roku v4.2.2
New features
- Added
"JP"as a supportedregionvalue (alongside"US","EU", and"staging"), routing event, log, metric, and mobile-connect traffic to the New Relic Japan collector endpoints. Region matching is case-insensitive ("JP"or"jp").
Bug fixes
- Fixed a dirty-check gap where
QOE_AGGREGATEevents stopped being sent after the first one whenever only a KPI added in 4.2.1 (avgDownloadRate,minDownloadRate,maxDownloadRate,totalSwitchUps,totalSwitchDowns,totalPauseTime,totalRenditions) changed between harvests—most noticeable during a long pause, wheretotalPauseTimewas the only value still moving.
Notes
- Removed
totalTimeSwitchedDownfrom theQOE_AGGREGATEevent and its internal tracking (rendition-switch-down interval accumulation).
August 5
Agente de medios para Roku v4.2.2
Nueva característica
- Se agregó
"JP"como un valorregioncompatible (junto con"US","EU"y"staging"), enrutando el tráfico de evento, registro, métrica y conexión móvil a los extremos del recolector de New Relic Japón. La coincidencia de región no distingue entre mayúsculas y minúsculas ("JP"o"jp").
Corrección de errores
- Se corrigió una brecha de verificación de cambios donde los eventos
QOE_AGGREGATEdejaban de enviarse después del primero siempre que solo un KPI agregado en 4.2.1 (avgDownloadRate,minDownloadRate,maxDownloadRate,totalSwitchUps,totalSwitchDowns,totalPauseTime,totalRenditions) cambiara entre recolecciones —más notable durante una pausa larga, dondetotalPauseTimeera el único valor que aún se movía.
Notas
- Se eliminó
totalTimeSwitchedDowndel eventoQOE_AGGREGATEy su seguimiento interno (acumulación de intervalos de reducción de representación).
May 14
Media agent for Roku v4.2.0
New features
- Added native support for AWS Elemental MediaTailor server-side ad insertion via Roku's RAFX_SSAI
awsemtadapter - Added automatic
VideoAdActionrecording for MediaTailor ad lifecycle events:AD_BREAK_START,AD_REQUEST,AD_START,AD_QUARTILE,AD_END,AD_BREAK_END, andAD_ERROR - Added
nrEnableMediaTailorTracking(nr, adIface)to register New Relic listeners on a RAFX_SSAI adapter in one call - Added
nrSetMediaTailorAdMetadata(tracker, metadata)to inject sidecar key/value metadata intoVideoAdActionevents - Added
nrSendVideoAdEvent(nr, actionName, attr)for direct recording ofVideoAdActionfrom any tracker - Added
MediaTailorTask.brsreference task andVideoScene.brssample demonstrating the recommended integration pattern
Update
- Created
MediaTailorTrackerin the scene thread and passed to the task via a node field for RAFX listener compatibility - Initialised session through
RAFX_SSAI.requestStream(); assigned stitched manifest URL fromgetStreamInfo().manifest_urlto the Video node - Added Video node
positionfield observation in the task event loop for ad-break timing resolution - Set MediaTailor support as opt-in; activates only when
nrEnableMediaTailorTrackingis called
Bug fixes
- Fixed Google IMA ad lifecycle events (
AD_BREAK_START,AD_BREAK_END,AD_START,AD_END,AD_QUARTILE,AD_ERROR) to correctly produceVideoAdActioninstead ofVideoAction
May 14
Agente de medios para Roku v4.2.0
Nueva característica
- Se agregó soporte nativo para la inserción de anuncios del lado del servidor de AWS Elemental MediaTailor mediante el adaptador RAFX_SSAI
awsemtde Roku - Se agregó el registro automático de
VideoAdActionpara los eventos del ciclo de vida de los anuncios de MediaTailor:AD_BREAK_START,AD_REQUEST,AD_START,AD_QUARTILE,AD_END,AD_BREAK_ENDyAD_ERROR - Se agregó
nrEnableMediaTailorTracking(nr, adIface)para registrar los listeners de New Relic en un adaptador RAFX_SSAI en una sola llamada - Se agregó
nrSetMediaTailorAdMetadata(tracker, metadata)para inyectar metadatos de valor principal de sidecar en los eventos deVideoAdAction - Se agregó
nrSendVideoAdEvent(nr, actionName, attr)para el registro directo deVideoAdActiondesde cualquier rastreador - Se agregó la tarea de referencia
MediaTailorTask.brsy el ejemploVideoScene.brsque demuestran el patrón de integración recomendado
Actualizar
- Se creó
MediaTailorTrackeren el hilo de la escena y se pasó a la tarea mediante un campo de nodo para la compatibilidad del listener de RAFX - Sesión inicializada a través de
RAFX_SSAI.requestStream(); se asignó la URL del manifiesto ensamblado degetStreamInfo().manifest_urlal nodo de video - Se agregó la observación del campo
positiondel nodo de video en el bucle de eventos de la tarea para la resolución de la temporización de la pausa publicitaria - Establecer el soporte de MediaTailor como opcional; se activa solo cuando se llama a
nrEnableMediaTailorTracking
Corrección de errores
- Se corrigieron los eventos del ciclo de vida de los anuncios de Google IMA (
AD_BREAK_START,AD_BREAK_END,AD_START,AD_END,AD_QUARTILE,AD_ERROR) para producir correctamenteVideoAdActionen lugar deVideoAction
April 9
Media agent for Roku v4.1.0
New features
- Added QoE analytics for comprehensive video quality tracking with advanced performance metrics
- Added
averageBitrateattribute: time-weighted average bitrate across playback - Added
peakBitrateattribute: highest bitrate achieved during playback - Added
startupTimeattribute: time from content request to first frame (excludes pre-roll ads) - Added
rebufferingRatioattribute: percentage of playback time spent rebuffering - Added
totalRebufferingTimeattribute: total milliseconds in buffer states - Added
totalPlaytimeattribute: total content playback time in milliseconds - Added
hadStartupErrorattribute: boolean indicating if startup failed before content start - Added
hadPlaybackErrorattribute: boolean indicating if playback errors occurred during session - Added
nrActivateQoeTracking(nr)to enable QoE tracking (disabled by default) - Added
nrSetQoeAggregateIntervalMultiplier(nr, multiplier)to configure event frequency
Update
- Synchronized QoE events with harvest cycles
- Prevented redundant events through intelligent duplication
- Implemented per-session metric isolation and cleanup
- Implemented time-weighted bitrate calculations for accuracy
- Implemented smart startup time calculation excluding ad time
- Disabled QoE tracking by default; harvest multiplier set to 1 (every harvest cycle)
April 9
Agente de medios para Roku v4.1.0
Nueva característica
- Se agregaron análisis de QoE para un seguimiento integral de la calidad de video con métricas de rendimiento avanzadas.
- Se agregó el atributo
averageBitrate: tasa de bits promedio ponderada en el tiempo durante la reproducción - Se agregó el atributo
peakBitrate: tasa de bits más alta alcanzada durante la reproducción - Se agregó el atributo
startupTime: tiempo desde la solicitud de contenido hasta el primer fotograma (excluye los anuncios pre-roll) - Se agregó el atributo
rebufferingRatio: porcentaje del tiempo de reproducción dedicado al rebuffering - Se agregó el atributo
totalRebufferingTime: total de milisegundos en estados de búfer - Se agregó el atributo
totalPlaytime: tiempo total de reproducción de contenido en milisegundos - Se agregó el atributo
hadStartupError: booleano que indica si el arranque falló antes del inicio del contenido - Se agregó el atributo
hadPlaybackError: booleano que indica si ocurrieron errores de reproducción durante la sesión - Se agregó
nrActivateQoeTracking(nr)para habilitar el seguimiento de QoE (deshabilitado por defecto) - Se agregó
nrSetQoeAggregateIntervalMultiplier(nr, multiplier)para configurar la frecuencia de eventos
Actualizar
- Eventos de QoE sincronizados con ciclos de recolección
- Se evitaron eventos redundantes mediante duplicación inteligente
- Se implementó el aislamiento y la limpieza de métricas por sesión
- Se implementaron cálculos de tasa de bits ponderados por tiempo para mayor precisión.
- Se implementó el cálculo inteligente del tiempo de inicio excluyendo el tiempo de los anuncios
- Seguimiento de QoE desactivado por defecto; multiplicador de recolección establecido en 1 (cada ciclo de recolección)
November 12, 2025
Media agent for Roku v4.0.4
Bug fix
- Avoid adding
appIdfromdataToken. - Fixed
nrSendErrorEventto send proper data.
November 12, 2025
Agente de medios para Roku v4.0.4
Corrección de errores
- Evite agregar
appIddedataToken. - Se corrigió
nrSendErrorEventpara enviar datos correctos.