19 Replies
      Latest reply: Aug 29, 2017 1:18 AM by JuanTWCAPPS RSS
      sdillon Level 1 Level 1 (0 points)

        We were very excited to learn about FairPlay Streaming being made available.  We currently use Google's Widevine DRM for our iOS application video content protection, and a native FairPlay solution is very attractive.  However, we have a basic requirement to support offline playback.  It seems reasonable to assume FairPlay can handle this, since of course you can purchase or rent a movie on iTunes and play it while offline.  Will offline playback functionality be made available to developers, or only streaming playback?  If offline playback is not technically supported, is there a way to fake it by running a local http server to serve the HLS components and handling the FairPlay license requests in your own delegate?

        • Re: offline FairPlay?
          tom_frog Level 1 Level 1 (0 points)

          I second the question - in particular, is storing keys for offline use the thing that

           

          - (NSData *)persistentContentKeyFromKeyVendorResponse:(NSData *)keyVendorResponse options:(nullable NSDictionary<NSString *, id> *)options error:(NSError **)outError NS_AVAILABLE_IOS(9_0);
          
          

          is supposed to be used for?

          • Re: offline FairPlay?
            srk Apple Staff Apple Staff (195 points)

            We are interested in understanding your requirements for offline playback. Please submit your requirements via the Apple Bug Reporter (<https://developer.apple.com/bug-reporting/>) or post a comment with your requirements on these forums.

              • Re: offline FairPlay?
                tom_frog Level 1 Level 1 (0 points)

                The original poster may have different requirements, but some of our customers are in places where cellular networks are expensive or unreliable, and need to be able to let a customer download all chunks of a chosen variant, acquire a license, and then play back at a later date.  Example might be a wifi kiosk where the user can purchase and download for later consumption. We're currently using Playready DRM for this usecase.

                • Re: offline FairPlay?
                  sdillon Level 1 Level 1 (0 points)

                  I have submitted a bug report, #21602129.

                   

                  We have developed an application that allows public library patrons to borrow video, music, audiobook, ebook, and comic content using their iOS device from their local public library.  My question only concerns video, music, and audiobook content for which FairPlay is suitable; we have our own solution for protecting ebook and comic content.  Our application requirements are that content be available immediately via streaming, or for offline playback later after being downloaded locally to the device.  There are many reasons for this requirement, but suffice to say it is a distinguishing characteristic of our platform.  Of course, our content providers require that we use an accepted DRM to protect their content.  We are currently using Widevine DRM to protect video content since it supports both streaming and offline playback.  We would be very interested in using FairPlay DRM instead, but that's only feasible if FairPlay works with local content, not just streamed content.

                    • Re: offline FairPlay?
                      sdillon Level 1 Level 1 (0 points)

                      Some of those reason are exactly what tom_frog mentioned - the ability to download a higher quality version of the content than would be possible to stream given a user's poor connectivity, or the ability to view the content while offline such as on an airplane or train, or having the kids in the back seat be able to watch a movie or listen to an audiobook during a road trip.

                    • Re: offline FairPlay?
                      sdillon Level 1 Level 1 (0 points)

                      So... I submitted a bug report as requested, and also outlined my requirements in a reply.  Over a month later and *crickets* no reply whatsoever.  C'mon, Apple, I'm on your side.  I would have really appreciated an answer.  You do realize that your inability to respond to developers such as myself forces us to consider other solutions, don't you?  In my case, we're now looking at DASH with PlayReady or Widevine, because to put it bluntly, we can't wait for Apple to provide us quality information with which to make decisions. 

                      • Re: offline FairPlay?
                        sdillon Level 1 Level 1 (0 points)

                        Still no reply yet?  Seriously?

                         

                        I'm hoping this reply prompts somebody at Apple to respond to my original question.  I think it's clear there are a number of us interested in FairPlay, but we need better responsiveness from the vendor (that's you, Apple) before we can seriously consider it.  That, and we need to be able to supported offline playback like we can with our existing solutions (PlayReady, Widevine).  We know Apple supports offline playback with their products.  So are you, or aren't you, going to make offline playback available to developers?  Or is it possible now with some clever local caching?

                          • Re: offline FairPlay?
                            TidBits Apple Staff Apple Staff (1,605 points)

                            We appreciate you filing the radar, and assure you that it has reached the right teams.

                             

                            We do not currently support offline playback of FairPlay with the available SDK. I cannot speak to if/when this might change, but your feedback that you would like to see this is greatly appreciated.

                              • Re: offline FairPlay?
                                zshenker Level 1 Level 1 (0 points)

                                Is there any further information on support for offline FairPlay playback, particularly with iOS 9?

                                 

                                Could the Video Rental support in iOS 9 be used to acquire a CKC(and store it on the device) with an expiration period in future(say a number of days), and then re-use the CKC while offline to re-start playback at a later time(while before the expiration set in the CKC)?

                          • Re: offline FairPlay?
                            robwalch Level 1 Level 1 (10 points)

                            The answer to this was just covered in today's talk "Whats New in HTTP Live Streaming" at WWDC16 https://developer.apple.com/videos/play/wwdc2016/504/

                            • Re: offline FairPlay?
                              solidwrist Level 1 Level 1 (0 points)

                              +1

                              • Re: offline FairPlay?
                                JuanTWCAPPS Level 1 Level 1 (0 points)

                                The replies here are very good, but when i look at the documentation the classes involved seem to be only for iOS. Is HLS Offline playback supported for MacOS?

                                 

                                Thanks.

                                  • Re: offline FairPlay?
                                    TidBits Apple Staff Apple Staff (1,605 points)

                                    Offline HLS is only supported on iOS at this time. Please do file an enhancement request at bugreporter.apple.com if you have use cases for macOS as well, including some details of the use case.

                                      • Re: offline FairPlay?
                                        JuanTWCAPPS Level 1 Level 1 (0 points)

                                        Tidbits,


                                        Thank yo so much for your reply. The information is clear and prompt and helps us make a desicion.


                                        As a feedback to you, let me express the dissapointment that we feel with this seemingly arbitrary limitation.


                                        I'm gonna use the word "ridicoulous" in the most polite and positive way possible to describe how we feel that after an extensive technical study, it would seem the only way for a developer to play Fairplay HLS content in offline mode in the Mac laptop/desktop computer, does NOT come from Apple but instead from a third party like the Electron Platform in combination with the Shakka Player (all Google).


                                        We are not in liberty to discuss use cases with Apple, and therefore there won't be an enhancement request filed, but just know that there are compelling business reasons why our client wants this feature and now we have to turn away from the Apple ecosystem to fulfill them. As someone who depply admires and appreciate the platforms Apple develops,  it's a real shame to have to advice using Javascript/Chromium based solutions when we would have loved to use Swift, XCode, Founfation and the rest.


                                        Thanks again.