forked from androidx/media
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add debug info to help debugging a pipeline stall issue (#23)
We have an issue in production where the player starts to flip between buffering and playing at a very high frequency (dozens of times per seconds). Looking at multiple logs and NR data, I was able to get a partial understanding of what is going on: - The rendering stalls early into the playback (often after 3 queued video frames, possibly always after 3, hard to tell) - The player doesn't know something is stalled - The playhead is moving, but the video frames are not queued - At some point, the video streaming buffer is completely filled up - The playhead gets to the end of the full video buffer - Then the flip begins (after about 3 mins) - The player switches to BUFFERING, since it thinks it needs more data (according to the playhead) - The buffering system switches back to PLAYING, since the buffer is full (it hasn't been consumed at all) This PR has 2 goals: - Giving us a way to detect the pipeline is stalled, by giving visibility to the actual current queued video buffer count - Getting us some data on what is causing the stall, by keeping the steps where the input and output buffer processing is stopped, for both the audio and video renderer. This will then be exposed by the app when the stall is detected. This is intended to be temporary. We should get rid of all that stuff once the issue is resolved, which might require different/additional logs once we have some data from the ones in this PR.
- Loading branch information
1 parent
1ee3d31
commit ffee4bf
Showing
3 changed files
with
50 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters