Merge pull request #5187 from BrainCrumbz:feat/get-tag
PiperOrigin-RevId: 224166374
This commit is contained in:
parent
ddda2eef7e
commit
5f33c7fcf5
@ -76,6 +76,12 @@ public final class ImaAdsMediaSource extends BaseMediaSource implements SourceIn
|
||||
adUiViewGroup, eventHandler, eventListener);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Nullable
|
||||
public Object getTag() {
|
||||
return adsMediaSource.getTag();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void prepareSourceInternal(
|
||||
final ExoPlayer player,
|
||||
|
@ -216,6 +216,12 @@ public final class ClippingMediaSource extends CompositeMediaSource<Void> {
|
||||
window = new Timeline.Window();
|
||||
}
|
||||
|
||||
@Override
|
||||
@Nullable
|
||||
public Object getTag() {
|
||||
return mediaSource.getTag();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void prepareSourceInternal(
|
||||
ExoPlayer player,
|
||||
|
@ -453,6 +453,12 @@ public class ConcatenatingMediaSource extends CompositeMediaSource<MediaSourceHo
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@Nullable
|
||||
public Object getTag() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public final synchronized void prepareSourceInternal(
|
||||
ExoPlayer player,
|
||||
@ -1069,6 +1075,12 @@ public class ConcatenatingMediaSource extends CompositeMediaSource<MediaSourceHo
|
||||
// Do nothing.
|
||||
}
|
||||
|
||||
@Override
|
||||
@Nullable
|
||||
public Object getTag() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void releaseSourceInternal() {
|
||||
// Do nothing.
|
||||
|
@ -358,6 +358,12 @@ public final class ExtractorMediaSource extends BaseMediaSource
|
||||
this.tag = tag;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Nullable
|
||||
public Object getTag() {
|
||||
return tag;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void prepareSourceInternal(
|
||||
ExoPlayer player,
|
||||
|
@ -64,6 +64,12 @@ public final class LoopingMediaSource extends CompositeMediaSource<Void> {
|
||||
mediaPeriodToChildMediaPeriodId = new HashMap<>();
|
||||
}
|
||||
|
||||
@Override
|
||||
@Nullable
|
||||
public Object getTag() {
|
||||
return childSource.getTag();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void prepareSourceInternal(
|
||||
ExoPlayer player,
|
||||
|
@ -220,6 +220,12 @@ public interface MediaSource {
|
||||
*/
|
||||
void removeEventListener(MediaSourceEventListener eventListener);
|
||||
|
||||
/** Returns the tag set on the media source, or null if none was set. */
|
||||
@Nullable
|
||||
default Object getTag() {
|
||||
return null;
|
||||
}
|
||||
|
||||
/** @deprecated Will be removed in the next release. */
|
||||
@Deprecated
|
||||
void prepareSource(
|
||||
|
@ -98,6 +98,12 @@ public final class MergingMediaSource extends CompositeMediaSource<Integer> {
|
||||
timelines = new Timeline[mediaSources.length];
|
||||
}
|
||||
|
||||
@Override
|
||||
@Nullable
|
||||
public Object getTag() {
|
||||
return mediaSources.length > 0 ? mediaSources[0].getTag() : null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void prepareSourceInternal(
|
||||
ExoPlayer player,
|
||||
|
@ -185,6 +185,7 @@ public final class SingleSampleMediaSource extends BaseMediaSource {
|
||||
private final LoadErrorHandlingPolicy loadErrorHandlingPolicy;
|
||||
private final boolean treatLoadErrorsAsEndOfStream;
|
||||
private final Timeline timeline;
|
||||
@Nullable private final Object tag;
|
||||
|
||||
private @Nullable TransferListener transferListener;
|
||||
|
||||
@ -287,6 +288,7 @@ public final class SingleSampleMediaSource extends BaseMediaSource {
|
||||
this.durationUs = durationUs;
|
||||
this.loadErrorHandlingPolicy = loadErrorHandlingPolicy;
|
||||
this.treatLoadErrorsAsEndOfStream = treatLoadErrorsAsEndOfStream;
|
||||
this.tag = tag;
|
||||
dataSpec =
|
||||
new DataSpec(uri, DataSpec.FLAG_ALLOW_GZIP | DataSpec.FLAG_ALLOW_CACHING_UNKNOWN_LENGTH);
|
||||
timeline =
|
||||
@ -295,6 +297,12 @@ public final class SingleSampleMediaSource extends BaseMediaSource {
|
||||
|
||||
// MediaSource implementation.
|
||||
|
||||
@Override
|
||||
@Nullable
|
||||
public Object getTag() {
|
||||
return tag;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void prepareSourceInternal(
|
||||
ExoPlayer player,
|
||||
|
@ -319,6 +319,12 @@ public final class AdsMediaSource extends CompositeMediaSource<MediaPeriodId> {
|
||||
adsLoader.setSupportedContentTypes(adMediaSourceFactory.getSupportedTypes());
|
||||
}
|
||||
|
||||
@Override
|
||||
@Nullable
|
||||
public Object getTag() {
|
||||
return contentMediaSource.getTag();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void prepareSourceInternal(
|
||||
final ExoPlayer player,
|
||||
|
@ -607,6 +607,12 @@ public final class DashMediaSource extends BaseMediaSource {
|
||||
|
||||
// MediaSource implementation.
|
||||
|
||||
@Override
|
||||
@Nullable
|
||||
public Object getTag() {
|
||||
return tag;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void prepareSourceInternal(
|
||||
ExoPlayer player,
|
||||
|
@ -390,6 +390,12 @@ public final class HlsMediaSource extends BaseMediaSource
|
||||
this.tag = tag;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Nullable
|
||||
public Object getTag() {
|
||||
return tag;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void prepareSourceInternal(
|
||||
ExoPlayer player,
|
||||
|
@ -503,6 +503,12 @@ public final class SsMediaSource extends BaseMediaSource
|
||||
|
||||
// MediaSource implementation.
|
||||
|
||||
@Override
|
||||
@Nullable
|
||||
public Object getTag() {
|
||||
return tag;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void prepareSourceInternal(
|
||||
ExoPlayer player,
|
||||
|
@ -88,6 +88,13 @@ public class FakeMediaSource extends BaseMediaSource {
|
||||
this.trackGroupArray = trackGroupArray;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Nullable
|
||||
public Object getTag() {
|
||||
boolean hasTimeline = timeline != null && !timeline.isEmpty();
|
||||
return hasTimeline ? timeline.getWindow(0, new Timeline.Window()).tag : null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public synchronized void prepareSourceInternal(
|
||||
ExoPlayer player,
|
||||
|
Loading…
x
Reference in New Issue
Block a user