About VoukoderPro in DaVinci Resolve

  • I've been testing the latest VoukoderPro with DaVinci Resolve (with both libsvtav1 and libx265), and almost everything seems to be working great.

    1. To start, I have a simple question. Regardless of the codec I use, I'm always going for yuv420p10le for 10-bit. In DaVinci, you can pick one of multiple options for the "Type" in the render settings, and as you know, most of them say "8-bit", but there's one with "16-bit". I'm assuming I should use the "16-bit" one, however, I've tested them all, and regardless of the one I pick, the output video is YUV420 10-bit (confirmed with MediaInfo). So, my question is, does it really make a difference what "Type" I pick on DaVinci?

    2. Another small issue I'm having is something I posted about before: QuickTime Timecode added to MP4/MOV randomly?. I'm having this issue again while exporting to .mp4. The write_tmcd option is to 0, and sometimes I get a "time code" track in my output file, sometimes I don't. This is problematic for me, because, for some reason, Plex has issues playing files with a "time code" track. For now, the workaround is to encode again until I get an output without that track.

    3. Now for the biggest issue I'm having... I'm trying to compare encodes between Handbrake and Voukoder, and I was expecting very similar results, but I'm not getting them.

    For the Handbrake encoding, I first render a "master" file from DaVinci like this:

    Then I use Handbrake with these settings:

    Which gives me something like this:

    This is good enough for me, and the colours look as expected.

    Now, for the Voukoder encoding, I'm using these settings in DaVinci:

    And these are "My Settings" in Voukoder:

    Which gives me something like this:

    Quality wise, they are pretty much the same, as expected. But colour wise, they are different, and the one rendered by Voukoder is worse.

    The difference is subtle, but maybe this GIF can help see it better:

    Settings wise, I'm not sure what I could be doing wrong, but the colours outputted by Voukoder are not the ones I see on DaVinci.

    • Offizieller Beitrag

    1. The color format (pixel format) / Type setting in DVRS selects how the frame data is sent from DVRS to "Voukoder Pro", the "Format" dropdown in "Voukoder Pros" encoder settings is the format that it should have in the exported video.

    So yes, the rule of thumb is: Select the equal or better format in DVRS.

    If you select a lower format in DVRS it first get upconverted (i.e. from 8 bit to 10 bit), but after all it'd be still 8 bit visually.

    So why didn't I only hardcode only YUV444 16 bit? For speed reasons. The less format conversations we have the faster the export.

    2. Does it really add a timecode track? I'll check this.

    3. Try to set the "Data Levels" in DVRS under "Advanced Settings" to "Video" instead of "Auto". This should help.. For some reason DVRS tells Voukoder Pro the wrong value in "Auto" mode.

    Edit: Did you set the color transfer characteristics on purpose to "gamma22" (bt470)?

  • 2. Does it really add a timecode track? I'll check this.

    Not all the time, but I observed a few instances where it did.

    3. Try to set the "Data Levels" in DVRS under "Advanced Settings" to "Video" instead of "Auto". This should help.. For some reason DVRS tells Voukoder Pro the wrong value in "Auto" mode.

    Tried both "Video" and "Full", neither solved the issue, the colours are still a bit off.

    • Offizieller Beitrag

    Regarding the colors: It was previously overwriting the color range format with the format I got from the filter chain - even if no filter was set. So it overwrote the AVCOL_RANGE_MPEG with AVCOL_RANGE_UNSPECIFIED.

    I fixed this and compared the "Voukoder Pro" colors with the standard DVRS encoder. This looks identical to me. (ignore any encoding artifacts)

    It's best if we compare "Voukoder Pro" with standard encoders in an NLE to rule out NLE issues.

    Can you try this with version 2.0.4?

  • Can you try this with version 2.0.4?

    Vouk Colour wise, everything is perfect now, thanks. But now I'm noticing that the image is slightly less sharpened (compared to a DNxHR HQX 12-bit export from DaVinci); the difference is subtle, but it is there.

    I could work around but increasing the sharpness in the editor, but I think the output should be the same, regardless of method of delivery. Especially since if I export a DNxHR HQX master and transcode it with Handbrake, I keep the original sharpness level.

  • You can change the encoder quality (crf, cqp, bitrate, etc) to receive better image quality.

    That makes no difference. I'm using the same exact encoder and settings in Voukoder (uses DaVinci timeline directly) and Handbrake (uses a DNxHR HQX 12-bit master exported by DaVinci), and the Handbrake version is slightly sharper (and more accurate with that I see on DaVinci). I've tripled-checked and all settings and parameters are the same, and I've disabled all Handbrake filters.

    Maybe the difference is in the FFmpeg version being used by Voukoder and Handbrake?

  • To be clear, I wasn't necessarily making comparisons, that was not my goal. I was just giving an example, and I used Handbrake.

    The same thing happens if I encode from DaVinci with any other encoder other than Voukoder. I can crank up the bitrate in all methods to make sure that all encodes produce the highest quality file possible. The Voukoder version is the only one that has a slight blur applied to the edges compared to all other encodes. This doesn't feel right to me.