Experiences using digital video under Ubuntu, Redhat 8.0 + 9.0. Details the frustrations of getting cool stuff up and running in Linux.
For many many moons I had struggled to keep up with computing technology (mainly through laziness in not wanting to re-install the OS, re-install user files etc.) Up until a few weeks back I had been working with a dual boot Redhat 6.2/Windows 95 system with a Pentium 200 MMX and 64 meg of RAM. It all ran nicely (slowly I must admit with Gnome 1.4), but expandability was, to put it mildly, impossible!
I finally plucked up the courage to upgrade my machine from the pre-boom days to the post-crash days. My new machine was to be so outstandingly up-to-date that it wouldn't need upgrading for at least the next few weeks. It would have all of the bells and whistles I needed to work until the next boom/bust cycle has worked its way through the system (although it seems this may be overly optimistic at the moment). Specifically the machine I was creating must have a firewire interface for my mini-dv camcorder, a large enough disk to hold a few hours of digital video, a CD burner to output SVCD's (DVD-R would be nicer, but a bit pricey and not worth the risk of non-working hardware in Linux), enough RAM to make things look like they are running smoothly, and a video card that had open source drivers - it didn't have to be the top-of-the-line, just something that could keep up with the worst digital video could throw at it.
After a little research on the net (admittedly, not nearly in as much depth as I should have), I settled on the following system specs:
The first problem I had was the Radeon card didn't seem to work - blank screen when I powered up. I suspected there may have been a problem as the GA-7VAXP motherboard doesn't support AGP 2x cards (wrong voltage) but this card said it was 2x/4x... I yanked the Radeon card out and installed an the old 4meg PCI video card from the old P200 system. The box booted!
I then attempted to install Redhat 8.0... more problems. Each time I tried installing, it failed at a different point. I'd either get a kernel panic or a bad file on the install disc. Bugger! I tried fixing things up through the BIOS (turn all the whizz-bang options off, try the default BIOS settings). The main thing I achieved doing this was to completely bugger up the system! The 'Top Performance' setting caused the motherboard to go into a deeply disturbed state - no output from the video card, no beeping, no HDD activity, only the CPU and power supply fans running.
How do you fix a system you buggered by setting an invalid BIOS? Wipe the battery backed CMOS. This is achieved by popping the CMOS battery out of its holder, and shorting the +/- connectors with a screwdriver and waiting a few minutes before re-inserting the battery.
Success! Power up brought the familiar power on self test screen and I was again in control of the BIOS. Only problem was, what else could I try?
Fortunately in my stumblings on the internet on how to fix my buggered BIOS, I stumbled on a forum dedicated to 'Anyone got a Gigabyte GA-7VAXP?' at http://www.hardwareanalysis.com
Seems the people who designed the GA-7VAXP BIOS decided that options controlling memory timings (a suspected cause of my problems) were hidden from normal users - you have to do CTRL-F1 on the main screen to unlock a menu to let you fiddle. This I did, and I managed to cripple my PC2700 memory (basically put it on the most conservative memory settings I could).
I restarted with little faith that things would work any different, but hey presto, 45 minutes later I was on the Gnome desktop...
So it seemed like I had bad memory... I sent my dream machine back to the dealer that put it together, with the video card, and told them to put in some quality memory (Kingston) and get the video card working. This they did with no problems whatsoever... the video card 'just worked' for them - maybe a bad interaction with the dodgy memory, maybe the BIOS 'fixed' itself (as others on the hardwareanalysis bitch list discovered). I didn't care which one - I now had a working system!!!
So I finally had a working system - time for some real work...
First of all, what applications would I need for video editing under Linux? The main contenders were Kino and Cinelerra.
Cinelerra looks like a nice powerful tool for those people with several supercomputers backing up their main dual processor supercomputer. Not for me. I'm at that point in my technical life where I don't care for technical details, I simply want something that works.
That's what Kino gives me - something that just works. Installation is a breeze (the Redhat apt stuff is pretty sweet), and the GUI is nice and simple - no hard-core features, just something nice and simple for simple home movies.
Alas! This was not the end of my problems setting up my dream machine - the IEEE1394 stuff didn't want to 'just work'. Quite the contrary - it didn't work at all.
I loaded the appropriate modules (ieee1394, ohci1394) but when I plugged the camcorder in, I get messages about a ROM quadlet error:
ieee1394: ConfigROM quadlet transaction error for node 00:1023
Fortunately I have previously been bitten by a bug with some buggy USB hardware, where any device plugged in after the device driver is loaded is not recognised - could this be a similar issue (ie buggy hardware)?
I gave it a shot - unload all the ieee1394 modules, make sure the camera is plugged in and powered then reload them all - hey presto! Working video camera.
I then fired up Kino - but to my disappointment, it didn't want to recognise the ieee1394 subsystem as being loaded (the kernel knew about my camera, why didn't kino???)
Leaving kino for a while, I gave 'dvgrab' a swing - worked a charm first time, and I had my first pieces of digital video for editing with Kino.
It wasn't until a couple of weeks later that I discovered, quite by accident, that Kino needed the raw1394 device to be loaded (and the correct permissions on the /dev/raw1394 device) before it would allow capture from its interface. Once the raw1394 device and permissions were sorted, the camera could be controlled and captured from within Kino.
The one peeve I have about Kino is the interface for transitions between scenes - there isn't one! You must manually specify the scenes in the transition and then apply an effect to them. Apparently multiple timelines are coming out in a future release - I can't wait!
Since I only have a CD burner, the output formats I can create (that play on my DVD player) are restricted to VCD, SVCD and CVD. My first attempt at creating a home video were using an SVCD containing multiple scene files. Creation of a compliant SVCD image for burning couldn't be easier from Kino - export to SVCD then burn the image using cdrdao.
The version of cdrdao I use (the one that came with RH 8.0) didn't recognise my CD burner at first, but a few minutes research revealed I should give the generic_mmc_raw driver a go.
To my immense surprise, it worked, and the very first CD I burned was a working SVCD! A very pleasant surprise considering all of the problems I had up until this point.
Being a good community member, I updated the database at http://cdrdao.sourceforge.net/drives.html to include my new findings.
I'm going to give a custom SVCD a go next - see if I can up the resolution at all. I'm then going to see if I can create a CVD disc (apparently even better quality than SVCD).