Comments (1)
The current default behavior retries a few times, which generally works to cover any temporary network issues where the connection is restored quickly. The retry behavior (number of retries, delays etc) can also be configured via LoadErrorHandlingPolicy
. There is an old medium post about this class with some examples and the case labeled "Do not surface load errors due to lack of network connectivity" could be interesting if you want to continuously retry until the connection is back. Alternatively, you could just let the player fail and re-prepare the playback once the connection is back as you already outlined above.
The reason we don't add this logic internally is that most apps wouldn't expect playback to continue if the network is lost for a long period of time. This may be really unexpected to the user if the network loss happened multiple minutes ago for example.
from media.
Related Issues (20)
- Support error & loading progress feedback to browser clients via MediaLibraryService HOT 2
- Play pause problem HOT 1
- Compile error with `The following Android dependencies are set to compileOnly which is not supported com.google.j2objc:j2objc-annotations:2.8` HOT 1
- Sometime I am getting error from exoplayer "Invalidate date format" HOT 1
- Offline download fails after started with HttpDataSourceException HOT 2
- "Usage not a subset." error log spammed 20 times per second. Only happens on certain device. HOT 3
- DashManifest playback results in IndexOutOfBoundsException
- How to calculate buffer ratio/ time for analytics purposes HOT 3
- Quality of PNG images is lost in a video created with Media3 Transformer and colors are darker HOT 7
- Issues with BT and FFMpeg extension HOT 5
- NullPointerException when setting mediaItem HOT 5
- IMA Extension fails to report post-prepared errors to the `VideoAdPlayer.VideoAdPlayerCallback.onError()` HOT 4
- Type androidx.media3.extractor.AacUtil$1 is defined multiple times HOT 2
- How to run an ExoPlayer custom PlayerView on a background thread? HOT 5
- Player.Listener event combinations data gaps HOT 1
- PlayerView inside of LazyList throws exception "ExoTimeoutException: Detaching surface timed out."
- How to set setOngoing for the built in notification when using MediaSessionService HOT 3
- How to handle ForegroundServiceStartNotAllowedException while retrying playback after a network timeout error HOT 2
- Standard Volume Sound on Stream/Channel Change especially on demo APP in Java HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from media.