Skip to content

Digital rights management support

Compare
Choose a tag to compare
@defagos defagos released this 11 Sep 09:00
· 985 commits to master since this release

This release mostly updates the SRGAnalytics_DataProvider.framework companion library for digital rights management support (DRM):

  • Playback methods from the SRGMediaPlayerController (SRGAnalytics_DataProvider) category have changed:
    • They now require a new DRM boolean parameter, specifying whether DRM should be used when available (otherwise default resource lookup will be performed based on the resource order).
    • An optional position to start at can be provided.
    • Methods do not return an SRGRequest anymore, merely a boolean. Resume parameters and completion handlers have been dropped accordingly.
  • Playback methods from the SRGMediaPlayerController (SRGAnalytics_MediaPlayer) category have changed:
    • An optional position to start at can be provided.
    • New convenience methods have been added.
  • SRGAnalytics_DataProvider.framework now has an explicit dependency on the new SRG Network and SRG Content Protection frameworks. Existing projects must add these dependencies to their targets after update with Carthage.
  • The resource lookup method from the SRGMediaComposition (SRGAnalytics_DataProvider) category now performs its work synchronously, calling a non-escaping closure to return it. A DRM boolean parameter has been added to its prototype as well.
  • Akamai token retrieval is now performed transparently by the SRG Content Protection framework. This fixes AirPlay instabilities previously associated with playback of Akamai-protected resources.
  • AVPlayerItem-based playback methods have been added to the SRGMediaPlayerController (SRGAnalytics_MediaPlayer) category for consistency.
  • Playback methods now support positions (SRGPosition). For the default position, simply use nil as position.
  • To mitigate slow application startups usually associated with a large number of dynamic frameworks being used, static framework integration with Carthage 0.30 and above is now supported.
  • A Makefile has been added to conveniently build and package the project.