Felipe Martínez


How to export DNxHD / HR from DaVinci Resolve and not wash out the colors

Still: “Que Sean Verdad los Cuentos”, Short Film, Directed by Laura Zacanini

Still: “Que Sean Verdad los Cuentos”, Short Film, Directed by Laura Zacanini

After you spend hours, days, weeks or even years working hard in your next award winning grading project, there’s nothing more frustrating than don’t getting the same result when you actually do the export


Learn how to deliver your final grade from DaVinci Resolve
on DNx codecs without dying in the attempt!

First things first: What is DNxHD and DNxHR?

I don’t want to spend too much time explaining the whole definition and technical aspects of this codec because I suppose this is familiar to you. However a ‘Wikipedia definition’ may be a good introduction to what we are talking about when we mention DNx codecs. Also you can check the official documentation from Avid. Go ahead!

Avid DNxHD (“Digital Nonlinear Extensible High Definition”) is a lossy high-definition video post-production codec developed by Avid for multi-generation compositing with reduced storage and bandwidth requirements… DNxHD is a video codec intended to be usable as both an intermediate format suitable for use while editing and as a presentation format. DNxHD data is typically stored in an MXF container, although it can also be stored in a QuickTime container. — Via: https://en.wikipedia.org/wiki/Avid_DNxHD
Avid DNxHR, which stands for “Digital Nonlinear eXtensible High Resolution”, is a lossy UHDTV post-production codec engineered for multi-generation compositing with reduced storage and bandwidth requirements. The codec was specifically developed for resolutions considered above FHD/1080p, including 2Kand 4K8K resolution is currently not supported. — Via: https://en.wikipedia.org/wiki/DNxHR_codec

I’m a Mac user, I use ProRes and I don’t care about Avid codecs!

Well, you’re right but not completely. If your entire workflow is done across a Mac Platform and you don’t need to deal with a team that is using different S.O. like Windows or Linux, lucky you! You can enjoy working with Apple ProRes codec from the camera to the deliverables. But in my situation, I have to deal every day with a team that uses different platforms and since ProRes is a codec conceived specially for Apple, people using Windows (for example) have always trouble dealing with it. They can (sometimes) read the codec, but they can’t export ProRes in their Windows machines unless they have a pluginthat allows it.

Technically DNx is quite the same as ProRes. Although, even if I feel that DNx is not so friendly, sometimes you do need in order to keep your workflow ‘flowing’. I use DNxHD and DNxHR codecs to share deliverables from DaVinci Resolve in the highest quality possible. This codec is very useful as a final deliverable or even if you need to share a project with your VFX collaborators working on Windows. Of course, you can use other codecs and containers but for now we are only talking about DNx codec and the headache you can get if you don’t pay attention to some details.


Some colleagues are suffering!


As you can see, we’re not alone on this issue. Many people are asking why they can’t export DNx in the same way they export ProRes. The reason is that each codec manages the Data/Video Levels in different ways, even the most common NLE and Compositing Software doesn’t deal with Data/Video Levels like DaVinci Resolve does. That’s the reason why sometimes you don’t get what you see when you render from DaVinci and then import this render (clip) into other softwares such Adobe Premiere or After Affects for example. That’s why you get an image with wash out colors and less contrast. This can be a huge mess!

Patrick Inhofer, from Mixing Light, has an excellent explanation for this in his Insights Library. I suggest you to check this article in order to understand what the hell is Data/Video Levels and why it matters that much in the post production world. You need to have a premium account to watch the video so I recommend you to create a free account to get 24h free access (however, the information in this website is so terrific that you should consider the idea of getting a paid account in the near future).

Because the Data Level or Video Level choice is almost always dictated either by the codec of your source footage or the codec you’re rendering to. And 98% of the codecs we’re using are designed for Video Levels. Depending on your mix of codecs in the Media Pool, you may have a mix of Data Level or Video Level codecs… and that’s okay. DaVinci Resolve should handle this decision for you 98% of the time. Almost always you should leave the choice set to ‘Auto’
— Data Levels or Video Levels: How To Choose Wisely

What about exporting DNx Codec and not wash out the colors?

Okay, let’s get to the heart of the matter! According to my experience with DaVinci Resolve, all you need to do is “push” the codec to Full Levels (Data Levels) in the Deliver Page. DNx will always use Video Levels which means “legal values” vs Full range. It is part of the codec and you don’t need to worry about this unless you have to fit your workflow into an explicit RGB pipeline. What I mean is, if you need to deliver the project from DaVinci to Premiere, Avid, After Effects, Nuke, etc. and for a good reason you need to do this using Avid Codecs (for example because your VFX team use PC instead of Mac), please take a look at your Data Levels and don’t leave them on “Auto”. Let’s have a look together at these following steps:

1. Select the container (format): Quicktime or MXF


2. Select the Codec: DNxHD (up to Full HD) / DNxHR (up to 4K)


3. Data Levels: Clic on Advanced Settings and set up Data Levels on “Full”


What happens if I don’t do this?

As I said before, if you don’t set the codec to render at Full Data Levels, what you’re probably gonna get is a video with wash out colors and less contrast that the video you are watching in your playback inside Resolve. So take a look to the Lumetri Scopes inside Adobe Premiere CC reading the same delivered image with and without Full Data Levels from DaVinci.