FireWire aids working with multimedia

An emerging standard in data transfer can speed multimedia work. In this Daily Feature, Brien Posey explains this hot solution, called FireWire.

A while back, I wrote a Daily Feature on using video-capture techniques to produce video CDs (see "Create your own DVDs and video CDs”). However, because of the complexity involved in creating video CDs, that article barely touched on video-capture technology. Given all of the new technology available for video capture, it seemed only appropriate to write a second Daily Feature that focuses on some of the various methods of getting video and still images in and out of your computer.

Perhaps the biggest innovation in video capture is a relatively new technology called FireWire. Until recently, I had read a lot about FireWire but had never really seen it in action. However, a couple of weeks ago, my camcorder was destroyed in a boating accident in Cancun. Because of the loss, I was forced to buy a new camcorder. I decided to take the plunge into the world of digital video. Only then did I learn about the true power of FireWire through first-hand experience. Before I get into that, though, here’s a little background on FireWire for those who may not be familiar with it.

FireWire is a type of high-speed serial bus. You may be wondering what the point is of having a new type of serial bus when the Universal Serial Bus (USB) works so well. For starters, FireWire is much faster than USB. Some FireWire implementations can transfer data at speeds up to 400 Mbps. Sure, there are SCSI devices that can transfer data at comparable speeds, but these devices tend to be very distance-sensitive.

Another advantage of FireWire over USB is the way devices are recognized. As I’m sure you’re aware, USB devices must be plugged into a computer to function. However, this isn’t the case with FireWire devices. FireWire is designed to facilitate communications between dissimilar devices. This means you could connect a digital camera to a hard disk or to a printer without the need for a computer.

FireWire is based on the IEEE 1394 standard. This standard dictates a physical layer and the cabling that connects FireWire devices. The 1394 standard uses a direct memory access model. This means when searching for data on a FireWire-enabled device, the computer can access the desired location instantly rather than having to download the entire contents of the device’s memory and then do a complete search. If this idea seems a little strange, think about the differences in the way a CD and a tape work. If you need to retrieve a file from a CD, the computer can instantly skip to the location of the file and download it. If you’re using tape, on the other hand, the computer may have to search through the entire tape before locating the file.

At the time I wrote this article, only the newest and most expensive computers were shipping with FireWire ports. Just about all of the Sony laptop computers have FireWire ports built into the system, but I’ve seen very few other systems that include them. For those systems that don’t include FireWire ports, you can add a port in the form of a PCI card, such as the Western Digital FireWire card shown in Figure A. I acquired this card from a local computer store for about $80. Figure B shows an example of the cable that’s used to connect the card to the FireWire device (in this case, a digital video camera).

Figure A
You can add FireWire capability to most PCs through a PCI card similar to this Western Digital FireWire card.

Figure B
The cable used to connect your PC to the various FireWire devices looks different from most other types of standard computer cables.

Now that you know a little bit about what FireWire is and how it works, you may be interested in some real-world performance stats. I used a 500-MHz Pentium III to test the difference between FireWire and standard analog video capture. For the analog test, I used a 16-MB ATI All In Wonder video card. I connected the card’s ports to the analog output on a Sony Digital Handycam DCR-TRV320 video camera. For the capture process, I used Ulead System’s Video Studio version 4.0. For the test, I captured 15 minutes of video. Although the capture process worked, several thousand frames were dropped.

After the test was completed, I installed a Western Digital FireWire card and connected one of the card’s ports to the I Link port on the camera. I then captured the same 15 minutes of video at the same resolution as before, using the FireWire interface. This time, not a single frame was dropped. When I played back the captured video, the quality of both the video and the audio was quite a bit better than when I had captured it in an analog format.

There are several reasons for the difference in quality. For example, the source tape was created in a pure digital format. It was recorded in Hi 8. When you’re doing an analog video capture, the contents of the tape must be converted from a binary signal to an analog signal in the NTSC format used by most American televisions. The conversion process leads to some loss of detail and overall quality. When the computer captures the signal, it must convert the analog signal back into a binary format the computer can understand. Again, this means you’re going to lose some of the quality during the conversion process. It also means the computer must work very quickly, because the two conversions must be performed on every single frame of video at a rate equivalent to the desired number of frames per second used by the captured video.

For instance, if you’re capturing 30 frames per second, the process must convert each frame from digital to analog and back to digital at a rate of 30 frames per second. As you might expect, this can be a heavy workload. My test machine was a 500-MHz Pentium III with 128 MB of memory. No other programs were running during my tests. Even the virus checker had been disabled. The video was being dumped to a dedicated hard drive, and still thousands of frames of video were lost during the capture process because the computer simply couldn’t keep up with the workload.

On the other hand, when I performed the same test using a FireWire link, not a single frame was lost. Sure, this was partially due to the blinding speed of the FireWire bus. However, as you may recall, the FireWire port allows dissimilar devices to communicate in a standard digital format. This means the video camera was able to communicate directly with the computer in binary code. Because there was no digital-to-analog-to-digital conversion going on, the computer had a much lighter workload to deal with.

While communicating with your PC in a pure digital format is efficient, using FireWire has other advantages as well. Because of the speed of FireWire, the cable can carry much more than just video. As you may know, with conventional analog video-capture implementation, the video-capture card captures only video. Sound is usually captured through your computer’s sound card. The video-capture software synchronizes the capture process so that the video and sound are matched up correctly. With a FireWire implementation, however, this isn’t the case. Video and sound are captured through the same cable. This means you’re capturing digital sound as well as video. If your source contained CD-quality sound, you can rest assured the captured video will, too.

FireWire has one more trick up its sleeve, though. In addition to video and sound, the FireWire cable carries instructions for the device it’s communicating with. In the case of video capture, this means you can control the video camera directly from your computer with the click of a mouse. When you’re capturing video, it’s always tricky to rewind the tape to just the right place to begin recording. However, with FireWire, you can rewind the videotape through your computer and specify the exact frame you want to begin recording from.

When I first saw this in action, my instinct was that this was merely a feature of an expensive camera, but this is a standard feature. Keep in mind that FireWire is designed to facilitate communications and functionality between dissimilar devices. Because of this, the ability to exchange commands between devices is essential. Therefore, as you can see, the ability to control the video camera from the computer is nothing more than a standard FireWire offering.

Digital photography
Using a FireWire connection with a digital video camera is very cool, to say the least. However, some digital video cameras, such as the one I’ve been using for this article, can also act as a digital still camera. The technology involved in this application is absolutely fascinating, as I’ll explain.

In the particular video camera I’ve been working with, digital video is saved to digital videotape. Although still images can also be saved on digital videotape, the camera is designed to save these images on a memory stick. A memory stick is a flash memory cartridge with capacities ranging between 4 MB and 64 MB. You can see an example of a 16-MB memory stick in Figure C. Another fascinating function of this arrangement is you can capture still images off video directly through the camera. In the old days, this operation required a computer with a video capture card or a Snappy.

Figure C
A memory stick can store still images taken in digital camera mode.

Memory sticks aren’t specific to Sony digital video cameras. Many digital still cameras use memory sticks as a storage medium. Memory sticks must be formatted just like a floppy disk, and they behave similarly. The main difference is the files are stored on a chip rather than on magnetic media.

With the exception of a few Sony laptops, there aren’t too many computers floating around with memory stick slots on them, but several methods are available for getting the data contained on a memory stick into your computer. Perhaps the most common method involves plugging your digital camera into the computer’s serial port. Unfortunately, this method tends to be very slow since the speed of a serial port is limited to 115,200 bits per second.

Other methods involve inserting the memory sticks into PCMCIA cards or into USB devices that are designed to read them. Both of these methods tend to work well.

Perhaps the neatest method that I’ve seen involves inserting the memory stick into a reader that looks like a floppy disk. Once you’ve loaded a small device driver, you can read the memory stick through your PC’s floppy disk drive. I personally like this method for two main reasons. First, just about every PC has a floppy disk drive, so you can easily use your memory stick on any computer. Loading the driver is very simple, and you don’t have to fool with complicated configuration options or with plugging in a million cords for external devices designed to read the memory stick.

The second reason I like this method is that you can write to the memory stick from the PC just as you’d write to a floppy disk. Imagine having a 64-MB floppy disk that works on any PC. Sure ZIP disks hold a lot more, but not everyone has a ZIP drive. The floppy adapter for the memory stick works on anybody’s PC. You can see what the floppy disk adapter looks like in Figure D. Just in case you’re wondering what this marvel of modern technology costs, it’s available on the Sony Web site for about $500. However, I found mine at Sears for around $70. The prices vary greatly on the memory sticks, so shop around.

Figure D
You can read from and write to a memory stick by using this floppy disk adapter.

Digital technology is radically changing the way we work with images. In this Daily Feature, I explained how a single digital camera can record video and still images. I also described how innovations such as FireWire ports and memory sticks can be used to transfer those images between devices.

Brien M. Posey is an MCSE who works as a freelance technical writer and as a network engineer for the Department of Defense. If you’d like to contact Brien, send him an e-mail. (Because of the large volume of e-mail he receives, it's impossible for him to respond to every message. However, he does read them all.)

The authors and editors have taken care in preparation of the content contained herein but make no expressed or implied warranty of any kind and assume no responsibility for errors or omissions. No liability is assumed for any damages. Always have a verified backup before making any changes.

Editor's Picks