August 31
Media agent for Android v4.5.0
Features
- sample-app: show a LIVE badge instead of a countdown for live streams
- sample-app: support direct manifest URL playback and mock-server testing
Bug Fixes
- exoplayer: report contentIsLive and omit contentDuration for live streams
- mediatailor: append newly-reported ads when a tracking-built avail grows (fd2b5fd), closes #2 #3
- mediatailor: centralise trailing-segment sessionId extraction
- mediatailor: classify how the tracking endpoint was resolved
- mediatailor: correct DASH cue offset and give HLS breaks a stable id
- mediatailor: derive tracking URL from implicit-session DASH playlist path
- mediatailor: derive tracking URL from implicit-session HLS playlist path
- mediatailor: describe pending implicit-session tracking URL as deferral
- mediatailor: emit AD_ERROR when tracking fetch fails silently
- mediatailor: expose creativeId-first primary key for per-ad metrics
- mediatailor: harden schedule merge against zombie breaks and pod drift
- mediatailor: keep manifest pod boundaries when tracking ad count disagrees
- mediatailor: let EXT-X-DATERANGE override an earlier trackingUrl guess
- mediatailor: make playhead poll interval configurable at construction
- mediatailor: match growing-avail ads by start time when adId is absent
- mediatailor: match manifest breaks by id, gate MISSING_AVAIL_START once
- mediatailor: paginate NextToken within one poll instead of across polls
- mediatailor: parse tracking-event beacons with ad-start-relative timing
- mediatailor: pod endTimeMs must not exceed its enclosing break
- mediatailor: prune viewed avails from the live schedule
- mediatailor: read HLS tracking URL from EXT-X-DATERANGE when advertised
- mediatailor: rename segmentPrefix to canonical adSegmentPrefix
- mediatailor: require unanimous representation agreement for DASH ad periods
- mediatailor: revert tracking requests from POST back to GET
- mediatailor: round-trip NextToken across tracking polls
- mediatailor: stabilise avail identity across live window rotations
- mediatailor: surface avails missing startTimeInSeconds as an error
- mediatailor: surface pods appended after the playhead left their window
- mediatailor: treat empty avails as no-fill instead of firing AD_START
August 4
Media agent for Android v4.4.0
New features
- Added JP region support. (e97c6ca)
Bug fixes
- Aligned
totalPauseTimewith the iOS clock model and stopped emittingtotalTimeSwitchedDown. (924c7b9) - Classified startup and playback errors by content-started state, for iOS parity. (a6b3288)
- Corrected
CONTENT_DROPPED_FRAMESevent fields and fixed the underlying ANR root cause. (a5afc73) - Deduplicated consecutive identical download-rate samples. (e9b6d1f)
- Emitted a fresh
totalPlaytimevalue inQOE_AGGREGATE. (af065d6) - Excluded only ad time from
startupTime, for iOS parity. (9321ac8) - Recorded the final QoE event into the crash-safe buffer at
CONTENT_END. (e1d3ae1) - Removed an unused classpath. (f729768)
- Removed an unused dependency. (0bdd95b)
- Removed an unused plugin. (fa11838)
- Replaced the global
harvestCycleNumbergate with a per-tracker gate. (9e19faf) - Updated a variable name. (72de035)
- Updated the allowlist for
QOE_AGGREGATEcontext attributes, for iOS parity. (dd1d3ef) - Updated the bitrate timer to use the
isPlayingtransition. (011ade3)
August 4
Agente de mídia para Android v4.4.0
Novo recurso
- Adicionado suporte à região JP. (e97c6ca)
Correções de bugs
- Alinhado
totalPauseTimecom o modelo de relógio do iOS e parou de emitirtotalTimeSwitchedDown. (924c7b9) - Erros de inicialização e reprodução classificados por estado de conteúdo iniciado, para paridade com o iOS. (a6b3288)
- Campos de evento
CONTENT_DROPPED_FRAMEScorrigidos e a causa raiz subjacente do ANR resolvida. (a5afc73) - Amostras consecutivas idênticas de taxa de download desduplicadas. (e9b6d1f)
- Emitido um novo valor de
totalPlaytimeemQOE_AGGREGATE. (af065d6) - Excluído apenas o tempo de anúncio de
startupTime, para paridade com iOS. (9321ac8) - Gravou o evento final de QoE no buffer à prova de falhas em
CONTENT_END. (e1d3ae1) - Removido um classpath não utilizado. (f729768)
- Removida uma dependência não utilizada. (0bdd95b)
- Removido um plug-in não utilizado. (fa11838)
- Substituído o gate global
harvestCycleNumberpor um gate por rastreador. (9e19faf) - Nome de uma variável atualizado. (72de035)
- Atualizada a lista de permissões para os atributos de contexto
QOE_AGGREGATE, para paridade com o iOS. (dd1d3ef) - Atualizou o temporizador de taxa de bits para usar a transição
isPlaying. (011ade3)
August 4
Media agent for iOS v4.3.0
Published to CocoaPods
NewRelicVideoAgent4.3.0NRAVPlayerTracker4.3.0NRIMATracker4.3.0
New features
Bug fixes
August 4
Agente de mídia para iOS v4.3.0
Publicado no CocoaPods
NewRelicVideoAgent4.3.0NRAVPlayerTracker4.3.0NRIMATracker4.3.0
Novo recurso
Correções de bugs
July 13
July 13
June 5
Media agent for iOS v4.1.4
Published to CocoaPods
NewRelicVideoAgent4.1.4NRAVPlayerTracker4.1.4NRIMATracker4.1.4
Bug fixes
- Exposed
sendSeekStart/sendSeekEndonNRVAVideo; auto-detected seek inAVPlayerTracker(34493b4) - Fixed
NRTrackerPairleakingNSNullsentinel to callers (82ef94f) - Implemented partial container sanitization, nil guard, and dead code removal (6aac79f)
- Read
totalPreRollAdTimefromCONTENT_STARTattributes (d565378) - Sanitized attribute values at
setAttributestorage boundary (7d07298)
June 5
Agente de mídia para iOS v4.1.4
Publicado no CocoaPods
NewRelicVideoAgent4.1.4NRAVPlayerTracker4.1.4NRIMATracker4.1.4
Correções de bugs
- Exposto
sendSeekStart/sendSeekEndemNRVAVideo; seek detectado automaticamente emAVPlayerTracker(34493b4) - Corrigido
NRTrackerPairvazando sentinelaNSNullpara chamadores (82ef94f) - Implementada limpeza parcial de contêiner, nil guard e remoção de código morto (6aac79f)
- Ler
totalPreRollAdTimedos atributosCONTENT_START(d565378) - Valores de atributo sanitizados no limite de armazenamento
setAttribute(7d07298)
May 21