PRESTOplay for Web Apps
HTML5 is everywhere these days. But how can you reach all those devices with premium video streaming?
PRESTOplay for Web Apps is our SDK framework for deploying fantastic HTML/JavaScript video players across web-enabled platforms.
Designed to drastically lower development time and costs, you can easily deliver leading-quality playback experiences with plenty of fresh features.
Carefree browser video players
Your customers can use whichever browser their hearts desire.





Check out our browser support.
Deploy direct to TVs
Cozy up on that couch. You can present stunning stand-alone apps on Samsung and LG smart TVs.

Single UWP video player
Unleash one app across Universal Windows Platform (UWP) devices including Windows® 10 PCs and Xbox One.
Download to desktops
Empower audiences with offline playback. Quickly build native Windows and macOS apps with sleek VOD downloading.
Digital rights management (DRM) ready
Monetize and protect your content. We support studio approved DRM systems using Encrypted Media Extensions (EME).
Securely license across all screens. PRESTOplay works with DRM services including our cloud DRMtoday solution.
Get more out of your library. Play Common Encryption (CENC) streams regardless of which DRM system they were packaged for.
Dazzle your customers with next-gen HD, UHD, and HDR quality. If a device includes hardware-DRM, we support it.
Cure your player pain points with superior support
Have a tricky challenge that needs special care? Looking for feature customization to enrich your app? You get more than just software: our experts are here to help accomplish your playback goals.
Over and above open source
General open-source players are great for basic playback but things can get difficult when extra features, consumer-reach, or support are desired.
We’ve built on Shaka Player as a solid starting point with heavy modifications.
An abundance of added features and performance enhancements.
Greatly improved stream compatibility for audience reach.
Fast support to investigate workflow issues or squish a sneaky bug.
Let’s get technical
Check out everything PRESTOplay for Web Apps can do for you.
Scroll right to see the full table.
Browsers | Desktops | Universal Windows Platform | Smart TVs | |
---|---|---|---|---|
Supported platforms | Chrome, Firefox, Safari, Edge, Opera | Windows 8/10 macOS 10.9+ |
Windows 10 Xbox One |
Samsung Tizen LG webOS |
Development & configuration | ||||
Customizable & simplified UI tools
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.
|
||||
Corrupt content fixes
Accounts for non-standard manifest or MP4 files to ensure
playback. Our low-level API allows us to add fixes to the player in case you have content not conforming to
specifications.
This is useful in case you’re dealing with non-spec conforming content libraries that you can’t update easily.
|
||||
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. |
||||
Playlists
Define sequences of VOD and live content along with pre-caching of the next item for smooth content transitions.
|
||||
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.
|
||||
Unified track model
MPEG-DASH, Smooth Streaming, HLS 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.
|
||||
Compatible with Video.js
And Video.js plugins
|
||||
Light library footprint
Fully deployed, uncompressed: ~330K
|
||||
Streaming formats | ||||
MPEG-DASH
With DRM & unencrypted
|
(View DRM support) |
|||
Smooth Streaming With DRM
& unencrypted
|
(View DRM support) |
|||
HLS | With DRM & unencrypted (View DRM support) |
Unencrypted |
Unencrypted |
Unencrypted |
CMAF
With DRM & unencrypted
|
||||
Progressive MP4 | ||||
Playback | ||||
Video on demand (VOD) | ||||
Live | ||||
Ultra-low latency
Managed latency and sub-second achievable Our player is capable of <1 second latency behind the live edge.
We also enable managed latency by defining a live edge latency goal to synchronize all players instances for similar playback timing. For example: a football game where all users see a goal at the same time by accounting for playback drift. |
||||
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.
|
Not possible on browsers | |||
HLS live event Seek back in live streams
|
||||
Chromecast™ support Both sender & receiver apps |
N/A | |||
AirPlay® support | Safari |
N/A | ||
Thumbnails DASH, HLS Image Media Playlist, VTT, BIF |
||||
nPVR/nDVR for live streams
Record real-time broadcasts for on-demand replay |
||||
Trick play
Multi-speed fast forward, rewind, & slow We support two trickplay modes:
Decoder mode: Speed up playback by downloading and showing all frames. This creates a smooth experience, but isn’t ideal at high speeds due to decoder/bandwidth limitations. You can’t rewind with this mode. Seek mode: Our player continuously seeks, forward or backwards, based on the playback speed. This mode performs better at high speeds (> 6x) since you only need one frame at given time intervals. I-frame tracks are typically used here to reduce segment sizes and allow faster seeking. |
||||
Security | ||||
DRM system used
For studio-recognized security
|
Widevine™, PlayReady, FairPlay Streaming (View browser support) |
Widevine |
PlayReady (SL3000 hardware-secured on supported devices) |
Widevine (L1 hardware-secured on supported models), PlayReady (SL3000 hardware-secured on supported models) |
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.
|
||||
Migrate Smooth Streaming to MPEG-DASH
Extend the reach of your encrypted Smooth Streaming libraries. Content previously packaged specifically for PlayReady
can be used with Widevine instead.
We allow PlayReady-protected Smooth Streaming content to playback on-the-fly across Widevine DRM platforms. No server-side changes needed as everything is handled client-side including: PSSH box conversion, video decoder initialization, and dynamic fragment conversion. |
Smooth Streaming & PlayReady already supported | Smooth Streaming & PlayReady already supported | ||
Built-in DRMtoday compatibility | ||||
Audio, video, & subtitles | ||||
Multi-language | ||||
WebVTT, TTML (SMPTE-TT, DFXP, IMSC), SRT subtitles
With images for IMSC & SMPTE-TT
|
||||
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 browser supported codecs | Uses device supported codecs | Uses device supported codecs | Uses device supported codecs |
SD/HD/4K/8K+, HDR10/HDR10+/Dolby Vision On supported devices |
||||
Advertising | ||||
IAB VAST ad
insertion via Google IMA
With multi-period support for MPEG-DASH
|
||||
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.
|
||||
Server-side ad insertion (SSAI) |
We constantly update our SDK, so more updates are on the way!
Browser compatibility & streaming formats
Browser | Browser DRM system | MPEG-DASH & Smooth Streaming | HLS | |
---|---|---|---|---|
![]() |
Chrome™ | Widevine | Windows® & macOS & Chrome OS™ & Android™ & Linux® | – |
FairPlay Streaming | – | iOS/iPadOS | ||
![]() |
Firefox® | Widevine | Windows & macOS & Linux | – |
FairPlay Streaming | – | iOS | ||
![]() |
Safari® | FairPlay Streaming | – | macOS & iOS/iPadOS |
![]() |
Edge | Widevine & PlayReady | Windows & macOS & Android | – |
FairPlay Streaming | – | iOS/iPadOS | ||
![]() |
Opera™ | Widevine | Windows & macOS | – |
FairPlay Streaming | – | iOS/iPadOS | ||
Chromecast | Widevine & PlayReady | – |
Apple doesn’t support DRM protected MPEG-DASH or Smooth Streaming playback in iOS/iPadOS browsers.
Google regularly deprecates old versions of the Widevine CDM as a security measure. This means old versions of Chrome, Firefox, Edge, or Opera using an outdated Widevine CDM won’t be able to use DRM. Learn more about Google’s deprecation schedule.
Try PRESTOplay for FREE
Request a downloadable trial to see how our SDK can help you deliver leading player experiences across web-enabled platforms, or test your streams with our browser demo now.