|
|
Subscribe / Log in / New account

Video editing and free software

By Nathan Willis
May 6, 2015

LGM 2015

Two talks at the 2015 Libre Graphics Meeting in Toronto came from video-editing projects. One was an update from Natron, a relatively young project that deals with video compositing, while the other was a reflection on ten years' worth of development on the general-purpose non-linear editor (NLE) Pitivi. Both are active projects, but they take two markedly different approaches: one aims to support an existing industry standard, while the other must build its core functionality from the ground up.

Natron

Alexandre Gauthier-Foichat gave the first report of the two, describing progress in the Natron visual effects (VFX) compositing application. Gauthier-Foichat began with a brief discussion of the project's background: it is developed at the French Institute for Research in Computer Science and Automation (INRIA), which means "it is funded by people's taxes," and the team consists of developers, a vision scientist, and several visual effects artists, among others.

[Alexandre Gauthier-Foichat]

Natron's 1.0 release was made in December 2014, and the project has attracted considerable attention in recent months—presenting at SIGGRAPH and other conferences. In January, it won a "best innovation" award at the inaugural Paris Images Digital Summit. Gauthier-Foichat gave a preview of what has been happening on the development side—work that is expected to be released as Natron 2.0 by the end of May.

Natron provides a node-based editing environment in which users can visually construct a effects pipeline (by connecting processing nodes on a canvas) that is then used to process video. It implements an industry standard plugin interface called OpenFX that is supported by a wide variety of other VFX applications. That well-supported standard helps Natron gain acceptance, and not just through compatibility with other applications' plugins. The reality of large productions like television and movies requires small VFX studios to collaborate and exchange data, so many of the studios write their own scripts and tools to be compatible with OpenFX, too.

[Node editing in Natron 2]

For the upcoming 2.0 release, the Natron team has reworked the user interface, in particular making the node-connection window easier to use. The team also spent a lot of time talking to VFX artists, who began bringing feature requests to the project as Natron grew in popularity. The number one request, he said, was for "interaction with 3D," but it took considerable research to narrow that request down into a specific feature set. Natron 2.0 will feature 3D support in the form of interaction with Blender, allowing users to place depth into the arrangement the images and clips that make up their scene, rather than treating all of the scene elements as flat pieces on the same plane.

It will also add new scripting features. Python scripting (using Python 3) will be supported, but not just for automating tasks. The new version will be the first to feature scriptable nodes—meaning that a video element can be manipulated by custom code in the middle of a processing pipeline. Natron's implementation will adhere to another widely used industry standard, SeExpr.

He showed several examples of SeExpr scripts in action, including an interactive lighting tool that lets users move illumination sources around the screen and immediately see updated results—without having to re-run the rendering process. Pixar offers a similar tool called LPics, he said, but Natron does the same thing in just a few lines of code. Still more work is yet to come, including G'MIC filter support and support for CUDA hardware acceleration.

Pitivi

Jean-François Fortin Tam presented the second of the talks, about the GTK+-based NLE Pitivi, which recently passed its tenth birthday.

[Jean-François Fortin Tam]

Ten years is a noteworthy milestone, Fortin Tam pointed out. Free-software NLE projects have a habit of starting strong then dying out; he showed a timeline graphic that depicted the rise and fall of many other free-software NLEs over the past decade. NLEs have developed their own form of the classic pick any two conundrum, he said: users can choose a subset of "soon," "cheap," and "complete" but they cannot have all three. "You can get something fairly usable, but if you want it in the next decade, you need to pay people to work on it."

This is a problem, he said, because there is ultimately no business model that supports building a free-software NLE. Even a successful Kickstarter campaign can only generate enough funds to pay "a McDonald's salary" for three to six months. The reason is that less than one percent of computer users use Linux, and of those less than one percent use NLEs. As if one percent of one percent wasn't bad enough, he estimated only a fraction of that number would ever donate more than a dollar toward development.

But financing is not the only hurdle. There are "DevOps challenges" facing an NLE project, too. Regardless of whether they are paid or not, most teams are only one to three people, which is nothing compared to the hundreds employed by each proprietary NLE company. Furthermore, he said, technology making up the development platform keeps changing in front of you.

He then played a clip from the ending of Rambo III on which Pitivi-related dialog had been superimposed. In Fortin Tam's version of the scene, two protagonists on foot are congratulating each other on having completed a port to GStreamer Editing Services, only to be surprised by the arrivals of an ever-increasing horde of armed adversaries in tanks and helicopters—who are labeled "GTK+3," "GObject Introspection," "GStreamer 1.0," and so on—and demand that they "throw down their old libraries" in surrender. Keeping up with the pace of the desktop application stack, it seems, is not easy for Pitivi's small team. The code has undergone several rewrites in its ten-year history.

Then again, he continued, the video industry changes rapidly, too. Ten years ago, capturing video from external analog and digital sources was critical; today it is ancient history. High-definition has given way to 4K, 8K, and 3D video in rapid succession, and users get mad when their HD movies take more than five minutes to render. "When I was young," he said, "I was happy if it took less than a day." On the plus side, users "no longer have to take out a mortgage" to make a quality movie, and computing power has "gone through the roof."

The big question is how a project like Pitivi can make forward progress under such circumstances. Fortin Tam said that the project's strategy is to focus on enhancing the core, not the user interface. The next release will "finally kill off" GNonLin (the NLE library that originated in the GStreamer project) in favor of a new, integrated editing layer. Design flaws in GNonLin have held back the Pitivi core for years, and the project finally decided that fixing the library was not possible.

Moving forward, he said, Pitivi has to ignore legacy support issues (such as external capture), and focus solely on the modern video-editor workflow. It has to ignore the frequent calls for collaborative-editing features as well, he said. People often say they want it, but when one surveys working NLE users, no one uses collaboration features in other products.

The project also needs to focus on being a storytelling tool, he said, and not try to be every part of the production workflow from caption editor to VFX compositor to render farm. That means adjusting to the notion of being part of a "creative suite" of applications that the users will use, he said—like making sure Pitivi works with Natron. There are still technical features that need addressing, like color management and hardware acceleration, he said. But while the future may hold amazing new features, too ("3D video, holograms, and ponies," he said), focusing on letting users tell their stories is what will make Pitivi relevant for the next ten years.

One topic that Fortin Tam did not directly address in his talk was the influence that Blender has on the various efforts to develop an NLE. Like it or not, Blender has steadily expanded the scope of its built-in toolset, which has had the side effect of stealing away a large number of Linux NLE users. The talk schedule for the week included several sessions led by video artists describing their work; the vast majority use Blender for editing and exporting their output.

Video is a rapidly changing area for software developers. Natron has grown into a popular and stable application in a short amount of time (a bit less than two years). But it also has the advantage of sticking to the widely used OpenFX specification—so it gains a lot of functionality for free, so to speak—and it has a larger potential user base by virtue of being cross-platform. Pitivi does not have either luxury; after ten years and several under-the-hood rewrites, the project may finally have found a solid footing on which to build—but it will still be a challenge.

Index entries for this article
ConferenceLibre Graphics Meeting/2015


to post comments

Video editing and free software

Posted May 6, 2015 23:32 UTC (Wed) by josh (subscriber, #17465) [Link] (9 responses)

Natron's programmable processing pipeline looks promising, as does Pitivi's usability. Personally, I'd love to see a Linux equivalent of VirtualDub for Windows (which is actually Open Source), which is oriented around scripting rather than a GUI. I'd like to be able to write a script that says "import this video between these timecodes, stitch it together with this audio, apply these effects...", and similar, with the ability to render quick previews as well as the final full-resolution version.

Video editing and free software

Posted May 7, 2015 7:44 UTC (Thu) by roskegg (subscriber, #105) [Link] (2 responses)

Agreed. It shouldn't take more than five minutes to open the program, import a video clip, and then insert text overlays, chop out bits, "stretch" or "speed up" parts, cut and paste parts to different locations, do a transition or effect over time span "x", etc. Those are such simple things, but as soon as you start any NLE in linux, you are expected to understand several different abstractions already. Instead of just "this is my video. I want to do THIS to my video". As bad as all those programmers IDE's that make you open a "project" before you can type a single line of code.

Video editing and free software

Posted May 7, 2015 12:04 UTC (Thu) by cortana (subscriber, #24596) [Link] (1 responses)

I think this is the kind of thing that AviSynth is good for. Only works on Windows though--it's tightly coupled to the legacy Video for Windows API IIRC.

Video editing and free software

Posted May 7, 2015 17:01 UTC (Thu) by nix (subscriber, #2304) [Link]

Have a look at vapoursynth. It has many fewer plugins for now, but has the significant advantage of using a decent scripting language (it's implemented as a program that embeds Python 3).

Video editing and free software

Posted May 7, 2015 9:25 UTC (Thu) by Felix (guest, #36445) [Link]

> I'd like to be able to write a script that says "import this video between these timecodes, stitch it together with this audio, apply these effects..."

I think gstreamer-editing-services (+ other gstreamer libraries) should satisfy that use case. Pitivi is mostly "just" a UI for these libraries. With the help of gobject you could write these scripts using Python or one of the other languages which have a gobject library.

You are looking for something based on MLT

Posted May 7, 2015 13:15 UTC (Thu) by gwolf (subscriber, #14632) [Link] (1 responses)

MLT (or Melt, http://www.mltframework.org/) is a video editing framework. It can be all driven from the command line (we use it to add i.e. a cover page and superimposed logo to our videos as they are produced), but it has also a very rich interface over which a full nonlinear video editor can be used. Kdenlive is built using MLT as its driving force.

You are looking for something based on MLT

Posted May 11, 2015 9:06 UTC (Mon) by przemoc (guest, #67594) [Link]

Shotcut is the main MLT-based open source cross-platform video editor that is worth mentioning here as well.

Video editing and free software

Posted May 7, 2015 14:57 UTC (Thu) by aleb (guest, #67592) [Link]

You can already do that with GES, Pitivi's backed, for example:

$ ges-launch-1.0 +clip video.MTS i=2 d=4 set-mute true +effect agingtv +clip audio.mp3 d=4 layer=1

Video editing and free software

Posted May 11, 2015 11:16 UTC (Mon) by bros (subscriber, #75198) [Link] (1 responses)

MLT/melt might be close enough to what you're referring to: http://www.mltframework.org/bin/view/MLT/WebHome

Video editing and free software

Posted May 11, 2015 11:18 UTC (Mon) by bros (subscriber, #75198) [Link]

Note to myself - read the whole thread before replying.

Video editing and free software

Posted May 7, 2015 9:32 UTC (Thu) by krake (guest, #55996) [Link]

> The reason is that less than one percent of computer users use Linux, and of those less than one percent use NLEs.

Does this mean users of other operating system don't use NLEs or that this specific NLE is Linux only?

If the latter it might make sense to expand the operating system support to get into that 1% on other platforms


Copyright © 2015, Eklektix, Inc.
This article may be redistributed under the terms of the Creative Commons CC BY-SA 4.0 license
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds