-
Notifications
You must be signed in to change notification settings - Fork 6k
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
Is there a trick to speeding up buffering? #3651
Comments
They are probably seeking to the nearest keyframe, rather than the nearest frame (i.e. less accurate, but faster).
Work is actively underway to support keyframe accurate seeking in ExoPlayer, and is already functional in the |
The issue
When the playback begins or when you seek to a position, there's a very noticeable lag of a few hundreds of milliseconds. After jumping through several stack overflow questions and github issues and blog posts and what not, apparently this is because ExoPlayer (or rather any video player) needs to build the seeked frame from the previous key frame.
My question is, how do popular video players such as MX player have near instant playback on startup and on random seeks? What are they doing better than ExoPlayer? Is there a way to make ExoPlayer buffer faster?
This isn't a specific issue with some particular version or input file or codec or device, but exoplayer's performance on the whole seems a bit slower than the competition.
How to reproduce
Open a video in any popular android video players, e.g: MX Player, VLC etc. Now open the same file in a boilerplate surface (or
SimpleExoPlayerView
) backed by exoplayer. The buffering, controls, seek etc. nearly all operations are significantly slower than the "competition".The text was updated successfully, but these errors were encountered: