
How We Made Screen Recording Work on Every Browser
Our screen recorder was Chrome-only for months. Safari users couldn't record at all. Firefox users got a cryptic error. And anyone who recorded on Chrome still produced WebM files that needed server-side transcoding before Safari users could watch them. We shipped a fix in v1.60.0 that makes recording work on Safari, Firefox, and Chrome — and eliminates most transcoding entirely. Here's what we changed and why. The problem: hardcoded WebM The original recorder had this: const recorder = new MediaRecorder ( screenStream , { mimeType : " video/webm;codecs=vp9,opus " , }); This worked on Chrome, which supports VP9 WebM recording. But it fails on two other major browsers: Safari doesn't support WebM MediaRecorder at all. It supports video/mp4 recording (since Safari 14.1), but not WebM. Calling new MediaRecorder(stream, { mimeType: "video/webm;..." }) throws a NotSupportedError . Firefox supports WebM recording but with VP8, not VP9. Passing video/webm;codecs=vp9,opus throws because Firefo
Continue reading on Dev.to JavaScript
Opens in a new tab

