Skip to content
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

Closed
Aditya94A opened this issue Dec 30, 2017 · 1 comment
Closed

Is there a trick to speeding up buffering? #3651

Aditya94A opened this issue Dec 30, 2017 · 1 comment

Comments

@Aditya94A
Copy link
Contributor

Aditya94A commented Dec 30, 2017

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".

@ojw28 ojw28 added the question label Jan 2, 2018
@ojw28
Copy link
Contributor

ojw28 commented Jan 2, 2018

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?

They are probably seeking to the nearest keyframe, rather than the nearest frame (i.e. less accurate, but faster).

Is there a way to make ExoPlayer buffer faster?

Work is actively underway to support keyframe accurate seeking in ExoPlayer, and is already functional in the dev-v2 branch when playing regular progressive media files. This work is being tracked in #2882, so closing this as a duplicate.

@ojw28 ojw28 closed this as completed Jan 2, 2018
@ojw28 ojw28 added the duplicate label Jan 2, 2018
@google google locked and limited conversation to collaborators May 9, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

2 participants