24 January 2009
I have already mentioned in my posts that I now use Ubuntu Linux in preference over booting Windows Vista (yuch!). In the past I have always ended up resorting to Windows Vista and Adobe Premiere Elements for my video editing.
See related posts: Windows XP, Windows Vista and Ubuntu Linux, Ubuntu 8.04 - What makes it so good, Quicktime playing camcorder files - Error opening video files - mp4 h.264 - Error -50: an unknown error, Editing HD Video on Ubuntu Linux (kdenlive / Cinelerra) - is this better than Windows Vista?, Progress on video editing with Linux Ubuntu 8.10 Intrepid.
I've now completed my first Linux Video editing project, from start to finish done completely on Ubuntu Linux. This has included importing the footage from my camcorder, to editing this, creating a youtube video and a DVD disk complete with printing direct to the DVD. With one exception this has been done exclusively with open source software, the exception being running Adobe Flash Professional through Wine (CrossoverOffice) for some special effects. The special effects created are optional and so in effect I have confirmed that it is now possible to do the full range of home video editing activities for free.
I did come across a few issues on the way, but no worse that I've had when Video editing with commercial software under Windows Vista (see: Unable to import H264 video into Adobe Premiere Elements - Quicktime Error opening video files - mp4 h.264 - Error -50: an unknown error).
I am very impressed by how far the non-linear editors and the other tools have come in such a short space of time. The future of video editing on Linux sounds even more promising.
Although all my testing has been done with Ubuntu, these tools should work just as well with other distributions such as Red Hat, Fedora, Suse and Mandriva.
Importing Video from a Mini-DV camcorder over firewire / IEEE1394 / I-Link
I have a traditional tape based (mini-DV) digital camcorder. I had some old footage on this that I wanted to incorporate into my project. The camcorder connects to the computer using Firewire (IEEE 1394). I first tried to import this using kdenlive, but that didn't work. Instead I used LiVES to import the files and store them on disk.
The video was imported as raw DV files which were split into clips at appropriate places. The files created were ideal for importing into kdenlive.
Importing video as H.264 from a modern digitial HD camcorder (e.g. Flash / SD / HDD camcorders)
A lot of modern camcorders are now saving their files in H.264 (mp4) format. This is particularly the case with High Definition (HD) camcorders as this format supports the HD resolution. In my case they were stored on an SD card which I copied using my computers built-in SD reader. I now have a SDHC card which needs an external USB reader, which works in much the same way. It is also possible to connect the camcorder direct to the laptop using a USB cable where it acts as a USB removable disk drive.
Although kdenlive says that it can import H.264 files by calling on ffmpeg as required this did not work when I tried it. I therefore converted the files to AVI format using WinFF which acts as a GUI to ffmpeg. This also had the advantage that I could drop the resolution from HD to standard definition as I did not need this in HD format and doing so reduced the file size and improved performance when editing.
Non-linear Editor (NLE) - kdenlive
For the non-linear editing (official term for video editing) I used kdenlive. The version in the Ubuntu repositories is an old version so I downloaded the latest using the build wizard at: Official kdenlive website.
The interface for kdenlive looks similar to Adobe Premier Elements on Windows. Adding transitions and some other features are a little more difficult to use, but other than that it is a very capable non-linear editor (NLE).
I am particularly impressed by kdenlive and it did everything I would expect of a non-linear editor.
Adding special effects / animated titles
I created some special effect titles using Adobe Flash Professional. This is commercial software written for Windows, but can be installed under Linux using Crossover Office from Codeweavers:
Using Flash I was able to add snow flakes to the title video clip.
These were exported as .AVI files and imported into kdenlive.
Exporting for YouTube and for DVD
The render option in kdenlive is used to create an AVI output file that can then be used in the creation of a DVD or an Mpeg file (mpg) that can uploaded into YouTube.
Creating a DVD Menu - ManDVD
ManDVD is used to create a DVD menu and output as VOB, BUP and IFO files to store in the DVD VIDEO_TS directory.
One thing I did have to do to get ManDVD working was to create a blank sound file for the overlay music on the main menu.
Or use any other mp3 file to provide an audio clip on the main menu.
Burning to DVD - K3B
K3B is then used to burn the files onto the DVD.
Printing to disk and creating disk labels
OpenOffice.org Graphics is used to create the artwork for the DVD and DVD case labels. The DVD can then be played in a commercial DVD player.
The completed video can be viewed:
The software available for Linux is now more than capable of editing camcorder footage and burning it to a DVD. Although there are a number of different programs required these are just performing the same steps as are required using any other programs. This follows the principle of Linux where each program is designed for a single task and to do that job well, instead of making an attempt at doing everything, but doing it badly.
The software still has flaws and is not quite as user friendly as alternatives, but it has come a long way. It will be very interesting to watch this software improve in the future.
I will still be using Windows for some of my other projects, once I find a way to get Adobe Premiere Elements to read my files (most likely using an open source conversion program), but I have now proved that video editing is not just possible, but usable and good quality. I'm sure it won't be long until I switch to Linux for all my editing.
Linux has now reached the maturity that (with the exception of games) nothing I do on my home computer cannot be done in Linux. Even with games it is extremely rare that I will run Windows Games and most of them don't work on Windows Vista anyway. For games I normally just use the Wii most commonly for Wii Fit and Wii Sports.