Production ready tool to enable offline capabilities inreact-native-video

Meet the Offline Video SDK

Easily add offline features to react-native-video with commercial support. Stay open-source, scale with confidence.
DASH/HLS
DOWNLOADER
DRM
OFFLINE
DRM
OFFLINE
UI ASSET 
MANAGER
TRUSTED BY LEADING COMPANIES

Composable SDK - pick what you need and pay only for what you’ll use

Widevine
& FairPlay Support

Handle license acquisition and offline playback for Android (Widevine) and iOS (FairPlay), ensuring premium content remains protected on both platforms.

Offline
License Lifecycle

Acquire, store, and renew licenses locally; automatically revoke or expire them if the user’s subscription ends or time limits are reached.

Secure
Key Storage

Utilize platform-specific secure enclaves (iOS Keychain, Android Keystore) to encrypt and store DRM keys, preventing unauthorized access.

Multiple DRM
Provider Compatibility

Support various licensing servers and frameworks (e.g., PlayReady, third-party DRM) to broaden content availability.

Time-Based
Playback Restrictions

Enforce viewing windows (e.g., 48 hours after download), ensuring offline playback stops automatically once the content expires.

Error Handling
& Debug Tools

Provide clear logs and error codes when license requests fail or decryption errors occur, simplifying troubleshooting on both Android and iOS.

Flexible

Track Selection

Choose specific bitrates, audio tracks, or subtitle tracks from your HLS or DASH .m3u8 and .mpd manifests.

Multi‑Platform
HLS Support

Download HLS streams on both Android and iOS, guaranteeing a consistent offline experience across devices. Handle DASH DRM downloads on Android if needed.

Reliable background
uploader

The SDK supports stable background uploads with automatic retries, queueing, and robust error handling. Even under spotty connections, covering countless edge cases along the way.

Pause/Resume
+ Queue Management

Queue multiple downloads, pause or resume tasks on demand, and maintain progress across app restarts on both iOS and Android.

Multi Subtitles
& Audio

Include or exclude subtitles and multiple audio tracks as needed, providing localized offline playback experiences.

Developer‑Friendly
Integration

Continue using react-native-video normally, while the SDK manages all offline operations with minimal changes to your current workflow.

Centralized
Offline Library

Group and manage all downloaded media in a single repository, simplifying how you track offline videos, audio, and subtitles.

Storage
Optimization

Prevent excessive space usage by controlling which resolutions, audio, and subtitles are saved. Download only what you actually need.

Easy Metadata
Access

Easily retrieve or update metadata (e.g., titles, expiration dates) for each offline asset, streamlining your in-app library management.

Automatic
Clean‑Up

Remove expired or unwanted files to free device space and keep your offline library lean based on predefined configuration. No extra manual steps needed.

Secure Handling
of Assets

Leverage iOS Keychain and Android Keystore (when used with DRMLeverage iOS Keychain and Android Keystore (when using DRM) to store asset keys or tokens, protecting sensitive data.

Flexible
Integration

Offer complete control over how offline assets are displayed, updated, and accessed allowing you to maintain your existing workflows.

Extend your app with offline video features in days instead of months.

Keep The Momentum

Stay focused on building your core business, as our Offline Video SDK handles the heavy lifting.

Stay with your existing code

Keep your existing code written with react-native-video. You don't have to rewrite it all to implement commercial alternatives.

Stay with Open Source

Instead of migrating to commercial players who support offline DRM and video, stay with react-native-video and extend it.

Battle-Tested. PRO.

Battle-tested, pro-level features. All the best practices for offline experiences - right at your fingertips.

React Native Video with Offline SDK versus commercial players

Open Core

License Model

React Native First

Pluginable architecture

Offline Video SDK

Yes (access to React Native Video core is open source)
Flexible (App Based or Impression based)
This is React Native SDK. Only
You can add your own plugins and customize the open core

Commercial players

No (closed source)
Impression based
Supports React Native
Paid service

Open Core

License Model

React Native First

Pluginable architecture

Offline Video SDK

Yes (access to React Native Video core is open source)
Flexible (App Based or Impression based)
This is React Native SDK. Only
You can add your own plugins and customize the open core

Commercial players

No (closed source)
Impression based
Supports React Native
Paid service
/*.comparison_main_wrapper { display: flex; overflow-x: auto; /* Enables horizontal scrolling if needed */ overflow-y: hidden; /* Prevents vertical scrolling */ white-space: nowrap; /* Prevents wrapping */ -webkit-overflow-scrolling: touch; /* Smooth scrolling on iOS */ }
Buy Offline Video SDK

We’ve made our Offline Video SDK with your growth in mind.

React Native First Class Citizen

  • Coupled with React Native:

    This has been built just for React Native.
  • You already know us: 

    We’ve been powering your React Native Video software so far.
  • We shape the future of React Native:
    We are React Native and Nitro Modules Contributors.

Open and Pluginable Architecture

  • No Black-Box Constraints: 

    Build on top of an open-core foundation.
  • Easier Customization:
    Add plugins and modify the core to fit your unique needs.
  • Lower TCO: 

    Streamlined development means fewer maintenance headaches.

Enterprise and Startup Friendly

  • Enterprise-Grade Features: 

    This is licensed code that we take responsibility for.
  • Fitness and e-learning apps presets: 

    Don’t reinvent the wheel.
  • Fast ROI: 

    Launch faster, monetize sooner, and see immediate payoff.

What our Clients say?

Omar Diop
Technical Lead at Learnn
Working with TWG has been a game-changer for our app. Their expertise in React Native and the react-native-video library was crucial to overcoming our challenges. The audit provided a clear, actionable plan, and their implementation was smooth and professional. We're thrilled with the results and look forward to continuing our collaboration.
See Learnn Case study
Elliot Dickison
Co-founder at Treefort
I reached out to TWG for help fixing crashes in my app related to the react-native-track-player library on Android devices. Not only did they guide me to strong candidates for the solution, they also provided extensive feedback on the ecosystem of media libraries, including honest and straightforward input on my future plans. It was a great collaboration, and last but not least - they did it all for free! This is a great way to build trust in their work. I will certainly consider their commercial support in the future.
See Treefort case study
Bruno Gazzera
Director at Paginar
We reached out to TWG to enhance the library with visionOS DRM support. We knew the library was missing this feature, and we didn’t want to maintain a fork or anything like that. Thanks to the one-time sponsorship deal, we got exactly what we wanted and allowed the community to push forward and maintain the feature. Overall, we’re very satisfied—quality is great, and it was delivered on time!
See Paginar Case study

FAQ

Having questions? Check answers below.

Does Offline Video SDK support multiple audio tracks?

Arrow icon

Simple answer: Yes! The same applies to subtitles. 

I have subtitles from a different source. Will they work?

Arrow icon

You can provide subtitles from whatever source and they will work.

Does HLS work on Android?

Arrow icon

Yes, HLS videos work on Android and can be downloaded. However, if you’re using DRM on Android, only DASH is supported - which our SDK provides.

I use the XYZ DRM provider. Will it work in my case?

Arrow icon

To check if your provider supports offline playback, you need to verify whether it allows downloading Persistent Tokens.

Offline playback still doesn't work when I add react-native-video contentID with a persistent key.

Arrow icon

For offline playback you also need to download the streams :) providing only a contentID with a persistent key won’t do the trick.

Can this SDK help reduce my DRM provider costs?

Arrow icon

Yes! One of our plugins within Offline Video SDK, DRM-license downloader, allows you to store persistent tokens and update them only when they expire, rather than every time a video is played. This can help optimize costs.

Who will integrate this SDK into my application? Our team abandoned the project after encountering the first bug in react-native-video.

Arrow icon

Our team can handle the SDK implementation as part of a commercial cooperation. We are also available to assist or support your team during the implementation process, or you can integrate it yourself if you prefer.

Will Offline Video SDK download all the content specified in an m3u8/mpd file?

Arrow icon

Fortunately, it doesn’t... The SDK allows you to select specific resolutions or tracks. If no selection is made, the default track will be downloaded. This helps prevent unnecessary memory usage when downloading videos. Developers can, for example, select which audio track to download based on the user’s location, but downloading multiple tracks is also supported.

Does Offline Video SDK allow video playback in airplane mode?

Arrow icon

Yes! The SDK enables you to download HLS/DASH/SS videos, allowing offline playback even in airplane mode. If you’re protecting the content with DRM, remember to handle the DRM as well - with our SDK of course!

Why should I choose this SDK?

Arrow icon

Offline Video SDK is the best choice when you need to download videos. You don’t need to rely on expensive commercial players - instead, you can use our SDK, which offers flexible pricing tailored to your company or app. Additionally, you can continue using open-source solutions, contributing to and benefiting from the developer community.

Can I add more features to the app?

Arrow icon

This is the solution for a specific case and it doesn't prevent you from adding something more to your video implementation. It’s actually the other way around - the react-native-video is built to promote pluginable architecture. So it is easy to add more without forking the library - take adding offline capabilities as an example.

Do I need to pay extra for additional features?

Arrow icon

No, you can still use the open-source code for free and continue leveraging your existing architecture. You can also keep adding your own solutions and plugins. That said, if you want to stay up to date, sign up for our newsletter. If you’re eager to learn more right now, feel free to explore our website or reach out to us directly!

Can I migrate from an open-source solution to your SDK?

Arrow icon

Absolutely! The core of SDK (react-native-video) is open-source and free for everyone. If you are using a different library and migration isn’t feasible, feel free to reach out to us for a custom implementation or a migration solution tailored to your existing setup.

How does the licensing model work? Is there a free trial?

Arrow icon

Haven’t found your answer?

Book a free demo call, and let’s tackle your questions, 
and see how we can help with your product.

Book a free demo

Want to learn more about React Native Video?

Book a free demo call, and let’s tackle your questions, 
and see how we can help with your product.

How to download HLS stream in React Native Video?

Book a free demo

Contact us for Premium Support to fast-track your needs.
Thank you! Your submission has been received! 📨
Oops! Something went wrong while submitting the form.

Ready to start, and talk about your business growth?

No credit card required. No immediate purchase. Let’s talk about your project and how our SDK can power your next launch.
Buy Offline Video SDK