For developers, the steps to participate are as follows:
Understanding how Kdenlive works
Like in any good free software project, the GUI and the framework rely on different projects:
- FFMpeg provides audio and video codecs.
- MLT is the video editing engine. I provides shared libraries and a command line player called "melt".
MLT can be easily extended to support more audio, video codecs and effects.
- Kdenlive is the graphical interface to MLT.
It relies on KDE4 but works very well under Gnome too.
Most of time, new features need to be added to MLT and Kdenlive.
As a rule, you should be able to play any video editing project using melt and Kdenlive.
MLT has several GUIs, including Kdenlive. We do not accept new features which cover only Kdenlive and not MLT. We would like to make possible for other developers to work on other interfaces.
Setting-up a developing environment
We recommend using a Debian SID distribution. It is updated very rapidly on the contrary of Ubuntu, which lacks months behind.
You can use the following /etc/apt/sources.list:
deb http://ftp.fr.debian.org/debian/ experimental main contrib non-free
deb-src http://ftp.debian.org/debian/ experimental main contrib non-free
deb http://ftp.fr.debian.org/debian/ unstable main contrib non-free
deb-src http://ftp.debian.org/debian/ unstable main contrib non-free
deb http://ftp.fr.debian.org/debian/ testing contrib non-free main
deb-src http://ftp.fr.debian.org/debian/ testing contrib non-free main
deb http://ftp.fr.debian.org/debian/ stable contrib non-free main
deb-src http://ftp.fr.debian.org/debian/ stable contrib non-free main
deb http://www.debian-multimedia.org sid main
deb-src http://www.debian-multimedia.org sid main
deb http://www.debian-multimedia.org experimental main
deb-src http://www.debian-multimedia.org experimental main
A recommended /etc/apt/apt.conf
To upgrade to Debian SID:
apt-get update; apt-get dist-upgrade
If you are running VDPAU, install Nvidia proprietary drivers:
apt-get install nvidia-kernel; module-assistant a-i nvidia-kernel ; apt-get install nvidia-glx nvidia-libvdpau1-dev
Modify /etc/X11/xorg.conf and replace "nv" with "nvidia" in the driver section.
Checkout the source from SVN and GIT
Then checkout Frei0r-plugins, MLT and Kdenlive from sources. You may find useful information here:
Frequently Asked Question for developers
Question: I would like to add a new effect to Kdenlive. How to add the effect in MLT?
Answer: check-out Frei0r and MLT and read frei0r plugin code in MLT: /src/modules/frei0r . You can either add a new plugin to MLT or add the feature in Frei0r, which is already implemented in MLT. Other choices are also possible. Discuss this with us.
Question: Why should I join Kdenlive and not project Foo?
Answer: MLT is the future of video editing and it is already a standard on GNU/Linux platforms. Other frameworks are oriented towards displaying video, not editing it. With the separation of video libraries (FFmpeg codecs), video engine (MLT) and user interface (Kdenlive), you have a more secure framework. Furthermore, our community is very well organized to track bugs, make frequent releases and write documentation. We will still be there in 10 years. So if you add some code to FFmpeg, MLT or Kdenlive, be sure your time is not lost. If you need a specific feature, don't loose time working on a minor video tool. Kdenlive and MLT provide you the basic import/export and timeline. So that you can concentrate on the quality of your code.