Open source video players, built and launched

Video and media players you can run yourself. The list is ordered by whether each project came up when Argusic installed it fresh, with the recording of that attempt one click away.

Tested between and . Each row shows its own test date; a project can change after that day.

6 of 9 tested projects run. 14 more waiting for a test.

In short: 5 of the 9 tested projects started as-is on a fresh machine: streama, xgplayer, clappr, media-chrome, and mpegts.js. 1 more started once a stand-in replaced a service it expects, such as a database: NymphCast. 3 could not be verified: JKVideo, mini-media-player, and Bubble-Card; the log shows where each one stopped.

Measured by Argusic on a fresh machine every time. Every number links to its evidence.

#projectverdictArgusic Scorelanguagestarstested on
1streamaRuns100 / 100JavaScript9,819

Self hosted streaming media server. https://docs.streama-project.com/

What the test found: Project compiles, all 59 Spock tests pass, fat JAR boots a Grails application on port 8086 serving a Streama login page at /login/auth with a working redirect chain from /. 27 minutes.

2xgplayerRuns100 / 100JavaScript9,306

A HTML5 video player with a parser that saves traffic

What the test found: yarn install succeeds, yarn build:all builds all 16 packages, full test suite passes (300/300), and the dev server starts on port 8081 and serves HTTP 200. 8 minutes.

3clapprRuns100 / 100JavaScript7,506

An extensible, plugin-oriented, HTML5-first media player for the web

What the test found: Project builds with all packages producing dist/ artifacts and the full test suite (59 files, 1232 tests) passes cleanly on Node 24.11.0. 8 minutes.

4media-chromeRuns100 / 100TypeScript2,754

Custom elements (web components) for making audio and video player controls that look great in your website or app.

What the test found: The media-chrome project installs, builds ESM/CJS/IIFE/React outputs, serves the dev site on port 8000, and runs 619+ of 721+ unit tests in headless Chromium. The 5-6 failures are environmental (no GPU codec for H.264 decode in container). 11 minutes.

5mpegts.jsRuns60 / 100JavaScript2,281

HTML5 MPEG2-TS / FLV Stream Player

What the test found: npm install succeeds, webpack build produces dist/mpegts.js, and the test suite runs 199/199 passing on Node 18. 1 minute.

6NymphCastRuns with mocks92 / 100C2,561

Audio and video casting system with support for custom applications.

What the test found: NymphRPC library, LibNymphCast library, AngelScript library, and the NymphCast CLI client binary (nymphcast_client) build and execute correctly. The NymphCast server binary could not be fully linked due to transitive dependency libimath (from OpenEXR) required by libfreeimage, which needs system packages only... 24 minutes.

7JKVideoCould not verify80 / 100TypeScript4,994

高颜值第三方 B 站 React Native 客户端

What the test found: npm install completes, TypeScript compiles with zero errors, and 'npx expo export --platform web' produces a working web build at web-build/ that serves index.html (200) and the 2MB entry JS bundle (200). 8 minutes.

8mini-media-playerCould not verify80 / 100TypeScript1,722

Minimalistic media card for Home Assistant Lovelace UI

What the test found: npm install and npm run build succeed with zero errors; the generated bundle parses as valid JS and registers all expected custom elements. 1 minute.

9Bubble-CardCould not verify10 / 100JavaScript4,633

Bubble Card is a minimalist and customizable card collection for Home Assistant, featuring modern pop-ups and an integrated Module Store with over 100...

What the test found: could not be verified; the log shows where it stopped. 1 minute.

-MyTubeNot yet tested-TypeScript1,247-
-next-videoNot yet tested-TypeScript1,227-
-ganderNot yet tested-JavaScript1,174-
-fluid-playerNot yet tested-JavaScript950-
-tplayNot yet tested-Rust693-
-libvlc-goNot yet tested-Go510-
-react-native-vlc-media-playerNot yet tested-Java458-
-ShiguReaderNot yet tested-TypeScript418-
-elementsNot yet tested-TypeScript364-
-HAIRNot yet tested-Python317-
-glideNot yet tested-Rust288-
-limeplayNot yet tested-TypeScript284-
-loomixNot yet tested-TypeScript244-
-react-native-media-consoleNot yet tested-TypeScript239-

runs installed and started with its real dependencies. runs with mocks started after stand-ins replaced external services such as a database or a third-party API. could not verify neither the standard agent nor the stronger one got it running within the time limit; the log shows where it stopped.

How we tested

On this list as of the latest test: 5 projects ran as-is, 1 with mocks, 3 could not be verified, 14 still waiting. Languages tested: C, JavaScript, TypeScript. Every attempt used a clean single-use machine, the subject at a pinned version, and a 45-minute limit; the complete procedure is on the methodology page.

Frequently asked questions (FAQs)

How is this list ranked?

By measurement, not opinion: projects Argusic installed and launched on a fresh machine come first, then those that ran with mocks in place of external services, then those it could not verify. Ties go to the Argusic Score, then how popular it is on its own source.

Why are some projects unranked?

14 projects are still waiting for a test or for a finished attempt. They are listed without a rank until Argusic has measured them.

Where is the evidence?

Every row links to the project's Argusic page, where each run has a full log and a terminal recording stored with a sha256 fingerprint. The same pages exist for every one of the tested projects, on this list or not.

More lists in this category

All lists: Best. All tested projects: subjects.