How this tool computes its result
Runs entirely in-browser via MediaRecorder plus HTMLVideoElement.captureStream() -- there is no server-side transcoding. After a file under 300MB is selected, duration and resolution are read from a hidden <video> element's loadedmetadata event. Choosing one of three presets (Safe: 4500kbps video, Balanced: 2800kbps, Aggressive: 1800kbps, all with 128kbps audio) shows an estimated output size computed purely from duration times target bitrate, before any actual encoding runs. Pressing Compress plays the source video in a hidden element while capturing its rendered frames as a live MediaStream into MediaRecorder at the chosen bitrate; the output MIME type is picked from a list of MP4/WebM codec candidates tested against MediaRecorder.isTypeSupported(), falling back from MP4 to WebM (or the reverse) if the requested format isn't supported, with a visible message when that fallback happens.
