We are using video.js (an html5 media player) to play our videos. The video files are stored on AWS s3 and we are streaming them with the html5 native streaming for tags.
Our goal is to get the highest quality video that the user's device, browser and internet speed can handle.
It seems to me that we need to break the media into different formats and then download the correct media based on the user. Also, I don't know if this is necessary but maybe we need to use adaptive bit streaming like MPEG-DASH to stream the video in segments and optimize each segment based on network conditions.
Possible solutions:
- Use white label Vimeo player,
- Continue using html5 player with vimeo url (I don't know if that will help)
- Use Amazon Elastic Transcoder to break down the video into different formats and then some other service to optimize and dowload the right format for the user.
- Use an implementation of MPEG/DASH
What would be the best solution?