I've recently added in the ability to allow for offline playback of my Fairplay enabled videos.
It works great. I can view my offline video on my iPhone just fine. I'm persisting my content key locally, and am able to use it to playback my video.
If I *don't* download my video - just stream it normally, I can play that video on my AppleTV with Airplay. All good.
Where this breaks is when I'm trying to play back Offline FPS content using Airplay. It plays just fine on my phone, but as soon as I turn on Airplay, playback stops immediately.
My AVAssetResourceLoaderDelegate gets called, and I can see that I'm returing the same data (my persisted content-key data stored on my phone), the same as I do when I'm just playing the video on my phone. But playback halts.
So, in short, I can do this:
- Airplay streamed FPS content to AppleTV
- Download that same FPS content and watch it on my phone. - by persisting content-key data about that video.
But I can't
- Airplay my downloaded, offline, FPS content. That immediately fails.