Package com.castlabs.android.player
Class IPTVPlayerPlugin
- java.lang.Object
-
- com.castlabs.android.player.IPTVPlayerPlugin
-
- All Implemented Interfaces:
PlayerPlugin
public class IPTVPlayerPlugin extends Object implements PlayerPlugin
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface com.castlabs.android.player.PlayerPlugin
PlayerPlugin.DrmInitDataProvider<T extends com.google.android.exoplayer2.offline.FilterableManifest>
-
-
Constructor Summary
Constructors Constructor Description IPTVPlayerPlugin()
IPTVPlayerPlugin(boolean playsClearWithExo)
IPTVPlayerPlugin(com.google.android.exoplayer2.analytics.IptvAnalyticsListener.EventDispatcher dispatcher)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description PlayerPlugin.DrmInitDataProvider
createDrmInitDataProvider(ManifestModifier manifestModifier)
com.google.android.exoplayer2.source.MediaSource
createMediaSource(PlayerConfig config, PlayerController playerController)
Create the content media source based on the supplied path and thePlayerController
List<TrackRendererPlugin.TrackRendererContainer>
createRendererContainers(PlayerController playerController, DrmConfiguration drmConfiguration)
Create the list of renderer containers based on the suppliedDrmConfiguration
andPlayerController
com.google.android.exoplayer2.RendererCapabilities[]
getRendererCapabilities(Context context, DrmConfiguration drmConfiguration)
Retrieve array of supported RendererCapabilities.boolean
isFormatSupported(int format, DrmConfiguration configuration)
void
removeWVCASLicense(String lic)
void
setDispatcher(com.google.android.exoplayer2.analytics.IptvAnalyticsListener.EventDispatcher dispatcher)
void
setRtpQueueSizeInPackets(int rtpQueueSizeInPackets)
-
-
-
Method Detail
-
setDispatcher
public void setDispatcher(com.google.android.exoplayer2.analytics.IptvAnalyticsListener.EventDispatcher dispatcher)
-
setRtpQueueSizeInPackets
public void setRtpQueueSizeInPackets(int rtpQueueSizeInPackets)
-
removeWVCASLicense
public void removeWVCASLicense(String lic)
-
isFormatSupported
public boolean isFormatSupported(int format, @Nullable DrmConfiguration configuration)
- Specified by:
isFormatSupported
in interfacePlayerPlugin
- Parameters:
format
- the content format (one ofSdkConsts.CONTENT_TYPE_UNKNOWN
,SdkConsts.CONTENT_TYPE_DASH
,SdkConsts.CONTENT_TYPE_HLS
,SdkConsts.CONTENT_TYPE_SMOOTHSTREAMING
, orSdkConsts.CONTENT_TYPE_MP4
)configuration
- the drm configuration- Returns:
- true if this plugin can create a player for the given content format and drm configuration
-
getRendererCapabilities
@Nullable public com.google.android.exoplayer2.RendererCapabilities[] getRendererCapabilities(@NonNull Context context, @Nullable DrmConfiguration drmConfiguration)
Description copied from interface:PlayerPlugin
Retrieve array of supported RendererCapabilities.- Specified by:
getRendererCapabilities
in interfacePlayerPlugin
- Parameters:
context
- the contextdrmConfiguration
- the drm configuration- Returns:
- RendererCapabilities array supported by the player plugin or null
-
createDrmInitDataProvider
@Nullable public PlayerPlugin.DrmInitDataProvider createDrmInitDataProvider(ManifestModifier manifestModifier)
- Specified by:
createDrmInitDataProvider
in interfacePlayerPlugin
-
createMediaSource
@NonNull public com.google.android.exoplayer2.source.MediaSource createMediaSource(@NonNull PlayerConfig config, @NonNull PlayerController playerController)
Description copied from interface:PlayerPlugin
Create the content media source based on the supplied path and thePlayerController
- Specified by:
createMediaSource
in interfacePlayerPlugin
- Parameters:
config
- ThePlayerConfig
playerController
- ThePlayerController
instance- Returns:
- The media source
-
createRendererContainers
@NonNull public List<TrackRendererPlugin.TrackRendererContainer> createRendererContainers(@NonNull PlayerController playerController, @Nullable DrmConfiguration drmConfiguration) throws CastlabsPlayerException
Description copied from interface:PlayerPlugin
Create the list of renderer containers based on the suppliedDrmConfiguration
andPlayerController
- Specified by:
createRendererContainers
in interfacePlayerPlugin
- Parameters:
playerController
- ThePlayerController
instancedrmConfiguration
- TheDrmConfiguration
, might benull
- Returns:
- The list of renderer containers
- Throws:
CastlabsPlayerException
- when render containers can not be created or an error occurs
-
-