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

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

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
phoboslab avatar

phoboslab/jsmpeg

0
View on GitHub↗
6,498 stars·1,417 forks·JavaScript·MIT·22 views

Jsmpeg

jsmpeg is a JavaScript MPEG1 video decoder and canvas-based video renderer. It functions as a client-side media decoder that processes video frames in JavaScript, rendering them to an HTML5 canvas without relying on native browser video elements.

The project provides a low-latency video player capable of receiving binary media data over WebSockets for real-time streaming. It also supports the progressive loading of static video files via Ajax to allow playback to begin before a file is fully downloaded.

The system includes capabilities for playback state and event management, allowing for the control of volume, seeking, and the triggering of callbacks during playback transitions. It also features configurable video rendering backends to manage the visual appearance and playback behavior of the media.

Features

  • MPEG1 Software Decoders - Implements a custom software MPEG1 video decoder written entirely in JavaScript to translate bitstreams into raw pixel data.
  • MPEG1 Video Decoders - Provides a JavaScript library specifically for decoding MPEG1 video and audio streams for canvas rendering.
  • Low-Latency Video Streaming - Delivers real-time video feeds via WebSockets with minimal end-to-end delay between the server and client.
  • Low Latency Players - Implements a low-latency video player optimized for real-time binary data delivery over WebSockets.
  • Media Decoders - Provides a high-performance decoding system that interprets and renders MPEG media streams from static files or live feeds.
  • MPEG1 Playback Engines - Provides a complete system for decoding and rendering MPEG1 video and audio files directly within a web browser.
  • Software Media Decoders - Provides a software-based media decoder that processes raw streams and static files without relying on native browser video elements.
  • Canvas Frame Renderers - Decodes video tracks and renders each frame directly onto an HTML5 canvas element for display.
  • Client-Side Media Processing - Implements a browser-based decoder that processes video frames in JavaScript, avoiding reliance on native HTML5 video elements.
  • Binary WebSocket Protocols - Uses binary WebSocket protocols to transmit real-time video data with minimal playback latency.
  • Video Renderers - Implements a video rendering pipeline that transforms MPEG1 media containers into visual output using configurable graphics backends.
  • Playback Session Management - Manages the lifecycle and state of video playback sessions, including controls for seeking, stopping, and volume adjustment.
  • Multi-Backend Renderers - Provides a rendering system capable of switching between different output technologies to decouple decoder logic from the display layer.
  • Remote Media Loading - Uses asynchronous fetching to load static video files from web URLs, enabling early playback via Ajax.
  • Progressive Media Loading - Implements progressive loading of static video files via Ajax to allow playback to begin before the full download completes.

Star history

Star history chart for phoboslab/jsmpegStar history chart for phoboslab/jsmpeg

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

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

Frequently asked questions

What does phoboslab/jsmpeg do?

jsmpeg is a JavaScript MPEG1 video decoder and canvas-based video renderer. It functions as a client-side media decoder that processes video frames in JavaScript, rendering them to an HTML5 canvas without relying on native browser video elements.

What are the main features of phoboslab/jsmpeg?

The main features of phoboslab/jsmpeg are: MPEG1 Software Decoders, MPEG1 Video Decoders, Low-Latency Video Streaming, Low Latency Players, Media Decoders, MPEG1 Playback Engines, Software Media Decoders, Canvas Frame Renderers.

What are some open-source alternatives to phoboslab/jsmpeg?

Open-source alternatives to phoboslab/jsmpeg include: clsid2/mpc-hc — This project is an open-source multimedia player for Windows designed for high-performance audio and video playback.… anilbeesetti/nextplayer — Nextplayer is a cross-platform mobile media player designed for playing audio and video from local storage and remote… hooke007/mpv_playkit. ant-media/ant-media-server — Ant-Media-Server is a server-side streaming engine designed for real-time audio and video broadcasting. It functions… alvr-org/alvr — ALVR is a wireless virtual reality streaming tool and headset driver that transmits content from a PC to a headset… alyssaxuu/motionity — Motionity is a browser-based motion graphics editor and video compositor. It provides a visual timeline for creating…

Open-source alternatives to Jsmpeg

Similar open-source projects, ranked by how many features they share with Jsmpeg.
  • clsid2/mpc-hcclsid2 avatar

    clsid2/mpc-hc

    14,378View on GitHub↗

    This project is an open-source multimedia player for Windows designed for high-performance audio and video playback. It functions as a DirectShow-based media renderer that utilizes hardware-accelerated graphics APIs to perform color space conversion and high-quality scaling directly on the display adapter. The application distinguishes itself through granular control over playback dynamics and visual output. Users can manipulate video orientation through rotation, flipping, and zooming, while also leveraging support for high dynamic range rendering. The player supports automated playback sequ

    C++
    View on GitHub↗14,378
  • anilbeesetti/nextplayeranilbeesetti avatar

    anilbeesetti/nextplayer

    3,614View on GitHub↗

    Nextplayer is a cross-platform mobile media player designed for playing audio and video from local storage and remote URLs. It functions as a playback engine that supports various codecs and containers through software-based media decoding. The application features a floating picture-in-picture window for multitasking and an external subtitle renderer that synchronizes and displays SRT, SSA, and VTT files as on-screen overlays. It includes a touch-based interface that maps specific swipe and pinch gestures to volume, brightness, and seeking controls. The project covers multi-source media str

    Kotlinandroidexoplayerffmpeg
    View on GitHub↗3,614
  • hooke007/mpv_playkithooke007 avatar

    hooke007/mpv_PlayKit

    6,473View on GitHub↗
    GLSLmpvmpv-configmpv-player
    View on GitHub↗6,473
  • alyssaxuu/motionityalyssaxuu avatar

    alyssaxuu/motionity

    3,976View on GitHub↗

    Motionity is a browser-based motion graphics editor and video compositor. It provides a visual timeline for creating animated videos and compositions using a layer-based system and keyframe animation tools. The project features a dedicated Lottie animation renderer, allowing users to import and render vector-based files for scalable motion graphics. It includes specialized tools for keyframe animation, using easing functions to control object movement and property transitions. The platform covers a broad range of production capabilities, including digital asset composition, video clip editin

    JavaScriptafter-effectsanimationaudio
    View on GitHub↗3,976
See all 30 alternatives to Jsmpeg→