There isn't a single silver bullet, if you want to give the users the best possible quality while also providing best experience you have to provide different quality sources and have a player that selects the best source based on the user speed as well as allow users to choose what quality they want.
If you have let's say 240p, 480p, 720p and 1080p sources for each video you will be quite well covered
|