awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
vidstack avatar

vidstack/player

0
View on GitHub↗
3,555 stars·213 forks·TypeScript·MIT·2 viewsvidstack.io↗

Player

This project is a framework for building accessible, framework-agnostic video and audio players for the web. It provides a headless library of reactive hooks and modular components that separate playback logic from visual presentation, allowing developers to create custom media interfaces while maintaining full control over styling and layout.

The library distinguishes itself through a provider-based abstraction layer that normalizes disparate streaming protocols and third-party media sources into a unified playback environment. By utilizing an event-driven state management system, it ensures consistent behavior across complex media features such as adaptive bitrate streaming, casting, and picture-in-picture, regardless of the underlying media source.

The framework covers a broad range of capabilities, including built-in support for accessibility standards like keyboard navigation and screen reader compliance. It offers extensive configuration options for interface design, including prebuilt layout templates, scalable icons, and mechanisms for persisting user preferences across sessions. The architecture is designed for performance, supporting lazy loading and server-side rendering to optimize initial page delivery.

Features

  • Adaptive Streaming Players - Integrates HLS and DASH streaming protocols with unified state management and cross-browser normalization.
  • HTML5 Media Players - Provides a framework-agnostic library for building accessible, customizable video and audio players with support for diverse streaming protocols.
  • Media Playback Controls - Provides programmatic commands for adjusting playback state, seeking, looping, and audio gain.
  • Media Playback Controls - Exposes a reactive, event-driven architecture for controlling playback state, track selection, and quality across media providers.
  • Media Playback UI Components - Ships a collection of reusable, accessible UI components for controlling media playback, captions, and player layouts.
  • Headless Component Logic - Separates functional playback logic from visual presentation to allow custom interface styling.
  • Accessible UI Components - Delivers pre-built, compliant UI components including menus and sliders that support keyboard navigation and internationalization.
  • Event-Driven State Managers - Synchronizes playback state and media metadata across decoupled components using a centralized reactive event bus.
  • Media Player Accessibility - Implements accessible media player controls including screen reader support, keyboard navigation, and focus management.
  • Headless Media Player Libraries - Provides reactive hooks and components that separate playback logic from visual presentation for custom media interfaces.
  • Media Player Interfaces - Implements advanced playback features including casting, picture-in-picture, screen orientation, and custom caption rendering.
  • Media Abstraction Layers - Normalizes disparate streaming protocols and media sources into a consistent set of playback controls.
  • Advanced Video Playback Controls - Manages complex media features like live streaming, picture-in-picture, and casting through a reactive architecture.
  • Cross-Platform Media Players - Consolidates diverse streaming protocols and third-party media sources into a unified playback experience.
  • Adaptive Streaming Players - Enables adaptive bitrate streaming by configuring support for industry-standard manifest formats within the player instance.
  • Video Streaming - Delivers compliant media playback interfaces supporting screen readers, keyboard navigation, and internationalization.
  • Media Integration - Integrates diverse media providers including local files and network streams for unified playback.
  • Media Player Interfaces - Allows customization of interface appearance and behavior through slots, properties, and theme settings.
  • Accessible - Builds interactive elements with built-in focus management and WAI-ARIA patterns for accessibility compliance.
  • Component Lifecycle Management - Maintains continuous playback state by preventing component destruction during complex DOM transitions or layout changes.
  • Third-Party Media Player Integrations - Embeds third-party streaming services and specialized video protocols into a unified playback environment.

Star history

Star history chart for vidstack/playerStar history chart for vidstack/player

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Curated searches featuring Player

Hand-picked collections where Player appears.
  • Video player components

Open-source alternatives to Player

Similar open-source projects, ranked by how many features they share with Player.
  • mediaelement/mediaelementmediaelement avatar

    mediaelement/mediaelement

    8,295View on GitHub↗

    MediaElement is a JavaScript library that wraps native HTML5 audio and video elements to provide a unified media interface and a customizable player framework. It acts as a multi-format media controller and a web-based plugin framework, normalizing playback controls and visual styles to ensure a consistent experience across different web browsers. The project distinguishes itself through a plugin-based playback system that maps specific MIME types to custom renderers, allowing the integration of third-party media embeds and external playback engines. It supports advanced delivery features inc

    JavaScript
    View on GitHub↗8,295
  • johndyer/mediaelementjohndyer avatar

    johndyer/mediaelement

    8,297View on GitHub↗

    MediaElement is an HTML5 media player framework that provides a unified interface for playing audio and video across different web browsers. It acts as a cross-browser media API and a multi-source video wrapper, ensuring consistent playback controls and behavior regardless of the underlying file format or source. The framework integrates adaptive bitrate streaming for HLS and MPEG-DASH protocols and allows for the embedding of content from third-party hosting services such as YouTube and SoundCloud. It uses a provider-based abstraction to translate generic playback commands into source-specif

    JavaScript
    View on GitHub↗8,297
  • 422658476/mpv-easy-player422658476 avatar

    422658476/MPV-EASY-Player

    1,378View on GitHub↗

    This project is a graphical user interface for the command-line media engine, designed to simplify complex playback management and configuration for desktop users. It functions as a cross-platform media player that provides a visual layer for controlling local and remote video files, hardware-accelerated rendering, and advanced shader processing. The application distinguishes itself by replacing manual text-based configuration and command-line arguments with centralized visual menus. It enables users to manage engine parameters, rendering drivers, and performance profiles through an intuitive

    Luaaudio-playerffmpegjavascript
    View on GitHub↗1,378
  • jplayer/jplayerjplayer avatar

    jplayer/jPlayer

    4,596View on GitHub↗

    jPlayer is a JavaScript library and cross-browser media wrapper used for embedding and managing HTML5 audio and video content. It provides a unified interface to control media playback across different web browsers and formats. The project functions as a customizable media interface, allowing the creation of tailored playback layouts using standard HTML and CSS. It decouples playback logic from the visual user interface to enable custom styling of player controls. The library handles cross-browser compatibility through a playback engine with fallback options for older browsers. It integrates

    JavaScript
    View on GitHub↗4,596
See all 30 alternatives to Player→

Frequently asked questions

What does vidstack/player do?

This project is a framework for building accessible, framework-agnostic video and audio players for the web. It provides a headless library of reactive hooks and modular components that separate playback logic from visual presentation, allowing developers to create custom media interfaces while maintaining full control over styling and layout.

What are the main features of vidstack/player?

The main features of vidstack/player are: Adaptive Streaming Players, HTML5 Media Players, Media Playback Controls, Media Playback UI Components, Headless Component Logic, Accessible UI Components, Event-Driven State Managers, Media Player Accessibility.

What are some open-source alternatives to vidstack/player?

Open-source alternatives to vidstack/player include: mediaelement/mediaelement — MediaElement is a JavaScript library that wraps native HTML5 audio and video elements to provide a unified media… johndyer/mediaelement — MediaElement is an HTML5 media player framework that provides a unified interface for playing audio and video across… 422658476/mpv-easy-player — This project is a graphical user interface for the command-line media engine, designed to simplify complex playback… jplayer/jplayer — jPlayer is a JavaScript library and cross-browser media wrapper used for embedding and managing HTML5 audio and video… clappr/clappr — Clappr is an HTML5 web media player and plugin-based framework used to render video and audio across different web… videojs/video.js — Video.js is a customizable HTML5 video player framework and JavaScript media plugin system. It provides a foundation…