DaVinci Resolve and MP4 under Linux

If you try to import mp4 file to DaVinci Resolve under Linux, you will be greeted with audio-only experience if you're lucky or nothing at all if you're not. Unless you're paying customer of DaVinci Resolve Studion, MP4 and AAC are not supported at all.

Conversion to an intermediate format is needed and good old ffmpeg can help here:

Terminal
ffmpeg -i input.mp4 \
-c:v dnxhd -profile:v dnxhr_hq -pix_fmt yuv422p \
-c:a pcm_s16le \
-f mov output.mov

Here I use DNxHR with HQ settings. Even this will generate file that's much bigger than source. How much bigger depends on the source, but don't be surprised to see it grow 16-fold or even higher.

Smaller alternative can be MPEG4 format but with a drop in quality even at its best settings:

Terminal
ffmpeg -i input.mp4 \
-c:v mpeg4 -qscale:v 1 \
-c:a pcm_s16le \
-f mov output.mov

These files can now be used as input to Resolve and editing can commence.

Once done with rendering a conversion to MP4 might be in order again. For this I use settings discussed on Video StackExchange. While the original discussion was for YouTube, I find their recommendations quite good as a starting point:

Terminal
ffmpeg -i render.mov \
-c:v libx264 -pix_fmt yuv420p -crf 16 \
-force_key_frames 'expr:gte(t,n_forced/2)' -bf 2 \
-vf yadif -use_editlist 0 \
-movflags +faststart \
-c:a aac -q:a 1 \
-ac 2 -ar 48000 \
-f mp4 out.mp4

Mind you, all my cameras use YUV 4:2:0 and I don't do any major editing so increasing YUV to 4:2:2 or even 4:4:4 makes no sense nor does increase to 10-bit resolution. Depending on which equipment you have, your mileage may vary.

Leave a Reply

Your email address will not be published. Required fields are marked *