HDR video in Firefox for Windows tech retrospective

HDR video is coming to Firefox for Windows users (and has been available for some time on macOS).  This blog post explains how we developed the feature and gives a retrospective on the technical choices we made. A primer on video playback for the web: Video file demux and decode: A video stream generally consists … Continue reading HDR video in Firefox for Windows tech retrospective

Experimental High Dynamic Range video playback on Windows in Firefox Nightly 148

Modern computer displays have gained more colorful capabilities in recent years with High Dynamic Range (HDR) being a headline feature. These displays can show vibrant shades of red, purple and green that were outside the capability of past displays, as well as higher brightness for portions of the displayed videos. We are happy to announce … Continue reading Experimental High Dynamic Range video playback on Windows in Firefox Nightly 148

Shipping WebGPU on Windows in Firefox 141

After years in development, we will be releasing WebGPU on Windows in Firefox 141! WebGPU gives web content a modern interface to the user's graphics processor, enabling high-performance computation and rendering. We're excited about WebGPU because we believe it will raise the ceiling for games, visualization, and local computation on the web. You can find … Continue reading Shipping WebGPU on Windows in Firefox 141

Switching the Linux graphics stack from GLX to EGL

Hi there! This is a guest post from Robert Mader, who contributed enormous improvements to Firefox's graphics stack on Linux. TL;DR In the upcoming Firefox 94 release we will enable the EGL backend for a big group of our Linux users. This will increase WebGL performance, reduce resource consumption and make our life as developers … Continue reading Switching the Linux graphics stack from GLX to EGL

Improving texture atlas allocation in WebRender

This is going to be a rather technical dive into a recent improvement that went into WebRender. Texture atlas allocation In order to submit work to the GPU efficiently, WebRender groups as many drawing primitives as it can into what we call batches. A batch is submitted to the GPU as a single drawing command … Continue reading Improving texture atlas allocation in WebRender