Search code examples
ioshtmlfacebookvideo-streamingmpeg-dash

How facebook stream MPEG-DASH Videos in iOS browsers?


I am studying some of the concepts of MPEG-DASH and it's features. I have researched about adaptive streaming technology . Now i am trying to stream MPEG-DASH videos in browser for live telecasting and on demand videos .

I have gone thorough some of the open source libraries . I can able to work DASH on latest browsers which are supporting Media Source Extension (MSE) .But i couldn't able to work on iOS devices and it's not supporting MSE .

So i want to know how can i work DASH videos in iOS browser and how Facebook and other services streaming their videos in iOS browsers?

  1. Is Facebook/other services supporting DASH videos in iOs ?
  2. How Facebook/other services streaming videos in iOS?
  3. Is Facebook using HLS in iOS for streaming ? if it is, How they convert DASH to HLS (if they stream DASH videos) ?
  4. They trying to check Operating system (OS) first and it will select HLS/DASH with respect to that OS . Is it like they are doing ?

Detailed explanation would be more helpful .


Solution

  • Safari (the browser) on iOS does not support media source extensions. Anyone doing adaptive streaming on that platform is using the native HLS implementation in Safari.

    <video src="http://example.com/manifest.m3u8"></video>

    Both DASH and HLS are just text-based manifests pointing to video files, so you wouldn't convert a DASH file to an HLS file, you would generate them independently. Now that iPhones are support fragmented MP4s you can use the same video files for both DASH and HLS, whereas before you needed different files for each.