Blackmagic DaVinci Resolve on Linux

27/04/2021 - 09:50
No votes yet

Blackmagic Designs DaVinci Resolve is one of the most powerful video editing suites available and there is a Linux version available. There are some quirks when using Resolve under Linux and this guide will help you with those.

There are two versions available of Blackmagic Design DaVinci Resolve, the free version and the paid studio version:

  • Free version - Free to download and use. It has some limitations on used export resolutions, available plugins and some features (noise reduction, audio and video encoders/decoders). For many users this version does pretty much everything you might need.
  • Studio version - Relatively cheap (~300€) version that has no limitations, all features are available. This version required a license, either a registration code (allows two installations) or a USB license dongle (that must be connected at all times). Updates from major and minor versions have been free so far. Unfortunately, even with this paid version, there are encoder and decoder limitations under Linux. If you need to work with interlaced material, noise reduction and all possible video effects, then you need this version.

DaVinci Resolve is obviously not free software, open source or anything close to that, but it does use plenty of open source software internally like Qt and FFMPEG. (Yep, ffmpeg, the all decoding and encoding video tool. The irony...)

Hardware and software requirements

Resolve does have some hefty hardware requirements, a powerfull CPU and GPU with plenty of VRAM is required, especially if working on anything higher than Full HD or using GPU specific features like noise reduction.

  • 16GB memory minimum (for very simple work 8GB will work)
  • NVIDIA GPU highly recommended
  • AMD GPU should work too, but some effects are CUDA only

Any decent Linux distribution should be OK, the officially supported is some very old CentOS but who uses something like that ? Experience has shown that Linux Mint for example works perfectly, so any Ubuntu derived distribution should be OK. Make sure you have up to date NVIDIA drivers and that your GPU is supported, minimum CUDA version is xxx and at least 4 GB of VRAM.

Download DaVinci Resolve

You can find downloads to the latest versions and also old version (great if your CPU/GPU is not up for the latest and greatest!) at Blackmagics support site, Latest downloads section. Be sure to pick the right version, if it has Studio in the name then you need to buy a license code or a dongle.

Decoding and encoding limitations

Both the free and studio versions have very limited support for both audio and video decoders and encoders. The Studio version is a bit better in this regard but still much worse than on Windows or OS X.

Video decoder limitations

The free versions has a very limited support for video decoders in all supported operating systems, but especially limited under Linux. The de-facto standard (consumer) video formats that are used everywhere like h264 and h265 are not supported at all. Fortunately there are workarounds, a bit time and space consuming, but still, easy.

Video encoder limitations

There are also limitations in the encoding part, or exporting formats. Here too h264 or h265 is not supported under Linux in the free version. Quality wise it is also recommended to export in DNxHR and to the final h264 encoding with ffmpeg anyway.

Audio encoder limitations

Audio encoding support is very bad in both versions, even the paid Studio version won't export anything other than uncompressed PCM. Blame idiotic software patents for this. There is no support for any standard encoding (Advanced audio coding, aac) formats under Linux. Using uncompressed PCM audio is the best (and only) option and then re-muxing with ffmpeg and compressing the audio, see below for examples.

There is nothing wrong with uncompressed audio, it is the best quality you can have after all. The issue is with playback, not all software and especially consumer hardware supports it in video containers.

Workarounds for encoder and decoder limitations

FFmpeg to the rescue! It does add an extra step, but not a big deal.

Operation FFMpeg command
Encode audio, copying video ffmpeg -i video-h264-audio-raw-pcm.mov -c:v copy -c:a aac video-h264-audio-aac.mov
Extract audio to raw 16-bit PCM .wav ffmpeg -i video.flv -c:a pcm_s16le audio-only.wav
Encode to DNxHR-HQ and PCM audio ffmpeg -i video.mov -c:v dnxhd -profile:v dnxhr_hq -pix_fmt yuv422p -c:a pcm_s16le video-dnxhr-gq-raw-pcm.mov
Re-mux video, decode audio to PCM ffmpeg -i video.mov -c:v copy -c:a pcm_s16le video-encoded-audio-raw-pcm.mov

Speed Editor keyboard

The Speed Editor keyboard should work fine with 17 (initial support in beta 4) using USB (Bluetooth support unknown).

You might need to fix the device access with a udev rule like:

KERNEL=="hidraw*", ATTRS{idVendor}=="1edb", ATTRS{idProduct}=="da0e", MODE="0660", TAG+="uaccess"

Other limitations

  • Audio input/recording does not work

Related resources

Color grading and color management

Keywords: 
Blackmagic, FFmpeg