Earlier this week I decided to run DaVinci Resolve on Ubuntu 18.04. This was a terrible idea. I spent the last 3 days banging my head against a wall and scouring countless forums, blogs, articles, and all for nothing. Here’s my situation. I have an AMD Threadripper with a pair of RTX 2080TIs that I was trying to use with Ubutnu and Davinci Resolve.
Of course, if you plan to run Davinci Resolve on Ubuntu 18.04, the default Ubuntu install pretty much gives you the generic graphics drivers and it’s up to you to install the ones you need. Since I want to run Resolve, I’ll be needing the latest Nvidia drivers for Linux. Downloaded and installed from the website, but it didn’t work. Installed CUDA, but it didn’t work.
I tried so many different drivers that they started conflicting with each other and it became an even bigger mess than what I started with. I rebooted a ton of times and sometimes the drivers would work, and other times they wouldn’t even switch from the old driver. I tried with and without CUDA and with and without OpenCL, but nothing worked. I couldn’t get anywhere beyond the opening splash page.
TL;DR
Guys, just save yourself the trouble. Seriously. If you’re wanting to run Davinci Resolve on Linux, but you don’t want the official CentOS build… Do yourself a huge favor, avoid the headache and just install Manjaro. Seriously. I was up and running in Davinci Resolve cutting 5K RED footage in 15 minutes. It’s the easiest Linux video workstation setup ever. I’m never going back.
Full disclosure: I’m not being paid to write this. Opinions are my own. This is just my experience. As always, keep your passwords secure, and your sources open. Cheers.
Here’s how to fix write permissions for DaVinci Resolve.
To fix this, just open a terminal and run:
chmod -R 766 /your/problem/drive/or/directory
What’s Going On?
On linux, security is brilliantly built in. By default, files and folders that you create have a set level of permissions (defined by the umask command). Typically, the default is the user (you) have permission to read and write files that you own, as well as search directories you own. All others have read-only access to your files and directories.
Knowing this, other applications (aka Resolve) do not have permission by default to write to hard drives, folders, or files that you (the user) own. So how do we change this?
chmod
To change permissions of a single file or a whole directory, use the chmod command. chmod gives you the ability to change permissions using short, 3-digit number formats. These are known as octal numbers.
Octal Number
Permissions
File Listing
7
read, write, and execute
rwx
6
read and write
rw-
5
read and execute
r-x
4
read only
r–
3
write and execute
-wx
2
write only
-w-
1
execute only
–x
0
none
—
So in the chmod command, you use the above table to define permissions for the file user/owner, members of the file group, and other people, in that order. The -R flag used in the code above, simply makes the command recursive, applying to every single file and folder inside the directory you apply the command to.
Examples
Readable by owner only: chmod 400 examplefile.txt
Allow the owner and group to read, write, and execute, and anyone else to read and write: chmod 776 examplefile.txt
Also, there’s an awesome tool for those of you, like me, who can’t keep all those chmod codes straight!
After this post made it to Twitter, @rohit_bmd made a great point- check Davinci Resolve > Preferences and under the Media Storage tab, you’ll see a list of drives on your system. Make sure you have read/write privileges on the drive at the very top of that list, because that’s where Resolve will be storing all your cache files. Here’s the the tab:
If you’re new to Resolve on Linux, feel free to check out my other posts.
Today I learned that you only have to transcode files to import them into the free version of Resolve. If you’re rocking the full version, then this shouldn’t really apply, unless you have an absolutely crazy file format on your hands.
Didn’t We Already Cover This?
So this stems off a previous blog post from a while back, where I was using ffmpeg to transcode some .MTS files (from a Panasonic/Sony camcorders similar to this) for use in Resolve on Linux. The code snippets from that post were okay… But not great. The biggest problem was that after transcoding, the file size often inflated… I mean DEFINITELY inflated. FFMPEG often defaults to the highest tier of quality in a given codec if you don’t take the time to specify exactly what you want.
ProRes
I really struggled with this because it’s easily argued that ProRes is the codec that is literally designed to be edited. So it’s great to just cut ProRes from the start, right? And I’ve been involved in a lot of professional workflows where the first step is to convert to ProRes. Sounds like a good idea. Except when you consider file size.
Recently, I’ve been getting lots of projects involving mass quantities of footage. Often times I’ll get 3-5 hours of footage, climbing up to 60GB for a single project. Keep doing projects like that and I’ll have to start an Amazon subscription to hard drives… So I’m not in a place where I can afford to transcode 60GB of .MTS into 240GB of ProRes.
MPEG4
Luckily Resolve takes codecs other than ProRes! So I experimented a bit trying to figure out how to transcode a ton of .MTS files into something that Resolve can read, but without inflating the file size to something that’s nearly unusable. After a bunch of trial and mostly error, I came up with a pretty good preset. I even saved it as a text file so I can reference it later and use it in bash scripts.
So here it is, mostly for my own reference so I can go back here and copy it again:
I’ve also tested this export setting with .MOV files that came from an iPhone and didn’t play natively with Resolve. I just converted them using the snippet above, and they played back perfectly in Resolve. Plus with the variable bitrate setting, the filesizes are VERY comparable to the original sizes. Often only off by a few megabytes.
Janne Liljeblad and other contributors released Flowblade 2.0 recently and I thought I’d try it out. I edited a quick 1 minute video from about 10 drone clips shot in 4k. The first impressive feature was how easily I was able to render proxies. It was just as easy to replace them with the original media before the render.
As both a Premiere user and a Linux user, I’ve been on a quest to find an NLE that is just as capable and intuitive as Premiere, but on Linux. So far, I’ve used only a few and had just ‘okay’ experiences. My first Linux based NLE that I dove headfirst into was Kdenlive. I was cutting some footage for a client and built out the complete project in Kdenlive for a few reasons. First and foremost, at the time, I no longer had access to Adobe CC through a former employer. And finally, even if I had $53/mo, I could think of 1,000 things I’d do before I got an Adobe CC subscription.
But I digress, this is a post about Flowblade. My experience with Kdenlive was fine, the hotkeys took some getting used to. The alpha channels weren’t automatic either, but it worked. Flowblade, however gave me a much more ‘automatic’ experience. I’m on an older mid-range GTX-970 machine and 4k footage doesn’t playback smoothly. Regardless, it felt like proxies were easier to create in Flowblade than in Premiere. Just a few clicks and it was done. Updated right there in my timeline. And encoding was a breeze. Once I made my edits, which was a pleasure by the way, All I had to do was choose “replace proxies with original media” and I was all set to render.
Intuitive Experience
There were several hotkeys that carried over from Premiere and others that just made sense. The i and o keys set in and out points, the HOME and END key pops your playhead to the beginning and end of your timeline, stuff like that. The alpha transparency and title card system took some getting used to, but it wasn’t that bad. I feel like color correction is slightly easier in Flowblade than in Kdenlive. That’s just my experience, and the clips I happen to be working on.
Overall, I still can’t completely commit to Flowblade, even though it’s a pretty great application for basic edits. If I were a vlogger and just needed something to spit out videos with speed, I’d definitely use Flowblade for everything. And even as a pro editor, I still may use Flowblade for some quick edits here and there, based on the situation. But as long as Resovlve remains an option for Linux users, it no doubt offers the absolute best postproduction experience so far. The grades are otherworldly. I’ve never had so much control over color. Not even in Premiere. Lumetri Color doesn’t even compete with Resolve.
So far, my only issue with resolve is it can’t take Panasonic .MTS files by default, they have to be transcoded first. And that just may be a “free version” limitation, I’m not sure. Either way, I’m just a few freelance jobs away from picking up a full copy of Resolve for my personal Linux machine, so I’ll keep you posted if my experience changes once I get everything up and running. Until next time.
If you’re like me, you’ve been on a quest to find the best video editing software that you can run on your Ubuntu Linux PC build. If you’ve been in the video world for any amount of time, you’ll probably know that Resolve 15 is arguably one of the most robust tools in the industry. Here’s my experience on running DaVinci Resolve 15 on Ubuntu 18.04
After the initial install, everything seemed to have went fine, but when I clicked the new icon in my application tray… nothing happened. After a few more clicks, I uninstalled it and went on with my life. A few months later, DaVinci Resolve came up in conversation when talking about postproduction solutions for Linux. So I decided to give it another shot. Same issue.
Unfortunately, in Linux_Installation_Instructions.PDF there is literally nothing telling you that you should install dependencies. I ended up finding the required dependencies somewhere online.
After that simple line in the terminal, Resolve fired right up in Ubuntu 18.04 On to the next hurdle: limited file type imports.
Convert footage using FFMPEG.
Only some file types work with Davinci Resolve 15. The ones I’ve tested that work are:
Apple ProRes (.mov)
Motion JPEG (.mov)
If you can afford the space, I’d choose Apple ProRes before anything else. Unfortunately I haven’t found a way to specify 4:2:2, 4:4:4, or HQ preferences. It’s just ProRes, and from the looks of it, it’s the highest quality possible. You may be able to change this with the -q value. Still testing this.
In my 10+ years as a video editing professional, I have never used the motion jpeg codec. However, after running a few tests, playback in Resolve 15 is flawless, and the file size is the same, if not slightly smaller than the original file. My original test file was a Panasonic .MTS file clip at 1.7GB. After the transcode to motion jpeg, the result was 1.6GB, and played perfectly inside Resolve.
The further I tested this transcode setting in ffmpeg, this reduced the file size just a little bit. The biggest clips were originally 4.3GB and the resulting files were hanging out around 2.3GB-2.7GB.
The only way to truly test if this is a viable alternative to Adobe CC on Mac or Windows is to actually test it on a live project with a real deadline. This may have been unwise, but I found it to be thoroughly worth it. I tried the above ffmpeg commands, only to realize after exporting that the resulting transcodes were sub-par. Pixelated garbage in, pixelated garbage out. So this time I hit up Handbrake. This one got me. Handbrake is essentially ffmpeg under the hood, but it doesn’t offer all the options that the command line does. So my exports out of Handbrake looked great, but there was no audio supported. On Ubuntu, Davinci Resolve only supports PCM audio, and that’s the one thing you can’t kick out of Handbrake (at least from the options I have).
New Plan
The original exports from my ffmpeg commands above looked like garbage, but the audio (pcm_s24le) was supported and sounded fine. So I ended up exporting Mpeg4 video out of Handbrake with no audio. I synced those clips up with the existing PCM audio in Resolve, and everything looked and sounded awesome. Next objective, getting an H.264/AAC file out of the free version of Resolve.
Instead, I exported 20-30 minute bits of my 3 hour long timeline as Quicktime MOV files with MPEG4 codecs. They looked and sounded great, but were a touch big on the file size. Next. I just dropped them in order into Shotcut, and encoded the whole thing as H.264/ACC. Done. So for future reference, it probably wouldn’t hurt to just encode everything as Quicktime ProRes PCM, do my work in Resolve, then export QT ProRes PCM as an intermediate, then concatenate in Shotcut or Kdenlive. Kind of a wonky workaround for now, until I can afford the full version.
Notes about the free version of Resolve 15
The editing capabilities of the free version are quite nice, but they clamp down your options when it comes to exporting. First cheap shot: they don’t support H.264 encoding on export for Ubuntu. And at the time of this writing, DNxHD and DNxHR both cause Resolve to crash upon export. So without H.264 and DNxHD/HR… your export options become extremely limited. This is especially true if you have a long (3 hour) timeline that you need to deliver to a client. So is there a workaround? Fortunately there is one, but it requires a bit of hard drive space, extra time, and some FFMPEG knowledge. First, trying kicking out your timeline with these goofy settings:
Here’s the gigantic and disheartening list of features that they hold back from the free version. Also, here’s another magic setting that seems even smaller than Kakadu:
Project Complete
I eventually exported the video in about 10 different sections, using MPEG4 encoded Quicktime MOV files. Decent quality, and decent file size. I ended up assembling all those color graded and sound-edited files in Shotcut and rendering the H.264 MP4 that I was looking to deliver in the first place. A super wonky workflow, but in hindsight, I think it will be worth picking up a copy of Lightworks for my edit work Resolve Studio for my color work, and cutting audio in Resolve’s Fairlight, or if Fairlight absolutely cannot handle the task at hand, I can always grab a copy of Ardour. Those softwares paired with Blender, Kritia, Inkscape, and GIMP, I don’t think there’s anything I’d be missing from Adobe CC that these platforms can’t provide.
If you’re like me, you’ve probably second-guessed how much you’ve shelled out to companies like Microsoft, Apple, Adobe, and others. It costs a great deal to be on the cutting edge of technology, and some software can set you back literally thousands of dollars. Seriously. Have you tried licensing a copy of Maya lately? Let’s check out some free software that could make you money.
It took me a bit of testing out different software, but I think I’ve compiled a pretty decent list that, I’m personally convinced, with enough skill and creativity could completely replace Adobe Creative Cloud.
Operating System
First up, I’m going to start with the most basic. The operating system. Most people think computers fall into 2 categories: Mac vs PC. Well, PC just means ‘personal computer’ so… every consumer computer falls into this category, but- I digress. A great open source alternative to Mac and/or Windows is Ubuntu Linux. There’s TONs of documentation out there and a mega community who supports it.
Update January 2020: I’ve been using Manjaro on both my work and home machines, and I find it much easier to set up out-of-the-box, and there’s much more support for my video editing applications. I write more about that here.
Photoshop
Photoshop is no doubt the industry standard when it comes to image retouching and manipulation. But few people know of a great open source alternative to Photoshop called GIMP. GIMP is an acronym that stands for GNU Image Manipulation Program. Kind of an unusual name, but a stellar piece of software available for free. An excellent choice for users who only need to do minor editing and retouching every now and again.
Premiere Pro
This one is a tough one, I’m not going to lie. Depending on how much video you need to edit, how big the project is, and how often you need reliable editing tools, there may not be much of a choice here. Just to be fair, this comment is coming from someone who makes his living and supports his family editing video. If that’s not you, Kdenlive is an excellent choice to edit just about any video you might need.
Another piece of software on this list is Shotcut. It’s a little more scaled back as far as the technical capabilities, but it’s still able to do some basic edits. I haven’t logged more than a few hours in Shotcut, but it can handle basic edits for small applications like vlogs and home movies. If you need more technical control, I’d check out Davinci Resolve, or Kdenlive.
Also, this one’s kind of an honorable mention, but just to be clear, this is NOT open source software, but it is excellent (the Hollywood gold standard) software in color correction, and more recently, video editing. It’s now available as free software that can be used with Mac, Windows, and Linux. That of course, is DaVinci Resovle. Definitely worth checking out.
After Effects
Again, another toughie, because of the way that this program operates. After Effects is a layer-based compositor, which is the only compositor that I am aware of that operates in this fashion. It makes sense when you view it as a part of Adobe CC as a whole, because Illustrator, Photoshop, Premiere Pro, Lightroom, and others are all layer-based. However, there are a few node-based compositors that are open source that I can suggest. The first, and definitely the most battle-tested is Blender. Easily the most powerful software I’ve ever come across. Another option would be Natron. Natron is more up-and-coming than Blender, but still something to keep an eye on.
If you’re already checking out Davinci Resolve, then you’ll already have Blackmagic Fusion which comes bundled with Resolve. Admittedly, I have limited experience in Fusion, but from what I gather from coworkers and others who have used it, it’s more than capable for graphics and VFX. It’s a node-based platform much like Blender, Natron, and Nuke, so if you’re coming from a node-based platform, you should feel comfortable pretty quickly!
Illustrator
Illustrator is a great platform for creating vector art for use in large-format work like billboard design or design works that require your images to be flexible, such as a web environment. It’s is included in Adobe CC, but there’s also a great open source alternative called Inkscape. An amazing tool for creating vector art and logos, and available for Mac, Windows, and Linux.
Audition
Again, if you’re checking out Davinci Resolve, you’ll get another built-in program called Fairlight. My experience at the time of this writing is zero with Fairlight, but from my brief glances at the interface, it looks absolutely capable.
Another powerful option is Ardour. Conveniently enough, Ardour is available to download and install via the Ubuntu Software Center.
Missed Something?
Drop a comment below, or shoot me a message, and I’ll add to this list!