Improved Grain in Darkroom: Fast, Smooth, and More Natural

Jasper Hauser
4 min readJul 13, 2021

--

Today, we’re releasing a change to our grain slider that increases performance, reduces memory-use, and refines the overall look. The grain applied to your existing photos will feel the same, but will look closer to analog film grain and have a more consistent grain structure. This update also allows us to export videos with grain more efficiently, while improving stability and render time.

When we originally released our grain tool 2 ½ years ago, we modeled our grain tool after film sensitivity. When you drag the grain slider from left to right the grain starts off subtle and small, and as you move it to the right it becomes chunkier and more noticeable. The result is a grain tool that's intuitive and simple, but doesn’t hold back your creativity.

The Darkroom grain slider tool.

There are many technical reasons why you may want to introduce film grain to your photo, but artistically it’s about richness and nostalgia. It introduces an emotionality and a mood to your photo that the often clinical look of tone mapped, de-noised digital digital images of today cannot capture. Head over to our original grain release post for more context and tips on when and how to use grain.

Luminosity Curve

Our original implementation of grain, similar to several other popular editors, uniformly applied grain regardless of how light or dark the underlying region was. This resulted in grain looking like it wasn't mixed with the image, and was layered on top of the image. This caused more noticeable grain in lighter areas of your shots and is not an accurate representation of how film grain behaves.

Our new grain fixes this by integrating the grain using a luminosity curve, giving you a look closer to the real thing. Analog film grain is most noticeable in underexposed shadow and dark regions because there are not enough photons to activate the grain, while in bright and well exposed areas grain is barely noticeable. Our luminosity curve is modeled exactly that way, resulting in much more natural looking grain, one that is now more subtle in light areas and more pronounced in dark areas.

Edge Blending

We also changed how we handle edge blending at the extreme of our grain tool slider. Before we used to noticeably blur the image and apply grain on top at the extreme end, which could result in a somewhat unsharp effect. Our new approach is more nuanced, and creates a much nicer rougher edge blending, resulting in sharper looking photos.

Uniform Grain

Our previous grain implementation had some specific shortcomings in the uniformity department. This time around we went as far as using laser recorded grey of Kodak 5274 film stock as a reference to benchmark and model our own grain generator off of.

Generating full frame of uniform random grain is computationally expensive. To make it performant we only generate small grain patterns, and smartly puzzle them together by randomly rotating and placing them around. All to ensure that you won't ever be able to spot patterns, tiles, edges, lines or pixel clusters that look like dust and scratches, especially when applied to evenly colored regions of your photo or video.

Video Optimized

Last, but certainly not least, our grain slider is now fully optimized for video. We made sure it's highly performant for both high resolution and high FPS playback. To ensure that grain is more subtle and natural looking when applied to video, we automatically adjust the grain size to be smaller specifically for video, as it tends to be lower resolution than that of photos.

Various other Improvements

In this update we’ve also spent a bunch of time improving the crop tool, addressing many memory issues, and a large variety of other issues around the app. We still have a lot of work to do, and we are focused on quality and refinement since that is a core value of ours. For a full detailed list of all changes please visit our updates page.

Please send in reports of any issue you see, large or small. If there’s something you’d like to see in the future please let us know by sending us an email or tweet at us on Twitter.

As always, we’re very thankful for your continued loyalty and support, and look forward to sharing everything else we have in store for you.

The Darkroom Team

--

--

Jasper Hauser
Jasper Hauser

Written by Jasper Hauser

Co-Founder/CDO: @usedarkroom. Product Designer & Strategist. Previously: Design Manager @ FB, Co-founder @ Sofa, Alumni @ Disco & Camino.