Backstage: why Olive Video Editor is a big deal
Added 2019-12-11 13:45:14 +0000 UTCAs you know, I make videos about music production with Linux and open-source software.
I have decided long ago to only use libre programs in my production, so I can really show what it can do, not just in audio space, but also visual and audio-visual.
Making videos is hard. Making good videos is harder. It's even harder if you're missing tools necessary to fulfill your vision or the tools break halfway through the process, rendering your work wasted. It's dreadful.
That's how I felt about open-source video editing for many years. For the simplest tasks - it's ok. But if you start pushing the limits and getting creative, seams start to appear all over it, and you find yourself fixing problems you didn't even know were possible.
I've been making videos for many years, constantly trying to up my game and balance the workload to stay productive (I tend to over-complicate things for myself) using various libre video editing programs. In fact - I think I've tried nearly every single one there is.
I did that first to get a good head-start - what's the best free software available for Linux that'll let me edit videos?
Later I was doing the research trying to ease the pain of editing my videos, while keeping away from proprietary software. I was struggling and I needed something better.
At some point I was so beat down by the sheer frustration of things breaking without apparent reasons, that I had considered using DaVinci Resolve. If you know me, you realize that it was truly the darkest hour.
And then I found Olive.
I've been using Blender's VSE for many years, but long-standing bugs and lack of development in that area had me researching other options and finally switching to Kdenlive. That was a big improvement, as Kdenlive had many tools I was missing in Blender. Title cards, audio effects, a lot of video effects. However soon I realized Kdenlive has its own set of problems and limitations. And unfortunately it isn't any faster than Blender for what I needed.
When I first heard about Olive I was skeptical and bitter. I thought to myself: "Oh great. Another useless* libre video editor. I've seen too many of these!"
*I apologize for this word, but this is how I felt
Over the years I've tried Blender, Kdenlive, PiTiVi, Flowblade, Shotcut, OpenShot.
Cinelerra GG failed to run on my system so I didn't really use it... but I tried.
They all have their strong and weak points, but none of them utilizes my hardware above 10% and none has let me make the videos the way I wanted without making me pull my hair out. And I have a lot of hair to pull out.
But I gave Olive a try. And it has made me speechless.
I was never before able to edit video at target frame rate (usually 60) without even using proxy (offline footage). And no other editor was able to keep up the performance once I started doing any compositing or effects - and I often use picture-in picture compositing. Nowadays I use green screen - but it wouldn't be feasible or good-looking without Olive. I've tried that in Kdenlive using a black screen - it has always resulted in me editing at 3 FPS.
I've started throwing more and more stuff at it, but Olive just kept on going at full 1080p resolution and full frame rate of 60 FPS, no matter how many effects or compositing layers I added...
I've soon learned it has it's limits too, but it was and 9 months later still is an order of magnitude above everything else I have ever seen. It was mind-blowing.
Olive has let me play and test my compositing in real-time, while before I was only able to see it single-digit frame rates. You may think it's because I used ancient hardware. Not so much - I've built a studio machine on Ryzen 7 1700 CPU, an Nvidia GTX 1060 (recently swapped for a Radeon RX 580) and 32 GB of DDR4 RAM. But no open-source video editor so far utilized more than 10% of the CPU processing power, and any of the GPU capacity while stuttering badly. I was using some hacky scripts to render my videos in multiple chunks at once, to concatenate them later, but it sometimes created issues (like occasional audio clicks and stutters in this video)
About an hour after first starting up Olive I have done something I've never done before - I've pledged to it's Patreon campaign.
So far I've only been at the receiving end of crowdfunding. I see many people thank me (in comments, messages or e-mails) for my work, saying that they're learning a lot from the videos I make, that they are discovering the open-source audio ecosystem and they are excited about it because of my videos. More and more people decide to support my efforts financially.
For the first time I felt that I need to redirect a part of that support to someone else. That day I also recorded a video (and edited it with Olive - having an absolute blast) expressing my excitement for it and my built-up frustration of not having something as good at it before.
And when I started exporting that first video edited with Olive - my 8-core CPU actually was using all the cores, and my GPU was at 50% load, rather than idle. My hardware was finally doing the work!
I've soon learned that Olive performs all image processing with GLSL shaders - that's why it's so fast. I was wondering why no other libre software does that already.
But Olive challenges the current libre video editing limitations on so many other levels! It's user interface is exceptionally clean and customizable. It has editing tools I have never seen in other open NLEs, that let me do the cuts much faster. It handles multiple audio streams in video files which allows me to up my production quality (sound mixing) and simplify the post-production process.
It is also exceptionally easy to extend - I was able to create my own Despill effect by creating a shader and an XML file. I would never been able to do that in Blender or Kdenlive, as the barrier to entry was way too steep. But because Olive uses regular GLSL shaders - I was able to extend it and contribute, even though I'm not a programmer. It has let me get the best-looking green-screen effect to date, and it plays back at full frame rate! I've committed my work and now everyone can use this effect in Olive.
Another great thing about Olive is that it's free of the burden of legacy. Most video editors in existence - including the proprietary ones - are quite old and are built on concepts from the past decades. Olive is a very young project that manages to not follow the bad habits of other programs. Yet I think it takes the best well-established and well-working concepts, making it strangely natural to use. At least for me.
My wife used to joke Olive is my lover, because I was talking about it so much. It has really changed my video-making experience and has taken a lot of frustration out of it. Now after using it for 9 months I have got used to it's performance, and I think I've fully explored it's power and limitations.
And I stand by everything I've written. Olive is the first open-source NLE that I believe in the long run has a chance of challenging the industry standard proprietary tools. Matt has proven to be an excellent designer and developer. Olive in it's Alpha stage is to me far more production ready than any other FOSS NLE. I use it for all my video work and I am anticipating it's development
Matt is working on a new pipeline allowing for node compositing, full color management and a performant timeline cache system to support the above - all using industry-proven open standards like OCIO, OIIO, and OTIO.
It's a lot of work, but if it succeeds and maintains the reliability and polish I've been enjoying so far - it's going to rise the production possibilities in our community to yet another level. And I think it's not only going to make my life easier, but also promote the idea of open-source among people who are ignorant to that - simply because it's an excellent piece of software. Olive will be the OBS of video editing.
I don't have a camera that captures 10-bit video, but this upcoming new core makes me want to get one. Indie film makers should be very excited for this.
Ever since I've discovered it, I recommend Olive to anyone and everyone who wants to either learn video editing from scratch or switch to a libre program. I don't see anything else that'd give them a better experience so far.
Especially that it runs not just on Linux, but also Mac and Windows - and if we want more people to learn Linux and fall in love with it - it's only a good thing to give them the taste of freedom even if they're using a different platform. A smell of freedom one might say. And I see other Linux-loving creators picking up Olive as well, I see people making tutorials about it and with it. And I use it all the time myself.
A reliable and fast video editor capable of handling a lot of data is a fundamental tool in the modern world. Video is the most powerful non-interactive medium we have. The FOSS ecosystem needs a good libre video editor. And I think Olive is the first one that actually seems to understand what the users need, and how to deliver that, not just at the absolute basic level, but allowing for more complex things to be made. Despite the "alpha" tag it holds up very well in my experience.
Of course I am biased, because my exposure to proprietary video editing tools is minimal.
Olive has still a long way to go, but it took an excellent first step. One might say it's a bit stripped down at the moment, missing a lot of bells & whistles. But it provides something we hadn't had previously - a rock-solid and modern core for video editing, with no compromises.
What is there - works reliably. I had so little crashes or real issues with Olive that it's almost hard to believe. I have discovered a few bugs, sure - but nothing really bad.
I far prefer this to a Golem-like approach, where projects add up more and more features, while the core functionality is already cracking. I was never able to really use these features in the end, and all I did was learn how to scream elaborate insults at my monitor.
I hope that Olive can continue to grow (any time I check on Github I see Matt is pushing almost daily) there's a lot to be done, but I've never been as excited about a video editor in my life. I want to always keep my toolchain open-source and Olive has given me a new hope in this regard.
It has let me make videos about free software faster, better and with 100% less cursing. You may know I'm also making official video training for Ardour. Olive has enabled me to significantly lift the production quality of these videos and focus on the end result rather than on fixing issues and reporting bugs.
This article was supposed to be just a quick note about my experience and story with video editing, but turned out to be quite a longer one. Sorry.
Olive has given me back the joy of editing videos, that I've lost while struggling to make my vision a reality. I wanted to make videos that will teach, entertain and inspire people to use free and open-source software to create beautiful music. And I was making these videos, but I was deeply frustrated with how painful the process was. I've been using Olive for 9 months now for all my video production, I've tried and tested it and I think it's the most promising libre NLE around. With the new core and features coming up - it's going to be revolutionary for Linux-loving creators like myself and I belive it has a potential to become a universally recognized tool, not just among FOSS people.
Long live Olive!