Yes, I know that Gnome has ESD (Enlightened Sound Daemon), and KDE uses aRtsd (analog Real time synthesizer daemon). Aside from the annoying problem of having to cope with multiple sound subsystems, both ESD and aRtsd introduce complications, such as conflicts with ALSA and latency. Latency is the enemy of sound quality, especially over a network. So when you're streaming audio (either by itself or with video), using a software IP phone, or playing online games the first thing to do is turn off ESD or aRtsd and use only ALSA.
So what's up with Webcams? As one reader told me, is "the state of Webcam support in Linux is nasty and brutish." The core problems stem from lack of support from hardware vendors (get in the 21st century, folks, geez!) and inconsistent Video4Linux support. Video4Linux is the video capture API for Linux. All video capture devices and applications must use Video4Linux. That doesn't sound too bad, as it is just a single API, and as far as I know the only one. But there are two versions: the original V4L, and version 2, sometimes (but not consistently) called V4L2. Version 2 is substantially different and improved from version 1.
Virtually all modern webcams require V4L2, but some Linux applications and camera drivers still don't support it. Support in some applications is so new it's not in distribution repositories yet, so you have to build from sources to get V4L2, and you usually have to read the Changelogs to figure out what's going on. It's understandable that an unfunded overworked FOSS project would have problems with this, but get this- Adobe's Flash Player for Linux does not support V4L2. (And still no 64-bit version.) This makes live Internet streaming a problem- you can't use sites that host your live streams for free like Ustream.tv, Justin.tv, and Stickam.com, or use free video chat and phone like Tokbox.com because they depend on Flash. So your options are to use an old lower-quality camera that supports V4L version 1, or to capture and host your own streams. Let's have a big cheer for proprietary innovation! Or in Adobe's case, enervation.
Basic navigation and settings are easy: go back and forth with the right and left arrow keys, and hit the Escape key to close. The little boxes with MM in them means that function is muted, or disabled. Toggle the M key to mute/unmute. 00 means zero volume, so use the up and down arrow keys to adjust it. When there are two channels you can adjust each one independently, which you can see in the Master setting in Figure 1. Q increases the left channel, and Z decreases. E and C control the right channel. In the Capture screen, use the spacebar to select the active recording device.
Most of the settings are self-explanatory, but there is oft confusion over Master and PCM. Master controls your playback volume. A PCM device is like a virtual soundcard; this is the bit that converts analog sound to digital. It can be either software or hardware. Your Linux sound applications need the PCM channel. So you usually need both of these active to enable playback.
$ alsamixer -c 1
-c means card number. A quick way to test your sound is with aplay:
$ aplay -d plug:dmix yoursoundfile.wav
When you have multiple sound devices, your various applications (such as Skype and Ekiga) should have their own configurations for which devices they'll use. Next week we'll learn how to test individual channels, and how to use the recording functions for various tasks.