https://github.com/Sriharia/ExoPlayer-StatsForNerds
Demo app to showcase ExoPlayer customisations like Stats-For-Nerds & Improved buffering.
https://github.com/Sriharia/ExoPlayer-StatsForNerds
android drip-feeding exoplayer exoplayer-demo improved-buffering max-buffer mpandroidchart stats stats-for-nerds
Last synced: 3 months ago
JSON representation
Demo app to showcase ExoPlayer customisations like Stats-For-Nerds & Improved buffering.
- Host: GitHub
- URL: https://github.com/Sriharia/ExoPlayer-StatsForNerds
- Owner: Sriharia
- License: mit
- Created: 2017-06-27T05:41:56.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2017-11-07T18:06:52.000Z (almost 8 years ago)
- Last Synced: 2024-08-07T23:41:18.896Z (about 1 year ago)
- Topics: android, drip-feeding, exoplayer, exoplayer-demo, improved-buffering, max-buffer, mpandroidchart, stats, stats-for-nerds
- Size: 289 KB
- Stars: 26
- Watchers: 3
- Forks: 22
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Demo app to showcase Google ExoPlayer customisations like player stats extractions, Improved buffering.
More information on ExoPlayer documentation can be found [here][]
[here]: http://google.github.io/ExoPlayer/
### Developed by
[Srihari Yachamaneni](https://github.com/Sriharia) ([@srihari_y](https://twitter.com/srihari_y))# Features #
## Stats for Nerds ##
This demo app depicts ExoPlayer internal stats in dynamic charts using [MPAndroidChart][] library.
These stats include:
- Connection Speed
- Buffer Size in Seconds
- Network Activity
- Dropped Frames

This is achieved by injecting a listener to a [Customised][] version of [LoadControl][] component of ExoPlayer
[MPAndroidChart]: https://github.com/PhilJay/MPAndroidChart
[Customised]:
https://github.com/Sriharia/ExoPlayer-StatsForNerds/blob/master/demo/src/main/java/com/google/android/exoplayer2/demo/CustomLoadControl.java
[LoadControl]: https://github.com/google/ExoPlayer/blob/d979469659861f7fe1d39d153b90bdff1ab479cc/library/core/src/main/java/com/google/android/exoplayer2/DefaultLoadControl.java
## Improved Buffering ##
This demo also helps you to find a way to change max buffer time by applying "drip-feeding" method.
This is achieved by changing certain parameters in custom LoadControl component of ExoPlayer
Check [CustomLoadControl][] class for more info on how buffer improvements are handled.
[CustomLoadControl]: https://github.com/Sriharia/ExoPlayer-StatsForNerds/blob/master/demo/src/main/java/com/google/android/exoplayer2/demo/CustomLoadControl.java