Package com.castlabs.android.player
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 theTrackRendererPlugin.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 theTrackRendererPlugin.TrackRendererBuilder
implementation because there will only be one builder per player instance. Implementations of this plugin can be registered withPlayerSDK.register(TrackRendererPlugin)
. The renderer builder creates instances ofTrackRendererPlugin.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
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interface
TrackRendererPlugin.TrackRendererBuilder
Implementations of the builder a responsible to createRenderer
instances.static class
TrackRendererPlugin.TrackRendererContainer
The builder interface creates instances of this container that wraps the renderer instance and an optional view component.static class
TrackRendererPlugin.Type
The different content types
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description TrackRendererPlugin.TrackRendererBuilder
create()
-
-
-
Method Detail
-
create
@NonNull TrackRendererPlugin.TrackRendererBuilder create()
- Returns:
- a new instance of the builder
-
-