Sign Up

Control and Customize Offline Playback for Mobile SDKs

Shilpa Murthy

Written by:
March 13th, 2019

Mobile Offline Playback

We are noticing that more and more services are following Neflix’s lead in terms of implementing download and offline playback within their mobile applications. This is a feature that Bitmovin has supported for a while now. We have also added many more features to our Android and iOS SDKs as we worked with our customers to implement download and offline playback for their mobile applications.

Supported Platforms:
iOS SDKs (iOS 9+)
Android SDKs (Android 4.4+)


The Bitmovin Advantage with Offline Playback

Bitmovin Mobile SDKs provides a class called OfflineManager that encapsulates all content download operations like starting content downloads, pausing and resuming downloads, canceling downloads and deleting already downloaded content.

The OfflineManager seamlessly maintains and returns the correct download states regardless of whether the application is in foreground mode, background mode or application gets force closed by user or crashes unexpectedly.

Here are the top reasons why Bitmovin can provide the best experience if you’re considering implementing download or offline playback for your mobile application(s):

  • Quick to implement: Developers can follow our tutorials or jumpstart POCs through our readily available Github projects.
  • Easy to Use: Our Mobile Player SDKs and Player APIs simplifies and abstracts the download workflow so developers can implement their custom business rules and focus on end user experience.
  • Simplified DRM implementation: Our Mobile Player SDKs supports download and offline playback of DRM and non-DRM content. We support easy-to-use offline DRM APIs that works with both Apple and Android devices. Benefits include:
    • Easy configurations to decorate or modify DRM requests as needed for offline and custom content workflows
    • Flexible DRM APIs that work with any major DRM provider (Ex: Irdeto, Verimatrix, BuyDRM and more)
  • Enables Customizations: Download Manager and APIs can be easily extended to support custom download use cases like:
    • Implementing custom DRM, License requests
    • Storing and Managing content on External storage
    • Customizing Device Notifications for better user experience
    • Customizing Content License rules (Ex: Enable background license refresh every 2 weeks etc)
  • Road Tested: Bitmovin delivers a very advanced and feature-packed Download Module that’s been production tested across major Broadcaster and Media customer deployments. We have evolved the feature set over the past year and addressed edge cases through first-hand experience.
  • Excellent Support: Unlike Open Source Players (OSP), we provide APIs for all the major Download use cases that’s easier and more convenient to use. We also enable customizations to support unique workflows. We also provide expert staff to support implementation needs and answer questions through the integration process.

Control the Offline Playback Download Lifecycle:

The Bitmovin Download feature is supported for both clear and DRM protected content. Bitmovin provides Player APIs and Events to track the download lifecycle:

  • Start Download
  • Suspend Download
  • Resume Suspended Download
  • Cancel Download
  • Delete Download
  • Track Download States
    • Downloaded
    • Downloading
    • Download Completed
  • Download Progress
  • Select one or more Audio, Caption files for Download
  • Select Video Quality for Download
  • Select preview thumbnails for download
  • Handle Download License states
    • Renewal
    • Refresh
    • Expiration

Customize Download Experience Based on your Business Rules:

Bitmovin also provides a few utility features to help developers customize the download behavior and experience depending on device capabilities:

  • Check Device Storage
  • Check External Storage
  • Check Internet Connectivity to determine offline or online playback
  • Provide Device Notifications for download events
  • Enables parallel downloads for multiple downloads
  • Configuration for background downloads
  • Extensive Download Error Reporting

Documentation

Ready to get started? Check out our Bitmovin Player Tutorials for getting started with Download on Mobile SDKs. We also provide code samples in our Github repos to help jumpstart development and POCs.

Tutorials:

Github Code Samples: