Added the ability to limit video quality if using mobile data.

* Added a dropdown to video & audio settings
* Changes to ListHelper:
** Limits resolution when code requests the default video resolution
** Limits audio bitrate when code requests the default audio bitrate
** Removed some dead code and did some cleanup
** Make methods private/protected to help understand what was in use
** The code now chooses one format over an other using a simple raking system defined in array constants. I realized I needed to do this in order to choose the most efficient video stream. I did my best to evaluate the video and audio formats based on quality and efficiency. It's not an exact science.
** Made changes to the tests to support my changes
This commit is contained in:
James Straub 2018-04-21 12:35:04 -04:00
parent 7d427b4cc4
commit d1b0cd74be
7 changed files with 432 additions and 119 deletions

View file

@ -66,6 +66,8 @@
<string name="default_video_format_title">Default video format</string>
<string name="webm_description">WebM — free format</string>
<string name="m4a_description">M4A — better quality</string>
<string name="limit_data_usage_none_description">No limit</string>
<string name="limit_mobile_data_usage_title">Limit resolution when using mobile data</string>
<string name="theme_title">Theme</string>
<string name="light_theme_title">Light</string>
<string name="dark_theme_title">Dark</string>