38 Repos
Frameworks for performing media manipulation directly in the browser.
Distinguishing note: Focuses on client-side execution, distinct from server-side media APIs.
Explore 38 awesome GitHub repositories matching web development · Client-Side Media Processing. Refine with filters or upvote what's useful.
This project is a jQuery-based file upload widget that provides a browser interface for selecting and transferring files to a server. It functions as a chunked file uploader and a resumable upload client, enabling the transfer of large files by splitting them into smaller segments or continuing interrupted uploads from the last successfully sent byte. The tool includes a client-side image processor for validating, resizing, and generating previews of images before transmission. It also serves as a cross-domain upload tool, using various transport mechanisms to send files to different domains
Performs image validation and resizing directly in the browser to reduce bandwidth and server load.
Kazumi is a cross-platform media player and streaming platform that centralizes video content from diverse third-party web sources. It functions as an automated scraping tool, utilizing configurable path patterns and selectors to extract and aggregate media streams into a unified interface. The platform distinguishes itself through its focus on synchronized group viewing and real-time state management. Users can participate in shared virtual rooms where playback progress and controls are aligned across multiple devices. Additionally, the application includes integrated image processing capabi
Applies real-time visual enhancement filters to video frames within the playback pipeline to improve clarity before rendering to the display.
Squoosh is a browser-based image optimizer that compresses and converts image files directly within the local environment. By performing all operations on the user device, it eliminates the need for server-side processing, ensuring that sensitive data remains private and reducing network latency. The tool utilizes a collection of high-performance image codecs compiled via WebAssembly to provide professional-grade file optimization and format conversion. To maintain interface responsiveness during resource-intensive tasks, the application offloads image manipulation to background threads and u
Performs heavy image manipulation and compression directly in the browser to avoid server costs.
Dropzone is a JavaScript file upload library that provides a browser-based interface for capturing dropped files and transmitting them to a server. It functions as a multipart upload client, splitting large files into smaller chunks to increase transmission reliability and bypass server size limits. The library includes a client-side image processor capable of resizing images and correcting photo orientation in the browser before they are sent to a server. It generates image thumbnails and visual previews immediately after selection, and can render previews for files already hosted on a serve
Uses the browser canvas to resize and rotate images locally before they are transmitted to the server.
TVAPP is an IPTV stream aggregator and media content indexer designed to collect and organize daily updated streaming links into a single interface. It functions as a central platform for discovering and accessing free media content by aggregating links from multiple online sources. The application distinguishes itself through its ability to manage M3U playlists and provide live stream management, ensuring that broadcast links remain accessible across different platforms. By utilizing static-asset configuration mapping and remote-source data aggregation, the tool maintains a unified local ind
Extracts playable media URLs from remote sources directly within the application runtime for seamless playback.
Screenity is a browser-based screen recorder designed to capture screen activity and audio directly within a web browser. It functions as a privacy-focused capture tool that handles data locally and includes a web-based video editor for basic media refinement. The project distinguishes itself through real-time screen annotation tools, allowing users to draw shapes and arrows or zoom into specific areas during a recording. It also provides specialized privacy controls to blur sensitive information and apply backgrounds to camera feeds. The tool covers a broad range of media capabilities, incl
Performs video trimming and cropping locally in the browser using binary large objects.
face-api.js is a TensorFlow.js face recognition library and browser-based computer vision API. It provides tools for performing face detection, recognition, and landmark prediction within browsers and Node.js. The library includes a biometric identity descriptor generator that creates numerical vectors to compare identity and similarity between images. It features a facial landmark detection tool for mapping sixty-eight specific coordinate points on a face, as well as an age and gender estimation model. Its capabilities cover real-time facial analysis, including the recognition of facial exp
Performs complex biometric analysis and facial detection directly in the browser to keep sensitive data client-side.
ffmpeg.wasm is a browser-based multimedia processing engine that brings the capabilities of the FFmpeg library directly to the client environment. By utilizing WebAssembly, it enables audio and video transcoding, format conversion, and stream recording to occur entirely within the browser without requiring server-side infrastructure. The library distinguishes itself by executing resource-intensive media tasks in background threads, ensuring that the main user interface remains responsive during complex operations. It manages data through an isolated, in-memory virtual file system, allowing fo
Performs resource-intensive audio and video manipulation tasks locally within the browser.
SponsorBlock is a community-driven platform designed to automate the skipping of specific video segments, such as sponsorships and intros, during playback. It functions as a crowdsourced database where users submit and categorize video timestamps, which are then retrieved by client-side extensions to intercept and skip unwanted content. The system distinguishes itself through a reputation-weighted consensus model, where community voting and administrative moderation ensure the accuracy of submitted data. To protect user privacy, the platform utilizes hash-based retrieval, allowing clients to
Monitors video progress and injects seek commands to skip segments directly in the browser.
Stremio Web is a web-based media streaming client and content aggregator. It functions as a single page application that allows users to discover and play video content directly within a browser. The system relies on community addon integration to fetch media metadata and streaming links from external HTTP plugins using a standardized JSON format. This allows users to organize video content from various remote sources and providers into a unified library interface. The application communicates with backend services through a JSON-RPC interface to manage data retrieval and playback control. I
Provides a browser-based video player to render media streams directly from remote URLs.
omni-tools is a browser-based utility suite that provides client-side tools for manipulating PDFs, media files, and data formats. It functions as a collection of web-based processors and calculation engines that execute directly within the browser without requiring server-side processing. The suite includes a client-side PDF editor for merging, splitting, and reorganizing document structures, and a web-based media processor for resizing, trimming, and converting image and video files. It also features a data format converter that transforms structured information between JSON, CSV, and XML fo
Executes media manipulation tasks directly in the browser to avoid sending sensitive files to a server.
Background Removal JS is a client-side neural matting library that runs a lightweight AI model directly in the browser to compute alpha mattes, removing image backgrounds without uploading any data to a server. It functions as a browser-based image background removal SDK and client-side image matting library, keeping all processing on the user's device to eliminate server costs and preserve privacy. The project provides a cross-platform creative editing engine that produces identical image and video output across web, mobile, desktop, and server environments from a single codebase. It offers
Performs neural image matting entirely on the user's device, eliminating server costs and keeping sensitive data private.
Pixelfed is a decentralized, self-hosted photo sharing platform and social network. It uses the ActivityPub protocol to enable federation, allowing independent server instances to share user profiles, media, and posts across a distributed network. The platform distinguishes itself with a focus on media portability and processing, featuring tools for importing content from Instagram and utilizing client-side WebGL for image filter processing. It employs a driver-based storage abstraction to manage media across local disks or S3-compatible cloud object storage. The system includes capabilities
Uses WebGL to apply visual image filters directly in the browser, reducing server-side processing load.
RecordRTC ist eine JavaScript-Bibliothek zur Erfassung von Audio-, Video- und Screen-Streams innerhalb des Browsers. Sie fungiert als Medienaufzeichnungstool, das die Erfassung von Medien-Streams und deren Export als abspielbare Dateien ermöglicht. Die Bibliothek bietet spezialisierte Dienstprogramme für die Aufzeichnung von Desktop-Fenstern oder ganzen Bildschirmen sowie die Erfassung von 2D- oder 3D-Animationen von Canvas-Elementen. Sie handhabt diese Aufgaben durch die Schnittstelle zu Browser-Media-Stream-Objekten, um Aktivitäten als Videodateien zu speichern.
Handles the conversion and packaging of raw media streams into playable files entirely within the browser.
Macast is a cross-platform desktop application that turns a computer into a DLNA media receiver, allowing users to stream video, music, and photos from mobile devices directly to their desktop. It runs as a background service in the system tray or menubar, listening for incoming DLNA requests without requiring an open application window, and uses the mpv media player for all decoding and rendering. The application distinguishes itself through its extensible architecture, supporting custom renderer logic and third-party player integration. Users can write small code snippets to add features li
Delegates all media decoding and rendering to the embedded mpv library for cross-platform video and audio playback.
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 th
Implements a browser-based decoder that processes video frames in JavaScript, avoiding reliance on native HTML5 video elements.
SVGOMG is a browser-based SVG minification tool that applies SVGO transformations entirely on the client side. It processes SVG files in a Web Worker to keep the user interface responsive, then displays the original and optimized file sizes side by side, including gzipped size estimates. The tool provides a live preview of the optimized SVG markup, rendered directly in the browser for immediate visual feedback. Users can configure which SVGO optimization plugins are enabled or disabled, set numerical precision for coordinates and transforms, and optionally pretty-print the output. Multiple op
Runs SVG minification entirely in the browser using Web Workers for responsive processing.
Plupload ist eine JavaScript-Bibliothek für Datei-Uploads, die eine standardisierte Schnittstelle für die Verwaltung von Dateiübertragungen über verschiedene Browser-Laufzeitumgebungen und Umgebungen hinweg bietet. Es fungiert als browserübergreifende Upload-Schnittstelle und Manager, der Mehrfachauswahlen von Dateien und browserbasiertes Dateifiltern unterstützt. Die Bibliothek zeichnet sich durch spezialisierte Funktionen für den Umgang mit großen Datenmengen und Cloud-Integration aus. Sie enthält einen Manager für stückweise Datei-Uploads (Chunked Uploads), um große Dateien in kleinere Teile aufzuteilen und so Server-Größenbeschränkungen zu umgehen, sowie einen clientseitigen Bildprozessor, um Bilder vor der Übertragung zu verkleinern und Metadaten zu entfernen. Zudem fungiert sie als S3-Direkt-Upload-Client, der es ermöglicht, Dateien mithilfe signierter Richtlinien und Zugriffsschlüssel direkt an Amazon S3-Buckets zu senden. Das Projekt deckt ein breites Spektrum an Upload-Management-Funktionen ab, einschließlich Drag-and-Drop-Unterstützung, benutzerdefiniertem Dateifiltern nach MIME-Typ oder Erweiterung sowie der Möglichkeit, Binärdaten oder Multipart-Parameter zu senden. Es verwaltet zudem den Datenverkehr durch Wiederholungsversuche bei fehlgeschlagenen Uploads und unterstützt domänenübergreifende Anfragen via CORS oder Policy-Dateien.
Uses a browser canvas to resize images and reduce quality to save bandwidth before uploading.
Iptvnator is an Electron-based desktop application for streaming live television and radio. It serves as an IPTV player and playlist manager that supports M3U, Xtream Codes, and Stalker portals, providing a unified interface for organizing and viewing media lists. The application functions as both an internal player and an external player wrapper, allowing users to hand off stream URLs to native third-party media players to bypass browser codec limitations. It includes a dedicated XMLTV program guide that maps external schedule data to live channels for broadcast discovery and catchup feature
The IPTV player embeds a libmpv engine for low-latency playback of IPTV streams directly within the app window.
bootstrap-fileinput ist ein Bootstrap-kompatibles HTML5-Datei-Upload-Widget und Plugin. Es bietet ein anpassbares Interface für die Auswahl und den Upload mehrerer Dateien, inklusive integrierter Bildvorschau, Drag-and-Drop-Unterstützung und clientseitiger Validierung für Dateitypen, -größen und -anzahl. Das Projekt enthält einen Client für fortsetzbare Datei-Uploads, der große Dateien in Chunks zerlegt, um Stabilität bei instabilen Verbindungen zu gewährleisten und Übertragungen zu pausieren und fortzusetzen. Es verfügt zudem über einen clientseitigen Bildprozessor, der Bilder skalieren und EXIF-Metadaten lesen kann, um die Bildausrichtung vor der Übertragung automatisch zu korrigieren. Das System deckt ein breites Spektrum an Funktionen ab, einschließlich asynchroner Dateiübertragungen mit Echtzeit-Fortschrittsanzeige, rekursiven Ordner-Uploads und PDF-Dokument-Rendering. Das Interface unterstützt umfangreiche Anpassungen durch Layout-Templates, benutzerdefinierte Themes und mehrsprachige Lokalisierung mit Unterstützung für rechtsläufige (RTL) Schreibrichtungen.
Resizes images and validates dimensions on the client side before sending them to the server.