About Eyevinn Open Analytics

Back to Demo

What is EPAS?

The Eyevinn Player Analytics Specification (EPAS) is an open-source, vendor-neutral specification for implementing standardized video player analytics. It enables modular integration across different player platforms without vendor lock-in.

EPAS defines a common set of events and data structures that video players should emit during playback, making it possible to collect consistent analytics data regardless of which player technology you use.

Read the EPAS Documentation

Event Types

EPAS defines the following core events:

init

Session initialization

loading

Content URL attached

loaded

Ready to play

playing

Playback started/resumed

paused

Playback paused

buffering

Player is buffering

buffered

Buffering complete

seeking

Seek initiated

seeked

Seek complete

bitrate_changed

Quality level changed

heartbeat

Periodic keepalive

stopped

Session ended

Content information

error

Fatal error occurred

warning

Non-fatal warning

Architecture in Open Source Cloud

This demo runs on Open Source Cloud (OSC), a platform for running open-source software as managed services. The analytics pipeline consists of:

🎬

Video Player

Eyevinn Web Player, HLS.js, or Shaka Player with EPAS SDK

📡

Eventsink

Receives and validates analytics events

eyevinn-player-analytics-eventsink
📬

SmoothMQ

Message queue for reliable event delivery

smoothmq
⚙️

Worker

Processes events from the queue

eyevinn-player-analytics-worker
🗄️

ClickHouse

Stores analytics data for querying

clickhouse

Open Source Components

Player Analytics Client SDK

JavaScript SDK for integrating EPAS with web video players

View on GitHub

Player Analytics Eventsink

Backend service that receives and validates analytics events

View on GitHub

Player Analytics Worker

Worker service that processes events and stores them in the database

View on GitHub

EPAS Specification

The core specification with TypeScript definitions and JSON schema

View on GitHub

Eyevinn Web Player

Open source web video player supporting HLS and MPEG-DASH

View on GitHub

Getting Started

To set up your own analytics pipeline:

  1. Sign up for Open Source Cloud

    Create an account at osaas.io

  2. Deploy the services

    Launch the Eventsink, SmoothMQ, Worker, and ClickHouse services from the OSC catalog

  3. Integrate the SDK

    Install @eyevinn/player-analytics-client-sdk-web in your application

  4. Start collecting data

    Configure the SDK with your Eventsink URL and start tracking player events

Automate with Terraform

You can deploy the entire analytics pipeline automatically using our Terraform example script. This sets up all the required services in Open Source Cloud with a single command.

View Terraform Script

About Eyevinn Technology

Eyevinn Technology is a Stockholm-based media technology consulting firm specializing in streaming solutions and AI technologies for the TV, media, and entertainment sectors. We develop cutting-edge platforms using open-source technology to help companies optimize costs and improve profitability.

We champion open-source innovation as fundamental to our business model. Rather than creating vendor lock-in, we develop solutions on open foundations. Through our Strategic Open Source Partnerships, clients invest in innovations together that become freely available to the community.

Our core focus areas include web-native playout, online-first streaming solutions, AI-assisted automation for media workflows, and dynamic advertising technology. We work with major broadcasters including SVT, YLE, NRK, and TV2.

We also host Streaming Tech Sweden, an annual industry conference.