I have some HLS videos that are encrypted with a key for streaming playback in my app. So far, my testing indicates that they work on device all the way through, but only in the simulator up to iOS 14.5. In iOS 15 simulators, I get a crash that appears to be within private APIs with this copied from the stack:
#0 0x0000000110584e8c in segPumpRequestCustomURLForCryptKey ()
Is anyone else getting this crash?
It appears to be centered around the usage of a custom scheme in the HLS m3u8 file link to the encryption key: if I use
http(s)
to link the encryption key, it works fine. If I use something custom likefakey
, it never even makes it to the delegate method forAVAssetResourceLoaderDelegate
calledresourceLoader(_ resourceLoader: AVAssetResourceLoader, shouldWaitForLoadingOfRequestedResource loadingRequest: AVAssetResourceLoadingRequest)
where I'd swap out the scheme for a real one, because it crashes first. So far, I can only replicate this on the iOS 15 simulator.I've opened a feedback: FB9764319
I've been seeing this crash as well. That is, attempting to using a custom url scheme to retrieve an HLS key results in crash on simulator. iOS device appears to run fine, however.