-
Notifications
You must be signed in to change notification settings - Fork 28.5k
The video player value.isBuffering
always return true after seekTo
any position
#165149
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Reproducible using the code sample provided above. This appears to work fine on iOS but not on android. See the recordings below Notice that on android, once the skip button is tapped, the buffering never stops. Tested with
flutter doctor -v
|
This comment has been minimized.
This comment has been minimized.
We recently had to disable a test in flutter/packages CI because of this; the test was waiting for buffering to report stopped, and never was. This was an out-of-band failure whose cause we were not able to determine. Our only guess was that this changed in ExoPlayer, but we couldn't see any obvious reason that the ExoPlayer version would have changed out of band (since Gradle deps don't automatically pull the latest, unlike unpinned pub deps). |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
If you want to temporarily solve this problem, you can compare the current playback position with the buffer position to determine whether it is in the buffer. controller.addListener(() {
final value = controller.value;
final buffer = value.buffered.lastOrNull?.end.inMilliseconds;
final position = value.position.inMilliseconds;
bool buffering = position == buffer;
}); |
@wenwangwill Thanks for the workaround. This indeed works, however if seekTo a previous position while having the video paused, this might give a |
I still hope it can be solved as soon as possible, this problem is quite serious |
this is a realy serious issues, and really feels worse on live stream where you wont want to track seek position . |
void _updateState() {
} . this walk around helps a little tho but did not fully meet my requirement . |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
1 similar comment
This comment has been minimized.
This comment has been minimized.
Limit video_player_android to version 2.7.17, do not upgrade! |
I also have this issue with video_player_android 2.8.2 |
Until they fixed it we can use above workaround |
Steps to reproduce
Start the video and seekTo any position
Expected results
isBuffering
should return false after bufferingActual results
isBuffering
remainstrue
for the entire duration of the video and the video continues to playCode sample
Code sample
Screenshots or Video
Screenshots / Video demonstration
[Upload media here]
Logs
Logs
[Paste your logs here]
Flutter Doctor output
Doctor output
The text was updated successfully, but these errors were encountered: