I'm able to download an HLS video using this:
When I change to airplane mode, and play back the video, it works if I use the samples provided by the HLSCatalog sample app. They are:
https://devstreaming-cdn.apple.com/videos/streaming/examples/bipbop_4x3/bipbop_4x3_variant.m3u8
https://devstreaming-cdn.apple.com/videos/streaming/examples/img_bipbop_adv_example_ts/master.m3u8
Both of those manifest files point to segments that are stored in a path relative to manifest file. For example, the 1st one is....
#EXTM3U #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=232370,CODECS="mp4a.40.2, avc1.4d4015" gear1/prog_index.m3u8 #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=649879,CODECS="mp4a.40.2, avc1.4d401e" gear2/prog_index.m3u8 #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=991714,CODECS="mp4a.40.2, avc1.4d401e" gear3/prog_index.m3u8 #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1927833,CODECS="mp4a.40.2, avc1.4d401f" gear4/prog_index.m3u8 #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=41457,CODECS="mp4a.40.2" gear0/prog_index.m3u8
and you can see it referencing other manifest files on the same server using a local path, such as: "gear3/prog_index.m3u8"
My problem is that the manifest files for my company have remote and different server URLs for all the files referenced in it. For example, my manfest might be: http://myremoteserver.com/myManifest.m3u8
and it it, it'll reference files at: http://myvideoserver.com/video.m3u8
As a result, my videos do download, but they do NOT play when I change to airplane mode.
Any help would be appreciated. Thanks!