Skip to content

IllegalStateException while accessing DefaultDrmSessionManager builder. #350

Closed

Description

@ozguroktem

Media3 Version

ExoPlayer 2.18.6

Devices that reproduce the issue

Xiaomi Redmi Note 7 running on 11

Devices that do not reproduce the issue

No response

Reproducible in the demo app?

Not tested

Reproduction steps

Play any Widevine DRM protected content. Haven't tested other DRM schemes yet.

Expected result

The content should play without any exception thrown since we have not changed anything in our implementation since the last update.

Actual result

Playback does not crash but instead continues with the following stack trace. This actually seems to be intended but we have yet to come up with a reason behind this behavior.

DefaultDrmSessionManager accessed before setPlayer(), possibly on the wrong thread. java.lang.IllegalStateException at com.google.android.exoplayer2.drm.DefaultDrmSessionManager.verifyPlaybackThread(DefaultDrmSessionManager.java:824) at com.google.android.exoplayer2.drm.DefaultDrmSessionManager.prepare(DefaultDrmSessionManager.java:471) at com.google.android.exoplayer2.source.dash.DashMediaSource.prepareSourceInternal(DashMediaSource.java:450) at com.google.android.exoplayer2.source.BaseMediaSource.prepareSource(BaseMediaSource.java:221) at com.google.android.exoplayer2.source.CompositeMediaSource.prepareChildSource(CompositeMediaSource.java:120) at com.google.android.exoplayer2.source.MergingMediaSource.prepareSourceInternal(MergingMediaSource.java:171) at com.google.android.exoplayer2.source.BaseMediaSource.prepareSource(BaseMediaSource.java:221) at com.google.android.exoplayer2.source.CompositeMediaSource.prepareChildSource(CompositeMediaSource.java:120) at com.google.android.exoplayer2.source.WrappingMediaSource.prepareChildSource(WrappingMediaSource.java:212) at com.google.android.exoplayer2.source.MaskingMediaSource.createPeriod(MaskingMediaSource.java:108) at com.google.android.exoplayer2.MediaSourceList.createPeriod(MediaSourceList.java:315) at com.google.android.exoplayer2.MediaPeriodHolder.createMediaPeriod(MediaPeriodHolder.java:433) at com.google.android.exoplayer2.MediaPeriodHolder.<init>(MediaPeriodHolder.java:108) at com.google.android.exoplayer2.MediaPeriodQueue.enqueueNextMediaPeriodHolder(MediaPeriodQueue.java:190) at com.google.android.exoplayer2.ExoPlayerImplInternal.maybeUpdateLoadingPeriod(ExoPlayerImplInternal.java:1999) at com.google.android.exoplayer2.ExoPlayerImplInternal.updatePeriods(ExoPlayerImplInternal.java:1986) at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:974) at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:502) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:223) at android.os.HandlerThread.run(HandlerThread.java:67)

Media

Sent via email.

Bug Report

Activity

  1. changed the title [-]IllegalStateException while acquiring FrameworkMediaDrm instance.[/-] [+]IllegalStateException while accessing DefaultDrmSessionManager builder.[/+] on Apr 23, 2023
  2. icbaker commented on Apr 24, 2023

    @icbaker
    Collaborator

    Thanks for reporting, we spotted this internally last week and I have a fix in internal review - when it gets published it will be linked here. It will be included in the next release.

    This instance of this warning is a false alarm, it can be safely ignored until the next release is available.

  3. locked and limited conversation to collaborators on Jun 24, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions