Description
Version
Media3 main branch
More version details
main branch at commit 66ef013
Devices that reproduce the issue
Pixel 7a Android 14 QPR3
API 35 emulator
Devices that do not reproduce the issue
N/A
Reproducible in the demo app?
Yes
Reproduction steps
- add https://temp.nift4.org/testfile.flac to demo app
- build demo app without extensions (did not test with extensions)
- try to play the file
This progressive media file is intended to be played from disk, and I have tested in my own app that playback fails with the same error when playing from file:// URI.
Expected result
The media file plays successfully.
This expected result can be achieved by using platform MediaPlayer, for example Google Play Music (the newest version without the deprecation timebomb 8.22.8261-1.P) and "Tiny Music Player" plays the file just fine. Additionally, ffplay https://temp.nift4.org/testfile.flac
on my computer can play the file successfully.
Actual result
Spamming a warning for around 4 seconds and then failing with stack trace:
2025-02-27 23:51:56.529 5527-5736 DefaultLoadControl androidx.media3.demo.main W Target buffer size reached with less than 500ms of buffered media data.
2025-02-27 23:51:56.541 5527-5736 DefaultLoadControl androidx.media3.demo.main W Target buffer size reached with less than 500ms of buffered media data.
2025-02-27 23:51:56.552 5527-5736 DefaultLoadControl androidx.media3.demo.main W Target buffer size reached with less than 500ms of buffered media data.
2025-02-27 23:51:56.564 5527-5736 DefaultLoadControl androidx.media3.demo.main W Target buffer size reached with less than 500ms of buffered media data.
2025-02-27 23:51:56.574 5527-5736 DefaultLoadControl androidx.media3.demo.main W Target buffer size reached with less than 500ms of buffered media data.
2025-02-27 23:51:56.576 5527-5736 ExoPlayerImplInternal androidx.media3.demo.main E Playback error
androidx.media3.exoplayer.ExoPlaybackException: Unexpected runtime error
at androidx.media3.exoplayer.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:849)
at android.os.Handler.dispatchMessage(Handler.java:103)
at android.os.Looper.loopOnce(Looper.java:232)
at android.os.Looper.loop(Looper.java:317)
at android.os.HandlerThread.run(HandlerThread.java:85)
Caused by: java.lang.IllegalStateException: Playback stuck buffering and not loading
at androidx.media3.exoplayer.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:1412)
at androidx.media3.exoplayer.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:646)
at android.os.Handler.dispatchMessage(Handler.java:103)
at android.os.Looper.loopOnce(Looper.java:232)
at android.os.Looper.loop(Looper.java:317)
at android.os.HandlerThread.run(HandlerThread.java:85)
Bug report ZIP (I will NOT email it, because I'll upload it here instead to prevent confusion - it's from an emulator so it does not contain any privacy sensitive data):
bugreport-sdk_gphone64_arm64-AE3A.240806.043-2025-02-27-23-53-26.zip
Media
https://temp.nift4.org/testfile.flac
Bug Report
- You will email the zip file produced by
adb bugreport
to [email protected] after filing this issue.