New Film Grain Synthesis Specification Now Available from AOMedia

2 minute read


There’s a new way for filmmakers to preserve the textured, organic look of traditional film grain in their work thanks to the Alliance for Open Media (AOMedia). In January 2024, we released a new standalone film grain synthesis (FGS) specification, called AFGS1. The specification is ready to be used with most modern video codecs without modifications to the underlying codec. This technique is utilized in digitally captured videos to help directors influence the mood of their visual media and allows reduced bitrates while achieving similar or better visual quality.

The new spec defines ITU-T T.35 registered user data to carry the FGS model parameters. This may be encapsulated in any container format that supports ITU T.35 signaling, such as SEI messages, for example. Devices that support AFGS1 can generate film grain according to the transmitted model and add the film grain to the decoded video.

You can access the specification and provide feedback on our GitHub repository.

An Important Visual Tool for filmmakers

Film grain serves as a versatile tool for supporting artistic intentions. Its characteristic "movie look" fosters atmospheres from nostalgic to contemplative, and from comedic to terrifying. Despite its expressive potential, film grain poses challenges for video codecs that use conventional coding tools. Many video encoders struggle to maintain film grain integrity while compressing video to specific bitrates, often resulting in distortion or removal.

The new AFGS1 technology can be used to compress video with film grain significantly more efficiently while preserving the film grain in the reconstructed video.

Building on Previous Success

The specification employs the identical film grain model used in the AV1 film grain synthesis tool, applying the same reference algorithm to the decoded video. Preliminary tests indicate that existing AV1 film grain synthesis implementations can be adapted to support AFGS1 by integrating AFGS1 parsing and updating the firmware accordingly.

AFGS1 also adds some optional features to AV1 film grain synthesis, such as applying film grain at a higher (e.g. display) resolution than the decoded video resolution.

Thanks to the Contributors

A number of our members put extensive time and effort into the creation of AFGS1:

Neil Birkbeck (YouTube) worked on AV1 FGS.

Access the Specification

You can learn more about how the specification works on Andrey Norkin’s blog. The specification can be accessed on GitHub.

Review and Provide Feedback