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 mídia para Roku v4.2.3
Adicionado
- Adicionado o atributo
contentIsLiveaos eventosVideoAction/VideoAdAction, refletindo o campocontent.livedo nó Video quando definido — alinha o Roku com o modelo de dados de vídeo padrão entre agentes.
Fixo
- Corrigido o atraso de
CONTENT_BUFFER_ENDaté a retomada da reprodução quando um rebuffer era concluído enquanto o vídeo estava pausado. O evento agora é acionado assim que o armazenamento em buffer realmente se recupera, independentemente de o usuário ter retomado a reprodução — corrigindo a duração do armazenamento em buffer e o tempo total de rebuffer relatados em excesso para cenários de pausa durante o buffer. - Corrigida a marcação de
errorCode/errorMessage/backtraceem cada eventoVideoAction/VideoAdAction, incluindo heartbeats — o nó Video do Roku relataerrorCode: 0(nãoinvalid) mesmo na ausência de um erro, de modo que cada evento sem erro estava vazando atributos em forma de erro (NR-606648). Estes agora aparecem apenas em eventos de erro reais. - Corrigida a supressão silenciosa do logging de depuração do MediaTailor SSAI (
nrActivateLogging) desde a sua introdução na versão 4.2.0 — um argumento extra passado paranrCheckLoggingState()viacallFuncfez com que a chamada resultasse em no-op em vez de avaliar o gate de logging, de modo que nenhuma saída de depuração do MediaTailor foi produzida, independentemente do estado do 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 mídia para Roku v4.2.2
Novo recurso
- Adicionado
"JP"como um valor deregionsuportado (junto com"US","EU"e"staging"), roteando o tráfego de evento, log, métrica e mobile-connect para os endpoints do coletor do New Relic Japan. A correspondência de região não diferencia maiúsculas de minúsculas ("JP"ou"jp").
Correções de bugs
- Corrigida uma lacuna de dirty-check onde
QOE_AGGREGATEeventos paravam de ser enviados após o primeiro sempre que apenas um KPI adicionado na versão 4.2.1 (avgDownloadRate,minDownloadRate,maxDownloadRate,totalSwitchUps,totalSwitchDowns,totalPauseTime,totalRenditions) mudava entre as coletas — mais perceptível durante uma longa pausa, ondetotalPauseTimeera o único valor ainda em movimento.
Notas
- Removido
totalTimeSwitchedDowndo eventoQOE_AGGREGATEe de seu rastreamento interno (acúmulo de intervalo de rendition-switch-down).
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 mídia para Roku v4.2.0
Novo recurso
- Adicionado suporte nativo para inserção de anúncios no lado do servidor do AWS Elemental MediaTailor via adaptador RAFX_SSAI
awsemtdo Roku - Adicionada gravação automática de
VideoAdActionpara eventos de ciclo de vida de anúncios do MediaTailor:AD_BREAK_START,AD_REQUEST,AD_START,AD_QUARTILE,AD_END,AD_BREAK_ENDeAD_ERROR - Adicionado
nrEnableMediaTailorTracking(nr, adIface)para registrar listeners do New Relic em um adaptador RAFX_SSAI em uma chamada - Adicionado
nrSetMediaTailorAdMetadata(tracker, metadata)para injetar metadados de valor principal do sidecar em eventosVideoAdAction - Adicionado
nrSendVideoAdEvent(nr, actionName, attr)para gravação direta deVideoAdActiona partir de qualquer rastreador - Adicionada a tarefa de referência
MediaTailorTask.brse o exemploVideoScene.brsdemonstrando o padrão de integração recomendado
Atualizar
- Criado
MediaTailorTrackerna thread da cena e passado para a tarefa via um campo de nó para compatibilidade com o listener RAFX - Sessão inicializada através de
RAFX_SSAI.requestStream(); URL do manifesto costurado degetStreamInfo().manifest_urlatribuída ao nó de Vídeo - Adicionada observação do campo
positiondo nó de vídeo no loop de eventos da tarefa para resolução de tempo do intervalo de anúncios - Definir o suporte ao MediaTailor como opt-in; ativa apenas quando
nrEnableMediaTailorTrackingé chamado
Correções de bugs
- Corrigidos os eventos de ciclo de vida de anúncios do Google IMA (
AD_BREAK_START,AD_BREAK_END,AD_START,AD_END,AD_QUARTILE,AD_ERROR) para produzir corretamenteVideoAdActionem vez 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 mídia para Roku v4.1.0
Novo recurso
- Adicionadas análises de QoE para rastreamento abrangente da qualidade de vídeo com métricas avançadas de desempenho
- Adicionado o atributo
averageBitrate: taxa de bits média ponderada pelo tempo ao longo da reprodução - Adicionado o atributo
peakBitrate: maior taxa de bits alcançada durante a reprodução - Atributo
startupTimeadicionado: tempo da solicitação de conteúdo até o primeiro frame (exclui anúncios pre-roll) - Atributo
rebufferingRatioadicionado: porcentagem do tempo de reprodução gasto em rebuffering - Atributo
totalRebufferingTimeadicionado: total de milissegundos em estados de buffer - Atributo
totalPlaytimeadicionado: tempo total de reprodução de conteúdo em milissegundos - Atributo
hadStartupErroradicionado: booleano indicando se a inicialização falhou antes do início do conteúdo - Adicionado o atributo
hadPlaybackError: booleano indicando se ocorreram erros de reprodução durante a sessão - Adicionado
nrActivateQoeTracking(nr)para habilitar o rastreamento de QoE (desabilitado por padrão) - Adicionado
nrSetQoeAggregateIntervalMultiplier(nr, multiplier)para configurar a frequência de eventos
Atualizar
- Eventos de QoE sincronizados com ciclos de coleta
- Evitou eventos redundantes por meio de duplicação inteligente
- Implementado isolamento e limpeza de métrica por sessão
- Implementados cálculos de taxa de bits ponderada pelo tempo para precisão
- Implementado cálculo inteligente do tempo de inicialização excluindo o tempo de anúncio
- Rastreamento de QoE desativado por padrão; multiplicador de coleta definido como 1 (a cada ciclo de coleta)
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 mídia para Roku v4.0.4
Correção de bug
- Evite adicionar
appIddedataToken. - Corrigido
nrSendErrorEventpara enviar dados corretos.