These pages were first written in 2002 so modern Linux distros should do this stuff more easily. The Cinelerra tutorial in particular should still be relevant.
Currently (November 2002) there seems to be a consensus that video editing on Linux hasn't really arrived yet. I have found that this is not true, as long as you are prepared to get your hands dirty setting things up. I am able to do things in Linux for free that would require hundreds of Pounds of software in Windows or on a Mac.
Hardware
I bought a cheap Lucent OHCI IEEE 1394 (aka Firewire or iLink) card. The linux IEEE 1394 drivers support a wide range of hardware. Simply plug your card into a free PCI slot.
Drivers
I use the drivers that come with the 2.4.19 kernel. You may find that 2.4.18 also works but I have read that the drivers have undergone significant improvement since then. Mandrake 9.0 has this kernel and it has the IEEE 1394 drivers already compiled. To find out what kernel you have, type "uname -r". To find out if you have the drivers, type "insmod ieee1394". If no error messages appear you're good to go. If that fails, you can either get Mandrake 9.0 or some other distribution that has the required drivers, or configure and build your own kernel. This is easier than it sounds. Have a look at the IEEE 1394 getting started guide, and the kernel HOWTO.
I execute the following commands as root to get IEEE 1394 up and running:
- modprobe raw1394
- modprobe ohci1394
- modprobe video1394 - this last one only seems necessary to export edited video back onto the tape.
It is possible to get these modules to load automatically at start up, but I haven't done this yet.
Libraries
I found I needed to download a selection of libraries to get everything working. This may be because I am using an older GNU/Linux distribution that I've upgraded manually over time. Newer distros like Mandrake 9.0 may have these libraries already. These links may be useful if something complains about a missing library.
- libraw
- libdv - the DV codec used by all programs that work with the DV video format.
- libpng
- libquicktime
- libquicktime-devel - get this if you need to compile something that uses libquicktime.
I also had to download newer versions of autoconf, automake and pkgconfig to get certain things to build. Unfortunately I did not keep good notes about what required what, but if you see any error messages relating to these, just use Google or rpmfind to get the required packages.
Applications
I use Kino to do video capturing from my camera to the hard disk. Kino will control the camera, allowing you to wind to the correct part of the tape, and will start and stop capturing to a filename you specify at the click of a button. It will also play a DV file out through the IEEE 1394 port with its export feature - very useful if your camera has a DV input as you can put your completed masterpeice back onto a tape.
While Kino is a video editing program, I prefer to use Cinelerra for editing. Cinelerra is very much like Adobe Premier, except that it doesn't cost anything. You can do transitions, mix audio, add titles and graphics, and even do chroma-keying and other fancy compositing.
Kino works with raw .dv files and Cinelerra works with DV encapsulated in .mov Quicktime files. To convert between the two formats I use Arthur Peters' DV Utils package. I found version 0.1 quite hard to compile, so I have provided some binaries to download.
You might also want to try the latest version which now compiles on GCC 2.95. It combines the various utilities into a single program called dv2dv. Again, for convenience you can download the binary.
It is possible to capture video using Cinelerra, but I haven't managed to make it work. Newer versions of Kino may well support the .mov format, the one I have does not, so the file conversion is necessary. I'll cover the steps in the Kino tutorial. The Cinelerra tutorial will cover video editing.
Tutorials
These tutorials demonstrate how to use the software.