Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Broadcasting
  3. rx-player

rx-player

Apache-2.0TypeScriptv4.4.1

A JavaScript library for playing DASH and Smooth Streaming video with HTML5 Media Source Extensions, designed as a configurable core player engine.

Visit WebsiteGitHubGitHub
930 stars136 forks0 contributors

What is rx-player?

RxPlayer is a JavaScript library that implements a DASH and Smooth Streaming media player for browsers using HTML5 Media Source Extensions and Encrypted Media Extensions. It acts as a core 'engine' for adaptive streaming, handling complex scenarios like multiple DRM keys, subtitle formats, and multi-threaded playback while developers provide the user interface. It solves the problem of building robust, configurable video players for modern streaming protocols.

Target Audience

Frontend developers and media engineers building custom video players for streaming services, especially those requiring support for DASH, Smooth Streaming, advanced DRM, and cross-device compatibility.

Value Proposition

Developers choose RxPlayer for its production-tested reliability across diverse devices, highly configurable API, and ability to handle complex streaming scenarios like multi-DRM and adaptive bitrate switching without blocking the main application thread.

Overview

DASH/Smooth HTML5 Video Player

Use Cases

Best For

  • Building custom video player interfaces for DASH or Smooth Streaming content
  • Implementing advanced DRM workflows with multiple keys and fallback mechanisms
  • Developing video players for low-end devices like set-top boxes with constrained resources
  • Creating adaptive streaming players with network and buffer-based quality algorithms
  • Integrating multi-threaded video playback to prevent UI blocking
  • Handling complex subtitle formats like TTML and WebVTT in streaming applications

Not Ideal For

  • Projects needing a plug-and-play video player with built-in controls and styling out-of-the-box
  • Simple video playback applications that only require basic MP4 or WebM support without adaptive streaming
  • Environments where HLS is the primary streaming protocol and native browser support is insufficient
  • Teams with tight deadlines who cannot afford the overhead of building a custom UI from scratch

Pros & Cons

Pros

Production-Tested Reliability

Built for Canal+'s diverse device ecosystem, from low-end set-top boxes to high-end computers, ensuring robust performance in real-world streaming scenarios.

Highly Configurable API

Offers granular control over player behavior, DRM handling, and adaptive streaming algorithms, as detailed in the extensive API documentation with tutorials for quick start-up.

Multi-Threaded Architecture

Core logic can run in a separate thread, preventing the player from blocking the main application and vice-versa, which enhances UI responsiveness for complex integrations.

Advanced DRM Support

Handles multiple DRM keys, fallback mechanisms, and persistent licenses, addressing complex encryption requirements common in premium streaming services.

Cons

No Built-in User Interface

As a non-UI engine, developers must build custom interfaces from scratch, increasing initial development time and effort compared to full-featured players like video.js.

Limited Native HLS Support

HLS is only supported in 'directfile' mode on compatible browsers, which may not suffice for all HLS-based streaming needs without additional workarounds or native fallbacks.

Steep Learning Curve

The extensive configurability and advanced features, such as segment scheduling and DRM fallbacks, can be overwhelming for developers new to adaptive streaming or with simpler requirements.

Frequently Asked Questions

Quick Stats

Stars930
Forks136
Contributors0
Open Issues43
Last commit3 days ago
CreatedSince 2015

Tags

#drm#multi-threading#html5#javascript-library#player#adaptive-streaming#live-streaming#video#subtitles#video-streaming#dash#video-player

Built With

R
React
J
JavaScript

Links & Resources

Website

Included in

Broadcasting1.7k
Auto-fetched 15 hours ago

Related Projects

KodiKodi

Kodi is an award-winning free and open source home theater/media center software and entertainment hub for digital media. With its beautiful interface and powerful skinning engine, it's available for Android, BSD, Linux, macOS, iOS, tvOS and Windows.

Stars20,708
Forks6,528
Last commit1 day ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub