
Agama has a long history when it comes to device integrations. For more than a decade we've dealt with projects of all sizes/lengths. With every completed milestone, and even more with every obstacle, we've been steadily building up the knowledge required to succeed.
What are the plugins?One of the key parts of understanding the satisfaction of your users is to assess the quality of experience for the services they consume, their engagement, the type of content they like to watch etc. Agama has an excellent track record in providing such insights, in fact, this is the core of what we do.
The implementations of these important KPIs historically included, among others, the following steps: agreement on the desired metrics set, investigation of the available metrics in the target platform, and integration of these metrics towards the Agama core agent. A lot of these steps were unique for every integration. This was partially due to different wishes from different customers, but mostly due to the unique characteristics of each of the target platforms.
With the growing popularity of OTT platforms and the rise of players such as ExoPlayer, Shaka Player or AV Player, the target platforms became increasingly similar between integrations. The shift from everything is custom to common platforms and players enabled Agama to step outside its domain. We started actively investigating players and platforms, gathering knowledge about them, assessing what could be possible and feasible, and defining an absolute base of metrics that would benefit every customer. These are all implemented in what we call 'Player plugins .
The player plugins follow a few basic principles:
Agama develops and maintains the plugins
The plugins provide a good set of metrics, making them usable directly
No Agama domain knowledge is required for plugin integration - just a few, stable APIs are necessary
Ability to pass custom metrics to the plugin
Agama develops and maintains player plugins for most of the popular players, such as ExoPlayer, Shaka Player, AVPlayer, and for platforms such as Android, FireOS, iOS, tvOS, Chromecast, Browsers, WebOS, Tizen etc.
While the complete list of metrics differs slightly between plugins, they all share most of the metrics. Some of the features they have in common are:
QoS and QoE metrics
Device properties
Ability to understand asset consumption
Ability to understand playback errors (for instance, DRM errors)
Integration keep it simpleLet's take a closer look at what it takes to integrate Agama into your application. To make it as realistic as possible, let's use ExoPlayer as the target player and Android as the target platform.
ExoPlayer is currently one of the most popular players for Android. It is extremely customizable and flexible, yet easy to start with. Therefore, it comes as no surprise that it is used by everyone, from hobby enthusiasts to video operators and even YouTube.
RequirementsLet's start by describing what requirements and dependencies are needed to use the plugin in the first place. Players evolve quickly and so do their capabilities and APIs, and this truly applies to the ExoPlayer. Therefore, the plugin comes in multiple variants associated with various ExoPlayer minor versions. By using a relatively modern version, plugin-player compatibility should not be a problem.
Some metrics implemented by the plugin can be subject to platform permissions. These are not critical to have in any sense, but more on the good-to-have side and will only be included if permissions are granted. Also related to privacy issues, the plugin can be configured to skip certain sensitive metrics. Such information can be, for example, the collection of the device's longitude and latitude position.
Lastly, the plugin is to be included in the project as any other 3rd party library. And the empclient must be included in the same way as well.
Initialization and configuration stepsInitialize the plugin as early as possible. The plugin's lifetime shall reflect the application's lifetime. To initialize it, one needs an Agama configuration string. It is passed on to the Agama core agent - empclient, and includes information such as report heartbeat and the operator id. The configuration string is typically provided by Agama. The application properties such as the applications name and version are needed during initialization.
String agamaConfig =
emp_service=https://cdm1.company123.se/report;report_interval=60;id_report_interval=240;operator_id=fooSoo; ;
String appName = Company 123 Play App ;
String appVersion= 2.1 ;
// Initialize the plugin
EmpStats.getInstance().init(agamaConfig, Definitions.LogLevel.DEBUG, appName, appVersion, ExoPlayerLibraryInfo.VERSION, getApplicationContext());
Once the plugin instance is created, an account associated with the user should be set as well. This will enable (among other things) to find the customer in the Agama system by its account id.
// Set user account id for user John Doe
EmpStats.getInstance().setUserAccountId( johdo28 );
Monitoring videoNow the plugin is initialized, configured and sending data to the Agama backend. It's time to start monitoring the consumed assets. The user has switched to a new channel, started up an asset from the catchup library or simply opened a new episode of their favorite TV series. Opening any new asset shall be signaled to the plugin.
// Load asset & play
String assetUri= https://demo.agamatech.se/Manifest.m3u8 ;
EmpStats.getInstance().sessionOpen(assetUri, Definitions.AssetType.VOD, Sintel , player);
URI uri = uri.parse(assetUri);
player.setMediaItem(MediaItem.fromUri(uri), false);
player.prepare();
Analog to signaling the intent to start playing content, one needs to signal playback termination as well. There are two common ways of doing this: t
Most recent headlines
05/01/2027
Worlds first 802.15.4ab-UWB chip verified by Calterah and Rohde & Schwarz to be ...
13/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , er...
13/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
13/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
13/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
13/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , er...
13/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
13/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
13/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
13/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
13/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
13/11/2026
Amagi, the media industry cloud company, today announced a partnership with Golden Times Media Technology (stock code 920021.BJ), a Beijing-based media and tech...
13/11/2026
CGI (TSX: GIB.A) (NYSE: GIB), one of the largest independent IT and business consulting services firms in the world, together with its Malaysian partner, Cedar ...
13/11/2026
SMPTE, the home for media professionals, technologists and engineers, today announced that The Studio B&H and Riedel Communications will provide the video infra...
13/11/2026
iWedia, a global leader in connected TV software solutions, will present its software-first approach to DRAM optimization at Android TV APAC Summit 2026 in Bang...
12/11/2026
Industry leaders examine how Dynamic Media Facility, Media eXchange Layer, and c...
12/11/2026
The junior Tar Heel is embracing the technical and creative challenges of live production while emerging as a leader and mentor in the control room...
12/11/2026
Gracenote, Nielsen's content intelligence business, has released its fifth a...
12/11/2026
RTL Deutschland will bring the NHL to free-to-air TV in Germany starting Nov. 30...
12/11/2026
Clear-Com supported On Air 2026, a 24-hour student-led broadcast connecting 45 u...
12/11/2026
uniqFEED has opened a Remote Operations Center (ROC) in Madrid, Spain. It is already operational, delivering virtual advertising for LaLiga matches. The ROC is ...
12/11/2026
Disney, ESPN and the NBA will present Dunk the Halls, the third real-time animated NBA game using Sony's Beyond Sports data visualization technology, on Chr...
12/11/2026
Van Wagner has launched Van Wagner RELAY, a digital platform for official athlet...
12/11/2026
Deal brings together two of the industry's most established graphics brands and significantly expands Vizrt's footprint in U.S. sports and regional broa...
12/11/2026
Euro TV Production GmbH of Austria has upgraded its outside broadcast vehicle with Lawo technology. The mc 36 Classic console in service since 2019 was replaced...
12/11/2026
Tagboard has launched Spark Resize, an AI-assisted tool now in beta that takes an existing graphic and produces a new version for a different aspect ratio or sc...
12/11/2026
Ben Winston, Glenn Weiss, and FIFA's Jenni-Lee Van Gelder headlined a day fo...
12/11/2026
Free interactive platform visualizes team tendencies, formations, and schemes, updated weekly...
12/11/2026
Sports Broadcasting Hall of Famer Charlie Jablonski's broadcasting career is...
12/11/2026
Blend between concert grand & vintage electric pianos
UVI's latest release combines a concert grand with a vintage electric piano in a single instrument...
12/11/2026
Native version of popular effects plug-in arrives
Many of the plug-ins that used to require Universal Audios Apollo interfaces or DSP accelerators have made...
12/11/2026
Four next-generation interfaces announced
Following on from the release of their new flagship Thunderbolt interfaces, Audient have refreshed the design of t...
12/11/2026
Rohde & Schwarz and Connektica showcase automated RF test systems for satellite ...
12/11/2026
Gracenote's 2026 State of Play report signals a rising retention risk: More ...
12/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
12/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
12/11/2026
Broadpeak and Magnite enable advertising on Afree TV to unlock new revenue opportunities for African content providers
Broadsmart, a technology integrator deli...
12/11/2026
PlayBox Neo is perceived in the industry as an innovator way ahead of its time, already making a profound impact in the Asia-Pacific region, where the company i...
12/11/2026
This agreement marks the next step in a multi-year digital transformation programme as distribution expands across more clients and markets, requiring reliable ...
12/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
12/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
12/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
12/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
12/11/2026
LA JOLLA, CA-Central to many immune responses are antibodies, which identify foreign substances and help remove them from the body. The immune cells that produc...
12/11/2026
Bill & Ted Rock Opera Taken to New Heights After Student Workshop Emerging artists from Berklee, Boston Conservatory, and Emerson collaborated with industry p...
12/11/2026
Airing Sunday 15 November on RT One and RT Player at 5.10pm
A new series of The Big Pet Project kicks off this Sunday, brightening our winter evenings with a...
12/11/2026
Rally the ranks this GFN Thursday. Warhammer 40,000: Dawn of War IV is coming to...
12/11/2026
Image available HERE
Teaser available HERE
A teaser for The Cadburys (6x60') has been released, introducing audiences to the core family of George (Harry ...
12/11/2026
The Hollywood Professional Association (HPA) today announced the theme and program focus for the 2027 HPA Tech Retreat, taking place Feb. 14-18, 2027 in La Quin...
12/11/2026
An island in rural MontanaJeremiah Slovarp owns Jereco in Bozeman, Montana, and teaches music technology and recording arts at Montana State University. He star...