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
player.getCurrentLiveOffset() keep changing #10170
Comments
I'm using The initial values show a values that is the correct one or almos (+- a few ms), but the value doesn't stays constant it keeps changing for a log time, it 5min of playback the value will change 3 to 5 seconds, but this is a live stream that is playing just fine no rebuffer no slows down notting. I did some check on how the Yes I know this is a live stream and the value of The value of Another test that I did was using I tested this on the dev branch when the head was https://github.com/google/ExoPlayer/commits/bd52b19a851cc215b2abfcfd6339bbddad6325a5 I also tested when the head was https://github.com/google/ExoPlayer/commits/bf462aca69dbd4760c39ca2910188d91610f3a16 on both cases the issues is there, I don't know when this was introduce, but I do remember not having this problem |
I made a video do demonstrate the issue https://www.youtube.com/watch?v=3yXGcv8Rjkw Latency to broadcaster on top right is
There is an Exoplayer functionality that changes the playback speed, for some reason without user interaction? Because from what I see there the latency is been lowered 0.02s to 0.03s it second of playback for no reason. Making one believed that the playback speed isn’t 1X, but 1.03X or close to it. Second test same video
Here for some reason using |
Are you playing low latency live streams? If so, this is expected:
https://exoplayer.dev/live-streaming.html#customizing-the-playback-speed-adjustment-algorithm This used to be done for all live streams, but since b09b8dc (included in 2.17.0) it's only applied to low latency live streams (I'll re-word the live-streaming.html page to make this distinction more clear). |
From lower down that page:
|
I expected that the default would always be 1.0x Speed, most important it be 1.0 right after I manually set the speed. No this is just a regular live stream, but maybe I'm wrong How Exo determinates if it is a low latency stream? I will set the default speed I never did, as I expected the default be 1.0, and I don’t know the behavior of it after the user changes the speed manually, I’ll check all that and report. |
Setting .setLivePlaybackSpeedControl(
new DefaultLivePlaybackSpeedControl.Builder()
.setFallbackMaxPlaybackSpeed(1.0f)
.build()) Fix the issue. Thanks. |
Another test was done and I have a doubt. When the internet connection speed is very close to the stream minimum necessary bandwidth, the player will show down the playback until the latency is 30s. Is this expected behavior? Even with |
You've only set a max speed and not a min speed, so it seems expected that the player will still slow down. From the linked guide:
Note that you don't need to set the
Customizing the |
Sory a little busy didn't not get that there was two speed option, will set both. thanks |
Maybe It's too late to answer this question, but I think these lines are logic of determination (In case of HLS).
Media Playlist has https://datatracker.ietf.org/doc/html/draft-pantos-hls-rfc8216bis#section-4.4.3.8 |
Closing because I think the question has been answered, and I've updated the live streaming docs page to try and make this behaviour more clear (this will go live with the next library release). |
Thanks all for the help! |
ExoPlayer Version
2.17.0
Devices that reproduce the issue
Any device tested has this issues
Devices that do not reproduce the issue
No response
Reproducible in the demo app?
Not tested
Reproduction steps
Play a live stream and check the value of player.getCurrentLiveOffset() changing
Expected result
the value not chaging
Actual result
the value changes
Media
Any live streams seems to cause this issue
Bug Report
adb bugreport
to dev.exoplayer@gmail.com after filing this issue.The text was updated successfully, but these errors were encountered: