Noting that most player still use the video tag under the hood, but a lot of functionality has been pushed to the Media Extensions layer for different formats of video.
Using HLS with HLS.js or Dash with Dash.js is the "Simple" way of adding adaptive bitrate support to HTML5 Video tag for better performance. After that its your video delivery pipeline.
Can you elaborate on this? I use <video> to debug HLS issues all the time. Is there something specific that straight-up video tag won't do?
If there are edge cases I'm sure I haven't seen them, because personally I'm only ever using HTML as basically a control group when reproducing bug reports from native video player stuff.
HLS Isn’t supported natively in a lot of browsers. Chrome doesn’t. It’s pretty easy to shim with Media Extensions so it’s fine to use but just sticking it as a src property in a lot of browsers it won’t work.
Personally I think that the Media Extensions API is going to be the primary mechanism for adding new codecs and transports moving forward as opposed to having the browsers need to implement all the options.