Package com.brightcove.player.render
Class TrackSelectorHelper
- java.lang.Object
-
- com.brightcove.player.render.TrackSelectorHelper
-
public class TrackSelectorHelper extends java.lang.Object
Helper class to do several operations with theMappingTrackSelector
selector.
-
-
Constructor Summary
Constructors Constructor Description TrackSelectorHelper(com.google.android.exoplayer2.ExoPlayer player, com.google.android.exoplayer2.trackselection.DefaultTrackSelector trackSelector)
Instantiates a new Track selector helper.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description void
applySelectionOverride(int renderType, SelectionOverrideCreator selectionOverrideCreator)
Deprecated.void
applyTrackSelectionOverrides(int renderType, TrackSelectionOverrideCreator trackSelectionOverrideCreator)
Creates a {#TrackSelectionOverrides} with theTrackSelectionOverrideCreator
and the render type.void
disableTrack(int trackType)
Disables the Renderer track.void
enableTrack(int trackType)
Enables the Renderer track.java.util.List<com.google.android.exoplayer2.Format>
findOfflineFormatList(android.content.Context context, java.util.List<com.google.android.exoplayer2.Format> formatList)
Filter the Format list parameter returning only those stored in the device.java.util.Map<java.lang.Integer,java.lang.String>
getAudioTracksIndexMap(android.content.Context context, DeliveryType deliveryType, boolean offline)
Creates a map from the Renderer of typeExoPlayerVideoDisplayComponent.TYPE_AUDIO
with the track index and the language code.java.util.List<com.google.android.exoplayer2.Format>
getAvailableFormatList(int trackType)
Gets the availableFormat
list by type.int
getRendererIndex(int renderType)
Gets the renderer index.java.lang.String
getSelectedAudioLanguage()
Gets the selected audio language if any.void
selectAudio(java.lang.String language)
Selects the audio language in theMappingTrackSelector
if available.void
selectCaption(BrightcoveCaptionFormat captions)
Selects the Brightcove caption in the @MappingTrackSelector
if available.void
updateTracksGroupInfos(com.google.common.collect.ImmutableList<com.google.android.exoplayer2.TracksInfo.TrackGroupInfo> trackGroupInfos)
Updates the Track Group array.void
updateTracksSelectionArray(com.google.android.exoplayer2.trackselection.TrackSelectionArray trackSelections)
Deprecated.UseupdateTracksGroupInfos(ImmutableList)
instead.
-
-
-
Constructor Detail
-
TrackSelectorHelper
public TrackSelectorHelper(@NonNull com.google.android.exoplayer2.ExoPlayer player, @NonNull com.google.android.exoplayer2.trackselection.DefaultTrackSelector trackSelector)
Instantiates a new Track selector helper.- Parameters:
player
- the playertrackSelector
- the track selector
-
-
Method Detail
-
getAvailableFormatList
@NonNull public java.util.List<com.google.android.exoplayer2.Format> getAvailableFormatList(int trackType)
Gets the availableFormat
list by type.- Parameters:
trackType
- the track type- Returns:
- the available format list
-
selectCaption
public void selectCaption(@NonNull BrightcoveCaptionFormat captions)
Selects the Brightcove caption in the @MappingTrackSelector
if available.- Parameters:
captions
- the captions
-
selectAudio
public void selectAudio(@NonNull java.lang.String language)
Selects the audio language in theMappingTrackSelector
if available.- Parameters:
language
- the language
-
applySelectionOverride
@Deprecated public void applySelectionOverride(int renderType, @NonNull SelectionOverrideCreator selectionOverrideCreator)
Deprecated.
-
applyTrackSelectionOverrides
public void applyTrackSelectionOverrides(int renderType, @NonNull TrackSelectionOverrideCreator trackSelectionOverrideCreator)
Creates a {#TrackSelectionOverrides} with the
IfTrackSelectionOverrideCreator
and the render type. Such Track Selection Override will be set to the {#TrackSelector}.TrackSelectionOverrideCreator
returnsTrackSelectionOverrideCreator.EMPTY_TRACK_SELECTION_OVERRIDES
, the Track Selection Override will be ignored.- Parameters:
renderType
- theExoPlayerVideoDisplayComponent.TrackType
trackSelectionOverrideCreator
- the selection override creator
-
getSelectedAudioLanguage
public java.lang.String getSelectedAudioLanguage()
Gets the selected audio language if any.- Returns:
- the selected audio language
-
updateTracksSelectionArray
@Deprecated public void updateTracksSelectionArray(@Nullable com.google.android.exoplayer2.trackselection.TrackSelectionArray trackSelections)
Deprecated.UseupdateTracksGroupInfos(ImmutableList)
instead.Updates the Track Selection array.- Parameters:
trackSelections
- the track selection array
-
updateTracksGroupInfos
public void updateTracksGroupInfos(@Nullable com.google.common.collect.ImmutableList<com.google.android.exoplayer2.TracksInfo.TrackGroupInfo> trackGroupInfos)
Updates the Track Group array.- Parameters:
trackGroupInfos
- the track selection array
-
enableTrack
public void enableTrack(int trackType)
Enables the Renderer track.- Parameters:
trackType
- the track type
-
disableTrack
public void disableTrack(int trackType)
Disables the Renderer track.- Parameters:
trackType
- the track type
-
getAudioTracksIndexMap
@NonNull public java.util.Map<java.lang.Integer,java.lang.String> getAudioTracksIndexMap(android.content.Context context, DeliveryType deliveryType, boolean offline)
Creates a map from the Renderer of typeExoPlayerVideoDisplayComponent.TYPE_AUDIO
with the track index and the language code.- Parameters:
deliveryType
- the delivery type- Returns:
- the audio tracks index map
-
getRendererIndex
public int getRendererIndex(int renderType)
Gets the renderer index.- Parameters:
renderType
- the render type- Returns:
- the renderer index
-
findOfflineFormatList
@NonNull public java.util.List<com.google.android.exoplayer2.Format> findOfflineFormatList(@NonNull android.content.Context context, @NonNull java.util.List<com.google.android.exoplayer2.Format> formatList)
Filter the Format list parameter returning only those stored in the device.- Parameters:
context
- reference to the host application context.formatList
- the format list- Returns:
- the list of Offline Formats
-
-