PRESTOplay for React Native
Looking to quickly construct rich video players for Android and Apple devices with leading features, functionality, and secure playback?
Being seasoned developers ourselves, we know building cross-platform apps can be taxing on resources. To speed up deployment and lower costs, we’ve got you covered with our PRESTOplay SDK for the React Native framework.
Write once & reach many
Creating multiple players is tough enough, not to mention results can easily differ between platforms.
Thanks to React Native, you can write a single JavaScript or TypeScript app that looks and feels truly native across platforms with a unified audience experience.
Easily deploy on
- Android
- Android TV
- Amazon Fire TV
- iOS/iPadOS
- tvOS
Minimize your development
Get your players to market fast with code sharing and an efficient dev environment.
And the best part? You can do all this without sacrificing app performance or quality!
Keep your stack simple by building and maintaining just one code-base.
Lean your team: No need for multiple specialized developers for each platform.
Bypass the complexities and specific requirements of different platforms.
Security is central
To protect your premium content, PRESTOplay supports all DRM systems needed for secure studio-approved playback.
- Works seamlessly with our scalable DRMtoday multi-DRM licensing service
- Hardware-security level support for HD, UHD, and HDR quality excitement
Over and above open source
Open-source players offer basic playback, but things get complicated when extra features, consumer-reach, or support are needed. We offer added value not available with free alternatives.
An abundance of extra features to deliver leading playback experiences.
Compatibility and performance improvements to maximize audience reach.
Fast support to investigate workflow issues or squish a sneaky bug with priority.
We’re here to help
Our expert tech team can enable custom features, solve playback challenges, or target extra devices to meet your streaming vision!
Here’s how we help you deliver
Install using for easy workflow set up
Development & configuration | Android devices | Apple devices |
---|---|---|
Customizable & unified UI
We provide simplified user interface tools including easy configuration for buttons, subtitles, and thumbnail views.
|
||
Common player API framework
Our range of PRESTOplay
SDKs feature a common API for consistent playback behavior and simplified maintenance across different player
platforms and
devices. Common settings include: player configuration, ABR algorithm, latency, UI, and subtitles.
|
||
Network resilience
Network retry & CDN rotation Network retry: Automated recovery from connectivity loss with separate configuration for manifests, chunks, and other parameters.
CDN rotation: Allow multiple CDN sources to be defined for a single playback session. If the player gets a connectivity error from a CDN, it will quickly switch to the next source in the background to avoid buffering or disruption. These fallbacks can be defined either in the manifest or at the application level. |
||
Content filtering
Allows content representation exclusion. Our SDK checks a user device’s resolution capability and ignores ABR renditions
that aren’t supported. For example, if you offer UHD quality but a user’s smartphone only supports HD, then the player
will automatically exclude the UHD rendition (as long as there’s also an HD rendition available). The user receives the
best quality available on their device, and you save on bandwidth for unsupported stream qualities.
|
||
External display restriction Optionally prevent playback on secondary displays |
HDMI, Miracast |
HDMI, AirPlay |
Apple TV player with native UI option | N/A | |
Unified track model
A common player API that ensures audio/subtitle tracks and video quality representations are exposed in the same way,
independent of the content format. This saves time by allowing you to build a user interface once,
independent of the actual streaming format.
|
||
Streaming formats | ||
MPEG-DASH | Coming soon! | |
HLS | ||
CMAF | ||
Smooth Streaming | Coming soon! | |
Progressive MP4 | ||
MPEG-TS | ||
Playback | ||
Video on demand (VOD) | ||
Live | ||
Ultra-low latency
Sub-second achievable Our player is capable of <1 second latency behind the live edge.
|
||
Offline playback
With VOD downloader & persistent DRM sessions Enable stream downloading for secure local 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 to maintain video quality. DRM licenses are also stored securely: both during download and on a user’s
device, your content remains protected.
|
iOS & iPadOS |
|
Chromecast™ | ||
AirPlay® | N/A | |
Thumbnails WebVTT & BIF, single & gridded images |
||
Fast channel changing
Lets users switch streams as fast as broadcast TV. Avoid buffer delay by pre-caching neighboring content including
pre-fetching licenses for a quick low-latency user experience.
|
||
Live catchup
Perform automatic catch up whenever the player position falls behind a certain limit. This is useful to closely follow the live edge or to avoid falling behind the live window. Catching up is accomplished by either speeding-up playback or seeking to the live edge.
|
||
Trick play
Multi-speed fast forward, rewind, and slow
|
||
Tunneling | ||
nPVR/nDVR playback
Play recorded live streams on-demand, switch from live to VOD, or switch into a live mode where you can catch up from the beginning of the content.
|
||
HDCP state handling & recovery
Handles HDMI/HDCP status changes to ensure smooth playback.
|
||
Security | ||
Widevine DRM | ![]() |
Coming soon! |
FairPlay Streaming DRM | N/A | ![]() |
PlayReady DRM | ![]() |
N/A |
CMLA-OMA DRM | ![]() |
On request |
Multi-key support
For different content representations
|
||
Key rotation | ||
Concurrent stream limiting
Prevent user access to streams by denying licensing and license renewal requests. This
controls how many streams can be accessed simultaneously by a given user, for example, to enable ‘limited
device number’ business models.
|
||
DRM fallback
If multiple DRM system options are available, our player prioritizes them based on security level and selects the best one. In case a DRM-related issue occurs, the player can fall back to other options as a backup for secure playback to continue. For example: If a device reports that Widevine is supported but an issue occurs when trying to open a session, our player can fall back to the next available DRM option.
|
||
Convert PSSH between PlayReady & Widevine
Extend the reach of your existing encrypted library if it’s been packaged for a single DRM system only.
Content previously packaged as Smooth Streaming with PlayReady-only signaling can also be used on Widevine DRM platforms. Likewise, content packaged as MPEG-DASH with Widevine-only signaling can also be used on PlayReady DRM platforms.
We allow on-the-fly content playback with no server-side changes needed as everything is handled client-side including: PSSH box conversion, video decoder initialization, and dynamic fragment conversion. |
Coming soon! | |
Automatic key renewal
This is useful, for example, in rental use-cases where a license will expire and requires renewal while a user is watching content. Our player renews and installs licenses automatically ahead of time so users experience uninterrupted streams.
|
||
Offline DRM & license storage | iOS & iPadOS |
|
Dual expiry (license window duration)
For example: enable a 1 week license time-frame to watch a 120 minute content title. License expires either after 1 week or after 120 minutes of viewing.
|
||
Built-in DRMtoday compatibility | ||
Audio, video, & subtitles | ||
Multi-language | ||
WebVTT & TTML subtitles (SMPTE-TT, IMSC)
With automatic subtitle selection & preferred language
|
With images for SMPTE-TT & IMSC |
With images for SMPTE-TT |
SRT & DVB subtitles | Coming soon! | |
FCC compliance interface
The USA FCC requires that players must have the ability to allow users to set subtitle parameters such as font, font
size, color, etc. We provide an API to easily configure these settings. |
||
Subtitle track sideloading
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, if you receive subtitles for content and they aren’t part of the manifest, you
can sideload them for use without having to re-create your manifest.
|
||
Video & audio codecs | Uses device supported codecs | Uses device supported codecs |
SD/HD/4K/8K+, HDR10/HDR10+ On supported devices |
||
Dolby Vision On supported devices |
||
Advertising | ||
IAB VAST seamless ad insertion via Google IMA | Coming soon! | Coming soon! |
Manual ad scheduling
If you’d like to avoid VMAP, you can use our API to manually
set when ads are played within the playback timeline.
|
Coming soon! | Coming soon! |
Ad-insertion handling Hide/show player during ads
|
Coming soon! | Coming soon! |
IMA Dynamic Ad Insertion (DAI) | Coming soon! | Coming soon! |
Server-side ad insertion (SSAI) with leading vendors With impression quartile reporting, trick play, and multi-period support for MPEG-DASH. |
Coming soon! | Coming soon! |
Third-party pre-integrations | ||
NPAW Youbora | ||
Broadpeak Video Analytics | Coming soon! | Coming soon! |
Conviva Experience Insights | Coming soon! | Coming soon! |
Mux Data | Coming soon! | Coming soon! |
Nielsen Analytics | Coming soon! | Coming soon! |
Getting started is simple
Join the React Native revolution and see how you can take your player development to the next level with a free trial!