PRESTOplay SDK for Android and iOS

We offer software development kits (SDKs) for Android and iOS with an extensive set of features for creating robust custom video player applications. Utilizing the latest standards and technology, our player SDKs reduce development efforts by providing everything you need for delivering leading-quality video experiences to your customers.

Individual SDKs for both leading mobile operating systems


Android SDK with ExoPlayer Core

We use ExoPlayer as a solid starting point for our Android SDK with valuable fresh features layered on top. Our API is continually maintained to ensure full compatibility with ExoPlayer updates.


iOS SDK with AVPlayer & VideoToolbox

We’ve built powerful new components into our SDK for iOS to greatly extend the feature-set of the operating system’s stock AVPlayer and Apple’s VideoToolbox API.

Develop for mobile and TV

Develop for Mobile & TV

Easily create rich mobile playback applications for smartphones and tablets as well as apps for Android TV, Amazon Fire TV, and Apple TV.


DRM-enabled for online & offline studio content playback


Hardware-DRM support for UHD, HDR, and next-generation quality streaming


Seamlessly integrated with our cloud-based DRM licensing service, DRMtoday

PRESTOplay for mobile

PRESTOplay for Android/iOS: Features

Our simplified APIs let you build video applications from scratch, or incorporate new playback functionality into existing apps. Get to know what we can enable for you through our detailed feature list.

Scroll to the right to see the full table.

SDK Features
Our SDK for Android
Base Exoplayer
Our SDK for iOS
Base AVPlayer
OS compatibility Android 4.1+
(API level 16+)
Android 4.1+
(API level 16+)
iOS 9+ iOS 9+
Code simplification Yes No Yes No
Common API framework [Show more] Yes No Yes No
Playback SDK for Android Base Exoplayer SDK for iOS Base AVPlayer
Video on demand (VoD) Yes Yes Yes Yes
Live Yes Yes Yes Yes
Ultra-low latency Yes No Yes No
Offline playback
MPEG-DASH, HLS, Smooth Streaming, .MP4
Yes Yes Yes Yes
(HLS only, on iOS 10+)
VoD downloader
For local playback
[Show more]
Enable stream downloading for secured offline playback. Manifests can be accessed to transfer content to a user’s device with the video quality, audio, and subtitle track able to be specified. Content is downloaded with no transmuxing or transcoding, so video quality is maintained. DRM licenses are also stored securely: both during download and once on a user’s device, your content remains protected. When downloading is complete, our SDK also facilitates protected local playback.
(MPEG-DASH, Smooth Streaming, .MP4)
No Yes
(MPEG-DASH, HLS/iOS 10+, Smooth Streaming, .MP4)
(HLS only, on iOS 10+)
360 video Yes
(MPEG-DASH, HLS, Smooth Streaming, .MP4)
No Yes
(HLS only)
HLS live event
To seek back in live streams
Yes Yes Yes Yes

External display support/behavior configuration

(HDMI, Miracast)
No Yes
(HDMI, AirPlay)
(HDMI, AirPlay)
Content filtering
Example: to exclude representations
[Show more]
Allows content representation exclusion. For example on Android, the SDK already checks the devices capabilities and removes representations that are not required to provide the best quality for the end user. For example, if you offer an HD representation but a user’s smartphone has a low-resolution display, the player would automatically exclude the HD representations as long as there is a lower resolution available that will use all the screen’s size. The user receives the maximum quality available on their device, and you can save the bandwidth for the HD stream.
Yes No Yes No
Fast forward and slow Yes Yes
(Android 6+ only)
Yes Yes
Thumbnail support Yes No Yes No
Texture views
Example: 3D animated transitions
Yes Yes No No
Recovery from connectivity loss Yes No No No
nPVR/nDVR support for live streams Yes Yes
(not HLS)
No No
Background playback
Examples: background loading, service integration
Yes No No No
Adaptive Streaming & Video Formats SDK for Android Base Exoplayer SDK for iOS Base AVPlayer
MPEG-DASH (supporting CMAF) Yes Yes Yes
(HLS transmuxing not needed)
Smooth Streaming Yes Yes Yes
(HLS transmuxing not needed)
HLS Yes Yes Yes Yes
Progressive .MP4 playback Yes Yes Yes No
Video codecs
Example: H.264, H.265, VP9
Utilizes device hardware supported codecs & VP9 software decoder Utilizes device hardware supported codecs & VP9 software decoder Utilizes device hardware supported codecs Utilizes device hardware supported codecs
On supported devices
Yes Yes Yes Yes
Unified track model
MPEG-DASH, Smooth Streaming, HLS
[Show more]
A common API on the player that ensures audio/subtitle tracks and video quality representations are exposed in the same way, independent of the content format (DASH/SS/HLS). This allows you to build user interfaces once, independent of the actual input format.
Yes No Yes No
Corrupt content fixes [Show more]
Accounts for non-standard manifest or .MP4 files to ensure playback. The structure of our low-level player API allows us to add fixes to the player in case you have content not conforming to specifications. This is useful for customers who have an established/large content library that is not 100% conforming to specs.
Yes No Yes No
Encrypted PIFF Yes No Yes No
Security SDK for Android Base Exoplayer SDK for iOS Base AVPlayer
Widevine Modular DRM
Level 1 hardware-secured where supported
Yes Yes Yes
PlayReady® DRM (on supported devices)
SL3000 hardware-secured where supported
Yes Yes N/A N/A
FairPlay Streaming DRM
Access to hardware-security where supported
N/A N/A Yes Yes
Offline DRM and license storage Yes No Yes No
Arxan security layer [Show more]
Software-based Trusted Execution Environment (TEE) for improved security on devices without hardware-protection.
Yes No Yes No
On-the-fly PlayReady/Widevine PSSH box conversion Yes No N/A N/A
Built-in DRMtoday compatibility Yes No Yes No
Subtitles SDK for Android Base Exoplayer SDK for iOS Base AVPlayer
Multi language Yes Yes Yes Yes
Subtitle images support
Yes No Yes No
WebVTT Yes Yes Yes Yes
SRT Yes Yes Yes No
FCC compliance interface & preview UI
[Show more]
The FCC in the USA requires that players must offer users the ability to set certain subtitle parameters such as the font, font size, color, etc. for rendering. We provide an API to configure these settings.
Yes Partial Yes No
Track sideloading [Show more]
Sideloading allows you to add additional URLs as subtitle tracks. This means you can add subtitles without embedding the track into your manifest. For example, on iOS this allows you to load formats that are not supported directly by the HLS playlist format or Apple’s AVPlayer.
Yes No Yes No
Audio SDK for Android Base Exoplayer SDK for iOS Base AVPlayer
Multi language Yes Yes Yes Yes
Where supported by device
Yes Yes Yes Yes
Where supported by device
Yes Yes Yes Yes
Audio pass-through [Show more]
Allows you to ‘pass-through’ audio track data to external connected devices. For example, if you deploy to an Android TV set-top-box the box itself may not support a desired audio codec (for example Dolby 5.1), but if the connected TV does support it then our SDK allows you to ‘pass’ the track to the TV to leverage its decoder.
Yes Yes Yes Yes
Audio gain [Show more]
Allows you to control the audio volume independent of the device’s system volume. This feature is mainly used to mute an audio track without interfering with a user’s volume settings (for example during ad playback).
Yes Yes No No
Ad support SDK for Android Base Exoplayer SDK for iOS Base AVPlayer
Ad-insertion handling
Hide/show player during ads
Yes No Yes No
IAB VAST support via Google IMA Yes No Yes No
Technology Pre-integrations SDK for Android Base Exoplayer SDK for iOS Base AVPlayer
Youbora (NicePeopleAtWork) Yes No Yes No
Nielsen Yes No Yes No
Conviva Yes No Yes No
Streamroot DNA Yes No Yes No
Broadpeak Video Analytics Yes No Yes No
Streaming technology compatibility examples SDK for Android Base Exoplayer SDK for iOS Base AVPlayer
AWS Elemental Yes Yes Yes Yes
Microsoft Azure Media Services Yes Yes Yes Yes
Unified Streaming Yes Yes Yes Yes
Wowza Yes Yes Yes Yes
Device/platform compatibility examples SDK for Android Base Exoplayer SDK for iOS Base AVPlayer
Android TV Yes Yes N/A N/A
Apple TV (tvOS) N/A N/A Yes Yes
Chromecast Yes Yes Yes No
Amazon Fire TV Yes Yes (unencrypted)
No (encrypted)

More features on the way

Our PRESTOplay SDKs are constantly being updated with new features. Speak with us if there’s something you’re looking to implement to enrich your playback experience.


Better together

Get our Web Apps as well as our Android and iOS SDKs for simplified cross platform playback!

Contact us

Get in Touch

Speak with us to learn more about our SDK technology, and how we can help you deliver superior Android and iOS experiences for your customers.

Contact us