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 ...@@ -252,6 +252,7 @@ public final class ProgressiveMediaSource extends BaseMediaSource
@Override @Override
protected void prepareSourceInternal(@Nullable TransferListener mediaTransferListener) { protected void prepareSourceInternal(@Nullable TransferListener mediaTransferListener) {
transferListener = mediaTransferListener; transferListener = mediaTransferListener;
drmSessionManager.prepare();
notifySourceInfoRefreshed(timelineDurationUs, timelineIsSeekable); notifySourceInfoRefreshed(timelineDurationUs, timelineIsSeekable);
} }
...@@ -286,7 +287,7 @@ public final class ProgressiveMediaSource extends BaseMediaSource ...@@ -286,7 +287,7 @@ public final class ProgressiveMediaSource extends BaseMediaSource
@Override @Override
protected void releaseSourceInternal() { protected void releaseSourceInternal() {
// Do nothing. drmSessionManager.release();
} }
// ProgressiveMediaPeriod.Listener implementation. // ProgressiveMediaPeriod.Listener implementation.
......
...@@ -657,6 +657,7 @@ public final class DashMediaSource extends BaseMediaSource { ...@@ -657,6 +657,7 @@ public final class DashMediaSource extends BaseMediaSource {
@Override @Override
protected void prepareSourceInternal(@Nullable TransferListener mediaTransferListener) { protected void prepareSourceInternal(@Nullable TransferListener mediaTransferListener) {
this.mediaTransferListener = mediaTransferListener; this.mediaTransferListener = mediaTransferListener;
drmSessionManager.prepare();
if (sideloadedManifest) { if (sideloadedManifest) {
processManifest(false); processManifest(false);
} else { } else {
...@@ -726,6 +727,7 @@ public final class DashMediaSource extends BaseMediaSource { ...@@ -726,6 +727,7 @@ public final class DashMediaSource extends BaseMediaSource {
expiredManifestPublishTimeUs = C.TIME_UNSET; expiredManifestPublishTimeUs = C.TIME_UNSET;
firstPeriodId = 0; firstPeriodId = 0;
periodsById.clear(); periodsById.clear();
drmSessionManager.release();
} }
// PlayerEmsgCallback callbacks. // PlayerEmsgCallback callbacks.
......
...@@ -357,6 +357,7 @@ public final class HlsMediaSource extends BaseMediaSource ...@@ -357,6 +357,7 @@ public final class HlsMediaSource extends BaseMediaSource
@Override @Override
protected void prepareSourceInternal(@Nullable TransferListener mediaTransferListener) { protected void prepareSourceInternal(@Nullable TransferListener mediaTransferListener) {
this.mediaTransferListener = mediaTransferListener; this.mediaTransferListener = mediaTransferListener;
drmSessionManager.prepare();
EventDispatcher eventDispatcher = createEventDispatcher(/* mediaPeriodId= */ null); EventDispatcher eventDispatcher = createEventDispatcher(/* mediaPeriodId= */ null);
playlistTracker.start(manifestUri, eventDispatcher, /* listener= */ this); playlistTracker.start(manifestUri, eventDispatcher, /* listener= */ this);
} }
...@@ -391,6 +392,7 @@ public final class HlsMediaSource extends BaseMediaSource ...@@ -391,6 +392,7 @@ public final class HlsMediaSource extends BaseMediaSource
@Override @Override
protected void releaseSourceInternal() { protected void releaseSourceInternal() {
playlistTracker.stop(); playlistTracker.stop();
drmSessionManager.release();
} }
@Override @Override
......
...@@ -552,6 +552,7 @@ public final class SsMediaSource extends BaseMediaSource ...@@ -552,6 +552,7 @@ public final class SsMediaSource extends BaseMediaSource
@Override @Override
protected void prepareSourceInternal(@Nullable TransferListener mediaTransferListener) { protected void prepareSourceInternal(@Nullable TransferListener mediaTransferListener) {
this.mediaTransferListener = mediaTransferListener; this.mediaTransferListener = mediaTransferListener;
drmSessionManager.prepare();
if (sideloadedManifest) { if (sideloadedManifest) {
manifestLoaderErrorThrower = new LoaderErrorThrower.Dummy(); manifestLoaderErrorThrower = new LoaderErrorThrower.Dummy();
processManifest(); processManifest();
...@@ -606,6 +607,7 @@ public final class SsMediaSource extends BaseMediaSource ...@@ -606,6 +607,7 @@ public final class SsMediaSource extends BaseMediaSource
manifestRefreshHandler.removeCallbacksAndMessages(null); manifestRefreshHandler.removeCallbacksAndMessages(null);
manifestRefreshHandler = null; manifestRefreshHandler = null;
} }
drmSessionManager.release();
} }
// Loader.Callback implementation // 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