38 dépôts
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.
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.
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.
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 est une bibliothèque JavaScript pour capturer des flux audio, vidéo et d'écran au sein du navigateur. Elle fonctionne comme un outil d'enregistrement multimédia qui permet la capture de flux multimédia et leur exportation sous forme de fichiers lisibles. La bibliothèque fournit des utilitaires spécialisés pour enregistrer des fenêtres de bureau ou des écrans entiers et capturer des animations 2D ou 3D à partir d'éléments canvas. Elle gère ces tâches en s'interfaçant avec les objets de flux multimédia du navigateur pour enregistrer l'activité sous forme de fichiers vidéo.
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 est une bibliothèque de téléchargement de fichiers JavaScript qui fournit une interface standardisée pour gérer les transferts de fichiers à travers différents runtimes et environnements de navigateur. Elle fonctionne comme une interface et un gestionnaire de téléchargement cross-browser, prenant en charge les sélections de fichiers multiples et le filtrage de fichiers basé sur le navigateur. La bibliothèque se distingue par des capacités spécialisées pour la gestion de données volumineuses et l'intégration cloud. Elle inclut un gestionnaire de téléchargement de fichiers par morceaux (chunked) pour diviser les gros fichiers en parties plus petites afin de contourner les limites de taille du serveur, et un processeur d'images côté client pour réduire la taille des images et supprimer les métadonnées avant la transmission. De plus, elle agit comme un client de téléchargement direct S3, permettant aux fichiers d'être envoyés directement vers des buckets Amazon S3 en utilisant des politiques signées et des clés d'accès. Le projet couvre un large éventail de capacités de gestion de téléchargement, incluant le support du glisser-déposer, le filtrage de fichiers personnalisé par type MIME ou extension, et la capacité d'envoyer des données binaires ou des paramètres multipart. Elle gère également le trafic via des tentatives de téléchargement en cas d'échec et prend en charge les requêtes cross-domain via CORS ou des fichiers de politique.
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 est un widget et plugin d'upload de fichiers HTML5 compatible avec Bootstrap. Il fournit une interface personnalisable pour sélectionner et uploader plusieurs fichiers, avec des prévisualisations d'images intégrées, le support du glisser-déposer et une validation côté client pour les types, tailles et nombres de fichiers. Le projet inclut un client d'upload de fichiers reprenable qui découpe les gros fichiers en morceaux pour assurer la stabilité sur les connexions intermittentes et permettre aux transferts d'être mis en pause et repris. Il dispose également d'un processeur d'image côté client capable de redimensionner les images et de lire les métadonnées EXIF pour corriger automatiquement l'orientation avant la transmission. Le système couvre un large éventail de capacités, incluant les transferts de fichiers asynchrones avec suivi de progression en temps réel, les uploads de dossiers récursifs et le rendu de documents PDF. L'interface supporte une personnalisation étendue via des templates de mise en page, des thèmes personnalisés et une localisation multi-langue avec support de l'orientation droite-à-gauche.
Resizes images and validates dimensions on the client side before sending them to the server.