Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to MPEG-DASH video streaming in iOS?

I am trying to write a JavaScript-based implementation of MPEG-DASH for video streaming. I have referenced the following documents:

  • dash.js - https://github.com/Dash-Industry-Forum/dash.js/wiki
  • Google Shaka Player - https://github.com/google/shaka-player

These libraries are using MSE (Media Source Extensions).

My understanding

MPEG-DASH is an international standard for streaming video, but it is currently not natively supported in iOS devices. In other browsers and devices, it requires a JavaScript library or a video player that supports MPEG-DASH (eg: Dash.Js, Shaka player).

And another streaming technology is HLS. It is an adaptive streaming communications protocol created by Apple. The Safari browser can play HLS streams within a web page, iPhone, and iPod touch devices.

Here, we can see that MPEG-DASH (because of MSE) is currently not natively supported in iOS devices.

Now, my doubts:

  1. How can we stream MPEG-DASH videos in iOS without MSE?
  2. How Facebook and other streaming media services play their videos? is it with HLS only ?

Any suggestion/explanations would be more than helpful!

like image 307
user2986042 Avatar asked Jan 19 '18 13:01

user2986042


1 Answers

You can setup proxy server on a device and then create a parser that will be translating mpd files into m3u8 and serve m3u8 for AVPlayer. For ios proxy GCD should do the trick: GCDWebServer

like image 95
kuvukala Avatar answered Sep 18 '22 19:09

kuvukala