Skip to content

Widevine DASH streaming does not start #10620

@ogawa-ma

Description

@ogawa-ma

■ Question
I have publishing an application using ExoPlayer, but streaming playback does not start for some users.
Playback does not start even after 1 minute after setMediaItem and player.prepare().
When this event occurs, if the user can't wait and ends playback, player.release() is called in onPause of the playback screen class, but an error occurs there.
Can you tell from the log why playback is not possible?

■ ExoPlayer version used

  • 2.16.1

■ Some of the devices that are occurring

  • Pixel 4a (5G)(OS version 12)
  • arrows NX9 F-52A(OS version 12)
  • Xperia 5(OS version 11)
  • Xperia XZ3(OS version 10)

■ Android version in which this is occurring

  • 5~12

■ Playback Video Format

  • Widevine DASH (H.264)
Non-fatal Exception: com.google.android.exoplayer2.ExoPlaybackException: Unexpected runtime error
       at com.google.android.exoplayer2.ExoPlayerImpl.lambda$release$5(ExoPlayerImpl.java:821)
       at com.google.android.exoplayer2.ExoPlayerImpl.$r8$lambda$eZVQ1P4AuRBXX3IBVzj-JmjEs8k(ExoPlayerImpl.java)
       at com.google.android.exoplayer2.ExoPlayerImpl$$InternalSyntheticLambda$0$e7ffeb13e821a9282812e9e43e2c6aded7c5c995ebae952391211e5ffe9c50ca$0.invoke(ExoPlayerImpl.java:2)
       at com.google.android.exoplayer2.util.ListenerSet$ListenerHolder.invoke(ListenerSet.java:261)
       at com.google.android.exoplayer2.util.ListenerSet.lambda$queueEvent$0(ListenerSet.java:170)
       at com.google.android.exoplayer2.util.ListenerSet.$r8$lambda$NbKDn9xtItiyMgYZmjIx_Sv1FFQ(ListenerSet.java)
       at com.google.android.exoplayer2.util.ListenerSet$$InternalSyntheticLambda$0$4aa6d67c50ced20c53fd0cecd314136314e77eb5e787a34f9137864aa48c8e5a$0.run(ListenerSet.java:6)
       at com.google.android.exoplayer2.util.ListenerSet.flushEvents(ListenerSet.java:191)
       at com.google.android.exoplayer2.util.ListenerSet.sendEvent(ListenerSet.java:206)
       at com.google.android.exoplayer2.ExoPlayerImpl.release(ExoPlayerImpl.java:818)
       at com.google.android.exoplayer2.SimpleExoPlayer.release(SimpleExoPlayer.java:1320)
       at jp.a.c.w.PlayerFragment.onPause(PlayerFragment.kt:361)
       at androidx.fragment.app.Fragment.performPause(Fragment.java:3309)
       at androidx.fragment.app.FragmentStateManager.pause(FragmentStateManager.java:631)
       at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:293)
       at androidx.fragment.app.FragmentStore.moveToExpectedState(FragmentStore.java:113)
       at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1422)
       at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:2951)
       at androidx.fragment.app.FragmentManager.dispatchPause(FragmentManager.java:2887)
       at androidx.fragment.app.FragmentController.dispatchPause(FragmentController.java:296)
       at androidx.fragment.app.FragmentActivity.onPause(FragmentActivity.java:285)
       at android.app.Activity.performPause(Activity.java:7978)
       at android.app.Instrumentation.callActivityOnPause(Instrumentation.java:1508)
       at android.app.ActivityThread.performPauseActivityIfNeeded(ActivityThread.java:4505)
       at android.app.ActivityThread.performPauseActivity(ActivityThread.java:4466)
       at android.app.ActivityThread.handlePauseActivity(ActivityThread.java:4418)
       at android.app.servertransaction.PauseActivityItem.execute(PauseActivityItem.java:46)
       at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:176)
       at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:97)
       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2022)
       at android.os.Handler.dispatchMessage(Handler.java:107)
       at android.os.Looper.loop(Looper.java:359)
       at android.app.ActivityThread.main(ActivityThread.java:7418)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:935)
Caused by com.google.android.exoplayer2.ExoTimeoutException: Player release timed out.
       at com.google.android.exoplayer2.ExoPlayerImpl.lambda$release$5(ExoPlayerImpl.java:821)
       at com.google.android.exoplayer2.ExoPlayerImpl.$r8$lambda$eZVQ1P4AuRBXX3IBVzj-JmjEs8k(ExoPlayerImpl.java)
       at com.google.android.exoplayer2.ExoPlayerImpl$$InternalSyntheticLambda$0$e7ffeb13e821a9282812e9e43e2c6aded7c5c995ebae952391211e5ffe9c50ca$0.invoke(ExoPlayerImpl.java:2)
       at com.google.android.exoplayer2.util.ListenerSet$ListenerHolder.invoke(ListenerSet.java:261)
       at com.google.android.exoplayer2.util.ListenerSet.lambda$queueEvent$0(ListenerSet.java:170)
       at com.google.android.exoplayer2.util.ListenerSet.$r8$lambda$NbKDn9xtItiyMgYZmjIx_Sv1FFQ(ListenerSet.java)
       at com.google.android.exoplayer2.util.ListenerSet$$InternalSyntheticLambda$0$4aa6d67c50ced20c53fd0cecd314136314e77eb5e787a34f9137864aa48c8e5a$0.run(ListenerSet.java:6)
       at com.google.android.exoplayer2.util.ListenerSet.flushEvents(ListenerSet.java:191)
       at com.google.android.exoplayer2.util.ListenerSet.sendEvent(ListenerSet.java:206)
       at com.google.android.exoplayer2.ExoPlayerImpl.release(ExoPlayerImpl.java:818)
       at com.google.android.exoplayer2.SimpleExoPlayer.release(SimpleExoPlayer.java:1320)
       at jp.a.c.w.PlayerFragment.onPause(PlayerFragment.kt:361)
       at androidx.fragment.app.Fragment.performPause(Fragment.java:3309)
       at androidx.fragment.app.FragmentStateManager.pause(FragmentStateManager.java:631)
       at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:293)
       at androidx.fragment.app.FragmentStore.moveToExpectedState(FragmentStore.java:113)
       at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1422)
       at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:2951)
       at androidx.fragment.app.FragmentManager.dispatchPause(FragmentManager.java:2887)
       at androidx.fragment.app.FragmentController.dispatchPause(FragmentController.java:296)
       at androidx.fragment.app.FragmentActivity.onPause(FragmentActivity.java:285)
       at android.app.Activity.performPause(Activity.java:8057)
       at android.app.Instrumentation.callActivityOnPause(Instrumentation.java:1507)
       at android.app.ActivityThread.performPauseActivityIfNeeded(ActivityThread.java:4590)
       at android.app.ActivityThread.performPauseActivity(ActivityThread.java:4551)
       at android.app.ActivityThread.handlePauseActivity(ActivityThread.java:4503)
       at android.app.servertransaction.PauseActivityItem.execute(PauseActivityItem.java:46)
       at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:176)
       at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:97)
       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2039)
       at android.os.Handler.dispatchMessage(Handler.java:107)
       at android.os.Looper.loop(Looper.java:214)
       at android.app.ActivityThread.main(ActivityThread.java:7626)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:503)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:936)

crash

I have sent the media file URL and the license server URL to dev.exoplayer@gmail.com.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions