HLS Stream Master Playlist Unavailable on iPhone

I am facing an issue with video content that I have converted to HLS playlist content (using ffmpeg) added to an S3 bucket that is shared through a Cloudfront Distribution. My scenario is the following:

I have a bucket called bucket-a, with a "folder" video-1 which contains the following files:

  • output.m3u8
  • output0.ts
  • ...
  • output15.ts
  • audio/
  • audio.aac
  • image.jpg

All items in bucket-a are blocked from public access through S3. Content is only vended through a Cloudfront distribution which has origin bucket-a. I am able to access https://<distro>.cloudfront.net/path/output.m3u8 on a desktop browser without fail, and no errors thrown. But the file output.m3u8 and all .ts files are not available on iPhone mobile browsers. The part that is peculiar is that this is not true for all playlist content in bucket-a. For example, I have a "folder" video-2 within bucket-a that has the same file structure as video-1 that is completely accessible through all mobile browsers.

Here is an example master playlist error: https://dbs3s11vyxuw0.cloudfront.net/bottle-promo/script_four/output.m3u8

Even more head-scratching is that I am able to access all the playlists that are within this playlist.

What I've tried:

Initially, I believed the issue to be due to the way the video was transcoding so I standardized the video transcoding. Then I believed the issue to be due to CloudFront permissions, though those seem to be fine. I've validated my stream here: https://ott.dolby.com/OnDelKits_dev/StreamValidator/Start_Here.html

Not sure which way to turn.

Accepted Reply

Your master playlist (in the example above) contains an EXT-X-PLAYLIST-TYPE tag. That is illegal in a multivariant playlist.

The Dolby stream validator does not adequately check HLS playlists.

You should be using the mediastreamvalidator tool. (See "Streaming Tools" on this page - https://developer.apple.com/streaming/)

  • Yes thank you, received that output from mediastreamvalidator. Removing this was able to fix the issue!

Add a Comment

Replies

Your master playlist (in the example above) contains an EXT-X-PLAYLIST-TYPE tag. That is illegal in a multivariant playlist.

The Dolby stream validator does not adequately check HLS playlists.

You should be using the mediastreamvalidator tool. (See "Streaming Tools" on this page - https://developer.apple.com/streaming/)

  • Yes thank you, received that output from mediastreamvalidator. Removing this was able to fix the issue!

Add a Comment