Linux Production Suite

I would love to see the formation of a GNU/Linux production suite encompassing all aspects of production from script writing to DVD authoring and anything in between.

I am the owner of a small advertising company called 9 Iron Productions located in Orlando Florida. I have been in the advertising industry for nearly 4 years now, starting when I was 17. A typical project consists of my team and I meeting with a client, putting together a plan and using a set of non-free tools to execute on that plan.

I have never been happy with the state of non-free software, often making remarks such as “wouldn't it be nice if program X also did...”, or “Program X has too many features, it should be two separate programs”.

After Microsoft released Vista I decided I wanted to get away from non-free software so my company replaced XP with Kubuntu, Final Draft with Celtx and Microsoft Office with Open Office.

We use Firefox, Thunderbird, Filezilla, Celtx, Gimp, Blender, Audaity and VLC because these products are open source, work amazingly well and are cross platform. I know that I can use these products on any computer in our office no matter what hardware or OS it uses.

We have nearly converted to a complete GNU/Linux environment, however there is one big reason we have not.

There is no unity between these great GNU/Linux projects.

Cletx, Kdenlive, Gimp, Blender, Audacity, VLC. Separately these projects are amazing but they look different, they feel different and they are difficult to navigate between.

So I propose a GNU/Linux production suite equivalent to Adobe CS4 or Final Cut Studio 2.

The suit would unite already established projects, unify the look feel as much as possible and closely integrating them together.

I know next to nothing about code and I would in no way be able to start such a project myself, nor do I know the proper channels to go through to get this project underway. I talk to plenty of professionals in the film production industry and we all agree that a suite should be made.

I would love to hear any feedback from any of you great developers out there.

This production suite is called "GNU/Linux" and it is already available in each GNU/Linux installer.

I have the same feeling, but.. I don't think that gimp and kdenlive will get too close (in terms of user interface). I don't think Gimp devs would be too cheerful about moving to kde (since gtk actually stands for gimp toolkit :) ). Maybe Krita and Karbon could become a "suite" along with KDEnlive..

I know there will be a lot of objection to this idea. Linux developers have always wanted things their way, thats why they choose Linux. Gnome vs KDE (GTK vs QT) is one of the loudest debates.

Kane77 you are correct in that Gimp would not make a QT interface, I was only using it as an example of a great piece of software that (in the eyes of film professionals) is limited because of its lack of integration in an entire suite.

The main words I hear in my job are “workflow” and “pipeline”. Adobe, Apple and to a lesser degree Avid, spend millions making sure industry professionals associated these words with their products.

When a video editor hears the word “Linux” however they usually associate it with the server their footage is stored on, but they rarely think of it as a creative platform.

I have been waiting for developers to produce software that designers want to use. Kdenlive VLC and the Gimp are a few examples of software I WANT to use, but the lack of integration makes it hard.

I love all of the amazing software that is being made in the open source community, however I feel each project has a different objective that do not coincidence with each other. Everything under the umbrella of KDE 4 however makes me think of creativity, integration and quality.

KDE developers made Koffice which is better then what Microsoft could make.

KDE developers made KHTML, which Apple is using in Safari.

KDE developers made Marble, a Google Earth equivalent.

If KDE developers can compete with Microsoft, Apple and Google and in most cases make software that is more robust, more reliable and overall provides a better user experience then the formation of a KDE Production suite should be a walk in the park for these brilliant people.

There is no lack of integration as you seem to believe. Kdenlive, mlt and other tools like codecs are the result of 10 years or more of hard work. And they are very well integrated.

You like KDE, good. It seems like you never tested Gnome. In terms of human interface, KDE is years behind Gnome. The more KDE evolves, the more it becomes complicated. I started using GNU/Linux with KDE 2.1. I would not use KDE now, too complicated. Okay, some KDE tools a correct.

I don't want this to turn into a desktop interface war but I use both KDE and Gnome. I'm with Linus on this subject: KDE is for users who want control over every aspect of their computer (nerds like me). Gnome is for users who want a more simple interface (my roommate uses gnome).

The type of integration I am talking about doesn't exist. If you have ever used Adobe CS4 then you have used a suite that is very well integrated. After Effects and Premiere Pro can read saved files from each other. Without rendering a video in Premiere you can send it to After Effects and vice versa.

In terms of codec support you are correct that Kdenlive is unmatched. Integration in terms of the how Final Cut integrates with Shake and Soundtrack, Premiere integrates with After Effects and Photoshop, or how Avid integrates with ProTools and Softimage XSI, is non-existent in Linux.

Industry professionals need:
Script Writing (Final Draft)
Video Editing (Final Cut)
Photo Editing (Photoshop)
3D Modeling and Animation (Maya)
Compositing (Shake)
Sound Editing (Protools)
Music Composing (Finale)
Color Correction (Apple Color)

Linux has most of these packages but they don't closely integrate, like the above mentioned products.

How would such a project be started?

It seems to me that 'integration' essentially means that programs can use each other's output formats as input.

In other words, you write a script in one app, the output script can be plugged into you NLE and matched to the timeline. For this, you're pretty much going to have to coordinate between two projects at a time. For instance, Celtx and Kdenlive need to have a dialog about having a script plugin or module or something that can use Celtx's output format.

Open source apps are well positioned to do this, since file formats are quite open, documented, and for the most part standardized. For instance, SVG is the standard file format for pretty much all Linux vector graphics, rather than competing closed proprietary standards like AI and CDR in the commercial software world. And so, there is discussion of being able to open SVG files and use them as luma-esque effects and title effects in Kdenlive. And that discussion is happening already.

We've also already seen that Kdenlive doesn't really have an extensive audio editor beyond volume keyframing and some effects. But we can now separate out audio and easily save it as a WAV file - why not go the extra step and be able to right click on it and open it in Audacity, and be able to do full edits, close that file, and have the edited track appear right back on the timeline or at least in the clip window? That potentially makes it easier for Kdenlive developers as well: Kdenlive doesn't have to code their own extensive audio editor or script editor to offer that functionality. So that's a discussion that obviously would need to take place between those two projects.

As far as uniformity of the UI, on the other hand, things don't look so good. There really is no mechanism to unite these diverse projects under one roof, so to speak, in order to enforce uniformity of the UI. But frankly, an app like Photoshop is so different from an app like Premiere - the UI's don't end up looking all that similar anyway, even within the same family. Photoshop and Illustrator, yes, but Premiere - no.

For the most part, the big hole in this 'Suite' has been the NLE - there simply hasn't been one worth considering on Linux that was production quality. With such a giant hole in the app continuum, there would be no sense in striving for 'suite' coordination - there weren't enough pieces to coordinate.

Now, on the other hand, it's looking like all the pieces are falling into place. So I do think it's good to start thinking along these lines. It might even make sense to 'brand' a confederation of apps with some kind of logo: 'This app is an official component of the Gnu/Linux Production Suite'. And that confederation would probably need some kind of oversight board with members from each app that wants to belong. And of course, there could be more than one app for each purpose - it wouldn't be restricted, there could be a choice among apps. Choice could in fact be a key distinction of an open source production suite.

ArtInvent that is exactly the type of suite that I was thinking about. I would say the biggest gap (the NLE) has been filed beautifully by Kdenlive, but there are some small gaps still around. They are so small however that the process of forming a “confederation” would be a much more daunting task.

ArtInvent I see what you are saying about Photoshop and Premiere, and although they are not an exact match, CS4 has unified the look a little more.

Although unifying the UI of an open source suite would be a challenge I feel it would be advantageous to the end user and create the illusion of a very professional product (smoke and mirrors are key in branding).

An example of integration between Cletx and Kdenlive might be storyboards. Celtx can contain storyboards as part of a script. The editor could import the Celtx project and have Kdenlive load the images automatically so the editor could create an animatic to show clients.

How does one get such a “confederation” of applications formed?

> How would such a project be started?

Well this is rather simple. First, try to participate in Kdenlive project. There is help needed writing documentation and working on tutorials. You can also try to debug Kdenlive, follow bug resolutions and test patches. Then you may participate in development. As Kdenlive is highly integrated, you may choose to participate in Kdenlive, MLT (the engine) or FFmpeg (the codecs).

We are waiting for your help. Where will you start?

> Celtx
It is a Java application. There are probably better solutions around, even if it means redeveloping.

I know nearly nothing about code so I doubt I will be able to submit very accurate bug reports. I can however write very good documentation and create tutorials. I will need to peruse the website for a while to get a very good understanding of the projects needs.

Actually, I just discovered that if you select a WAV audio clip in the project tree window, then hit the Project menu - you will see a little Audacity icon. And yes, hit this and you can edit the track in Audacity. So this is pretty cool, if quite limited for now: you can't just directly edit a video clip's audio track - it has to be a stand-alone audio clip file. (The icon is greyed out much of the time.)

But anyway, somebody has clearly been doing some initial work on establishing this kind of app integration. Cool.

I don't have this option, but I am still running 0.7.3. This may have been added in 0.7.4. That is great that this feature has been added. Its the first step towards the exact suite we are discussing.

Thanks for the update ArtInvent.

the option has been there for a long time, you have to set your preferred applications in the settings to enable it

I have been working in this space since 2000, starting with Kino in 2001, and then MLT in 2003. I understand some of the goals beyond just file interoperability and similar themes between GTK+ and KDE toolkits. I have dreamed that someday there could be a common timeline to coordinate multiple apps (animation, audio, video) and perhaps even a common canvas to coordinate raster, vector, and video graphics. However, some of the problems are that of time, change, and developers. This might all come in time, but things do no actually progress that quickly at the micro/project level, partly due to number of developers, developer coordination, and most developers working part time as a hobby. At a high level though things do seem to progress quickly, I suppose, due to the large number of projects, and new projects and technologies displacing other ones. This last thing also impacts the limited developers time to adapt to the changes in other projects, replacement technologies in ecosystem, or simply the SCM flavor of the month. On top of that, many developers have to provide support, system administration and development for their websites, and occassionally documentation. In summary, I am not saying improved integration and workflow will not come, it just will not come quickly or probably even in the mid-term, and it may not come as well originally expect or want and cause rework. Therefore, it might not be surprising to see projects trying to reuse and embed derivatives rather than coordinate.

For audio, a major technology to improve workflow and integration is the Jack sound server. It provides audio "pipes" as well as transport synchronization across apps. MLT supports Jack as a filter at the moment. There is a nifty GTK+ app called Jack Rack that lets one stack up LADSPA filters on a Jack audio "pipe." MLT's jackrack filter can read a Jack Rack file, and you can have the MLT filter connect to Jack Rack via Jack while building the filter rack project, and then run it later without Jack Rack or Jack. Kdenlive uses this filter today for its LADSPA audio filters. However, this does not address automation a.k.a. keyframing filter parameters, and Jack Rack does not do that either.

I have considered another scenerio to take advantage of Jack and transport synch. The idea of transport synch is that pressing play in one app (e.g. Kdenlive) triggers a play from the same time offset in another app (e.g. Rosegarden or Ardour). That other app could receive audio from Kdenlive via Jack. OK, at the surface, that sounds really neat! But what do you really get from it? How does the other app represent Kdenlive's audio on its timeline? Can it edit it? If so, how does Kdenlive receive and represent them? It's not so clear. Maybe, I can use Jack to dump the audio to Rosegarden, which records it as a new audio segment. Then, transport sync can play the video only in Kdenlive while editing the audio in Rosegarden. However, this poses new questions. How do we automate that coordination? Is it really that beneficial to have two largish, timelines with little visual correspondence between the scale and position of the timelines? Would it not be better to have a single timeline with the power of both Kdenlive and Ardour?

D-Bus can be used to coordinate some of the above, but not immediately, not without considerable additional work.

When it comes to raster editing, Gimp and Krita are both very nice, but we have no means at the moment to share image processing routines between the two or with video editors without copy-n-paste style reuse. Fortunately, video editors are now able to share image processing plugins via frei0r - there are other APIs as well.

Turning to animation. Synfig is decent, but it would be hard to integrate with Kdenlive at the code level with it using GTK+. Yet another timeline. Can't put video into Synfig - might be nice to fill a shape with a video track and animate that shape. Blender is also very nice. In MLT, I have been tinkering around with integrating a modified GVFX, but AFAIK Blender currently does make the integration nice and clean. I could ask for changed, but I am now accustomed to having to make them myself, but with that project being so large and deep, I do not have much bandwidth to learn its code. Again, yet another timeline in its sequence editor, and with it being a totally custom OpenGL UI, code-level integration is difficult.

I personally think it would be fascinating to study the code of Rosegarden, Karbon, and Krita to explore the idea of a common timeline and canvas while allowing each project to develop fairly independently. However, I am plenty busy. Maybe someone else will become curious and try it.

Alan, any news of your work ?

I am a teacher (grades 0-8) in a small Danish village. I persuaded my collegues to go from Win98 to Edubuntu 18 months ago. We have 20 thin clients on Edubuntu, and everything is fine.

That is - almost everything. I spared 4 WinXP PC's, because, as I told them ,"When it comes to sound and video - WinXP is better than Edubuntu". When we work with video and sound, it is WinXP - anything else is Edubuntu.

I came across Kdenlive 3-4 weeks ago, and it was a long waited and nice software. At last, Edubuntu could sompete with WinXP.

To the point: I too have dreamed of a genuine Linux Production Suite. I have used Audacity for 4-5 years, Celtx the last two years, and now Kdenlive.

I can understand that it is difficult, to have the developers to make GUI's that look alike, but they should be able fetch data from each others files, so a storyboard saved in Celtx could easily be imported in Kdenlive. I am not an experienced coder myself, but maybe anyone could explain the complexity of such an integration?