Interface TrackRendererPlugin

All Known Implementing Classes:
ClearTrackRendererPlugin, ExoSubtitlesRendererPlugin

public interface TrackRendererPlugin
This plugin interface can be used to implement a track renderer integration. When a player is initialised, registered track renderer plugins are checked and eventually a renderer is created if the plugin claims to be able to handle the requested content type and drm configuration.

A player initialization uses one instance of the TrackRendererPlugin.TrackRendererBuilder to create renderer. That means that you can hold state in within the builder. This is useful if you need to create a drm session that is used for both video and audio tracks. You can store that session globally in the TrackRendererPlugin.TrackRendererBuilder implementation because there will only be one builder per player instance.

Implementations of this plugin can be registered with PlayerSDK.register(TrackRendererPlugin).

The renderer builder creates instances of TrackRendererPlugin.TrackRendererContainer that hold a reference to a renderer and an optional reference to a view component that is required for the renderer.

Since:
3.0.0