{"repo":"spite/ccapture.js","free":true,"listed":false,"github":"https://github.com/spite/ccapture.js","clone":"git clone https://github.com/spite/ccapture.js.git","description":"A library to capture canvas-based animations at a fixed framerate","language":"JavaScript","stars":3763,"topics":["capture","javascript","canvas","video","webm","gif","png","jpg","ffmpeg"],"license":"MIT","category":"media-processing","readme_excerpt":"CCapture Capture canvas-based animations at a fixed framerate , with motion blur and modern encoders — a ground-up rewrite of CCapture.js (ES modules, WebCodecs, GPU motion blur, async / await ). Your animation renders as fast (or as slowly) as it needs to; CCapture lies to it about what time it is, so the exported video is perfectly smooth at exactly the framerate you asked for — 30, 60, 240, whatever. Record a 4K frame that takes two seconds to draw and still get a flawless 60fps file. That's it. After 5 seconds an .mp4 downloads. No await , no restructuring. CCapture is the unified, plug-and-play recorder. It's composed of two pieces you can also use on their own: FrameWrap (canvas capture — motion blur + encoding) and TimeWarp (the virtual clock). --- Table of contents - How it works - Install - The least-intrusive API - Adding it to an existing sketch - Options - Formats & encoders - Custom encoders - Motion blur - Methods & events - Recipes - Using TimeWarp on its own - Using FrameWrap on its own - The hookDate trade-off - Migrating from CCapture 1.x - Browser support & caveats - Examples - License --- How it works The idea (à la ryg's kkapture) is to replace the browser's notion of time with a virtual clock that only advances one fixed step per captured frame. Anything that derives motion from elapsed time then steps deterministically, decoupled from wall-clock. The library is three composable pieces: - TimeWarp — owns time. Hooks performance.now , requestAnimationFram","default_branch":null,"files":null,"tree":[],"storefront":"/r/spite","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/spite/ccapture.js/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}