FFmpeg.WebAssembly

A pure WebAssembly port of FFmpeg that enables video and audio processing directly in the browser. It provides an API to run FFmpeg commands for transcoding or editing media on the web.

Link

Related resources

  • hevc.jsHEVC decoder in WASM transcribed directly from the H.265 spec, pixel-validated against ffmpeg on 128 streams; ships as a dash.js drop-in pl…
  • FOSDEM 2024: FFmpeg VVC DecoderFOSDEM Open Media devroom talk on the native in-tree FFmpeg VVC decoder implementation (distinct from wrapping external vvdec).
  • drm-video-processingStep-by-step scripts using FFmpeg and Shaka Packager to encrypt/decrypt video with multi-DRM (Widevine/PlayReady/FairPlay), producing CMAF…
  • auto-transcode-watcherPython+watchdog+FFmpeg folder watcher with file stabilization, retry queue, rename templates, and YAML config.
  • distributed-transcoderDistributed video transcoding system using RabbitMQ job distribution, GStreamer transcoding, and MinIO storage with FastAPI/React interface.
  • nano-hevcMinimal educational HEVC encoder written in pure Python, readable-over-fast, for teaching codec internals.
  • Opus (xiph/opus)Reference implementation of the Opus audio codec, recently adding deep-learning-based packet loss concealment.
  • dav1d.wasmWASM port of the dav1d AV1 decoder, SIMD-optimized with TypeScript interfaces, aimed at production use in browsers.
  • FOSDEM 2024: VVdeC<>Arm — Optimizing an Open Source VVC Decoder for Arm ArchitecturesFOSDEM Open Media devroom talk detailing Arm-specific performance optimization work on the open-source VVdeC VVC decoder.
  • Differentiable VMAF Re-implementation on PyTorchDifferentiable PyTorch reimplementation of VMAF metric enabling gradient-based codec/RDO optimization, with companion code.