About this project

Mediabunny is a JavaScript library built in pure TypeScript for processing media files directly in web browsers. It enables reading, writing, and converting video and audio files without external dependencies. The toolkit supports container formats including MP4, MOV, WebM, MKV, HLS, WAVE, and audio formats like MP3, Ogg, ADTS, FLAC, and MPEG-TS. It handles over 25 video, audio, and subtitle codecs using the WebCodecs API for hardware-accelerated encoding and decoding. Capabilities include transmuxing, transcoding, resizing, rotation, cropping, resampling, and trimming operations. The library uses streaming I/O for memory-efficient processing of large files and is designed to be tree-shakable, allowing developers to bundle only required features. It extends to server environments via the @mediabunny/server package for Node, Bun, and Deno.