Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Optimize streaming for html5 video player

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:

  1. Use white label Vimeo player,
  2. Continue using html5 player with vimeo url (I don't know if that will help)
  3. 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.
  4. Use an implementation of MPEG/DASH

What would be the best solution?

like image 949
Shlomo Meyer Avatar asked Feb 03 '26 14:02

Shlomo Meyer


1 Answers

It sound like you need to use a video streaming server - unless you have a lot of development bandwidth it would probably make sense to leverage a specialist streaming server.

Some examples include:

  • wowza https://www.wowza.com (paid)
  • gstreamwer https://gstreamer.freedesktop.org (freeware)

For more background on ABR, look here: https://stackoverflow.com/a/42365034/334402

like image 189
Mick Avatar answered Feb 06 '26 14:02

Mick