/MPEGDASHAVPlayerDemo

AVPlayer demo to play MPEG-DASH

Primary LanguageSwift

MPEGDASHAVPlayerDemo

This demo project is inspired by DASH-to-HLS-Playback project. It converts DASH's MPD manifests to HLS's M3U8 manifests. It works by extracting information from MPD files, creating M3U8 master playlist and media playlists, finally plays out with AVPlayer.

It is written with Swift.

Getting Worked

Run pod install and open the xcworkspace file that is created.

Technical Overview

It is using AVAssetResourceLoaderDelegate to modify the behavior when AVPlayer load the HLS playlists. Apple sample code is available here. I also created the demo project that simply manipulates the master and media playlists AVPlayer loading.

Notes

  • If loading MPD from URL, media segments must locate at the same address of the given MPD file.
  • It only supports MPD file with one period. If several periods in the MPD, it only works on the first period.
  • It only supports VOD. (I will work on Live soon!)