Commit 18b9304f by aquilescanta Committed by Oliver Woodman

Call prepare and release from MediaSources

Issue:#4721
PiperOrigin-RevId: 270342454
parent 7fc9c848
......@@ -252,6 +252,7 @@ public final class ProgressiveMediaSource extends BaseMediaSource
@Override
protected void prepareSourceInternal(@Nullable TransferListener mediaTransferListener) {
transferListener = mediaTransferListener;
drmSessionManager.prepare();
notifySourceInfoRefreshed(timelineDurationUs, timelineIsSeekable);
}
......@@ -286,7 +287,7 @@ public final class ProgressiveMediaSource extends BaseMediaSource
@Override
protected void releaseSourceInternal() {
// Do nothing.
drmSessionManager.release();
}
// ProgressiveMediaPeriod.Listener implementation.
......
......@@ -657,6 +657,7 @@ public final class DashMediaSource extends BaseMediaSource {
@Override
protected void prepareSourceInternal(@Nullable TransferListener mediaTransferListener) {
this.mediaTransferListener = mediaTransferListener;
drmSessionManager.prepare();
if (sideloadedManifest) {
processManifest(false);
} else {
......@@ -726,6 +727,7 @@ public final class DashMediaSource extends BaseMediaSource {
expiredManifestPublishTimeUs = C.TIME_UNSET;
firstPeriodId = 0;
periodsById.clear();
drmSessionManager.release();
}
// PlayerEmsgCallback callbacks.
......
......@@ -357,6 +357,7 @@ public final class HlsMediaSource extends BaseMediaSource
@Override
protected void prepareSourceInternal(@Nullable TransferListener mediaTransferListener) {
this.mediaTransferListener = mediaTransferListener;
drmSessionManager.prepare();
EventDispatcher eventDispatcher = createEventDispatcher(/* mediaPeriodId= */ null);
playlistTracker.start(manifestUri, eventDispatcher, /* listener= */ this);
}
......@@ -391,6 +392,7 @@ public final class HlsMediaSource extends BaseMediaSource
@Override
protected void releaseSourceInternal() {
playlistTracker.stop();
drmSessionManager.release();
}
@Override
......
......@@ -552,6 +552,7 @@ public final class SsMediaSource extends BaseMediaSource
@Override
protected void prepareSourceInternal(@Nullable TransferListener mediaTransferListener) {
this.mediaTransferListener = mediaTransferListener;
drmSessionManager.prepare();
if (sideloadedManifest) {
manifestLoaderErrorThrower = new LoaderErrorThrower.Dummy();
processManifest();
......@@ -606,6 +607,7 @@ public final class SsMediaSource extends BaseMediaSource
manifestRefreshHandler.removeCallbacksAndMessages(null);
manifestRefreshHandler = null;
}
drmSessionManager.release();
}
// Loader.Callback implementation
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment