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 DocumentationEvent Types
EPAS defines the following core events:
Session initialization
Content URL attached
Ready to play
Playback started/resumed
Playback paused
Player is buffering
Buffering complete
Seek initiated
Seek complete
Quality level changed
Periodic keepalive
Session ended
Content information
Fatal error occurred
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 GitHubPlayer Analytics Eventsink
Backend service that receives and validates analytics events
View on GitHubPlayer Analytics Worker
Worker service that processes events and stores them in the database
View on GitHubEPAS Specification
The core specification with TypeScript definitions and JSON schema
View on GitHubGetting Started
To set up your own analytics pipeline:
-
Sign up for Open Source Cloud
Create an account at osaas.io
-
Deploy the services
Launch the Eventsink, SmoothMQ, Worker, and ClickHouse services from the OSC catalog
-
Integrate the SDK
Install
@eyevinn/player-analytics-client-sdk-webin your application -
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 ScriptAbout 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.