SurfaceView.updateSurface causes the thread check to fail if the ExoPlayer instance is managed from a thread other than main
- Dominant language
- Java
- Stars
- 21.9k
- Forks
- 6k
- PR merge metrics
- No merged PRs in 30d
Description
### ExoPlayer Version
2.14.2
### Devices that reproduce the issue
All.
### Devices that do not reproduce the issue
None.
### Reproducible in the demo app?
No
### Reproduction steps
1. Checkout MWE [here](https://github.com/stoyicker/mwe-exoplayer-surfaceviewwrongthread/tree/1ef3c119bf460485c3b2e884157c21d240e7a476).
2. Run the app.
### Expected result
The video plays successfully.
### Actual result
The video visuals fail to render. See longs for "wrong thread" issue and how it traces to SurfaceView.
Note that it seems to be a slightly different form https://github.com/google/ExoPlayer/issues/9005
It is a strong requirement for me to use a custom thread as it has to use a specific ThreadGroup and be confined to certain parts of the codebase.
I've opened it as a bug, but I'm not even sure it is - is there an intended way to work with this? If so, what is it?
### Media
https://commondatastorage.googleapis.com/gtv-videos-bucket/sample/BigBuckBunny.mp4
### Bug Report
- [X] You will email the zip file produced by `adb bugreport` to dev.exoplayer@gmail.com after filing this issue.
Contributor guide
Assessment
This issue has not been assessed yet.