diff --git a/extensions/mediasession/src/main/java/com/google/android/exoplayer2/ext/mediasession/MediaSessionConnector.java b/extensions/mediasession/src/main/java/com/google/android/exoplayer2/ext/mediasession/MediaSessionConnector.java index 7e72904078..280a5e3d4f 100644 --- a/extensions/mediasession/src/main/java/com/google/android/exoplayer2/ext/mediasession/MediaSessionConnector.java +++ b/extensions/mediasession/src/main/java/com/google/android/exoplayer2/ext/mediasession/MediaSessionConnector.java @@ -921,7 +921,9 @@ public final class MediaSessionConnector { } builder.putLong( MediaMetadataCompat.METADATA_KEY_DURATION, - player.getDuration() == C.TIME_UNSET ? -1 : player.getDuration()); + player.isCurrentWindowDynamic() || player.getDuration() == C.TIME_UNSET + ? -1 + : player.getDuration()); long activeQueueItemId = mediaController.getPlaybackState().getActiveQueueItemId(); if (activeQueueItemId != MediaSessionCompat.QueueItem.UNKNOWN_ID) { List queue = mediaController.getQueue();