An up-to-date overview of free software and its makers
Projects on the Move

© Yuri Arcurs, 123rf.com
Voice over IP on the Internet gives communication a personal touch, but it takes applications like Cheese and WebcamStudio to exploit the creative potential of Internet telephony.
The Internet has spoiled many a futurologist's predictions. Video phones were still very much the domain of science fiction in the 1990s. Then, suddenly, broadband Internet hit the mass market, closely followed by cheap webcams. Almost overnight, video conferencing became an affordable reality for home users.
Webcams became part of the digital citizen's standard equipment with the introduction of netbooks. Now Linux users can join in the fun because driver support has finally caught up with reality. Furthermore, creative spirits have discovered the potential of webcams beyond run-of-the-mill telecommunications.
Linux and Webcams
When Linux users buy a webcam, whether it is integrated with a notebook or as an external hardware device, the driver CD will not typically include usable software for the user's choice of operating system. Very few manufacturers provide webcam drivers for Linux. Despite this, developments are positive; Linux developers have created drivers for many of the newer webcams.
Just five years ago, EasyLinux, a German language magazine published by the same company that brings you Linux Pro Magazine/Linux Magazine, painted a gloomy portrait of the webcam landscape. Only three out of seven cameras could be talked into cooperating with a Linux system; of the three, only two displayed color correctly. Linux supported less than 30 percent of the webcams on the market; this made buying a webcam a risk at the time.
The Linux community owes improvements in webcam support to many factors: For one thing, a couple of manufacturers now supply free Linux drivers for their equipment, or at least you can download the drivers. For another, the USB Video device class (UVC) [1], which was introduced in 2005, has been adopted as a standard by many webcam manufacturers. Kernel version 2.6.26 introduced the Uvcvideo [2] module for native support on Linux, which means that most devices that stick to the standard now work.
Unfortunately, some manufacturers still ignore what is now an established standard, while refusing to develop Linux drivers or support volunteer programmers. Since 2003, the French programmer Michel Xhaard has been developing drivers – without external help, for the most part – as part of the GSPCA (Generic Software Package for Camera Adapters) [3] project for low-budget webcams that do not comply with the UVC standard. All of this work by the French physicist, who has since created drivers for more than 250 devices, was introduced into version 2.6.27 of the Linux kernel. Support for seven different chipsets is quite sufficient to get non-UVC-compliant devices to work on Linux, including devices by Aiptek, Creative, Logitech, and Philips, along with innumerable no-names. However, because some manufacturers still refuse to help, the image quality can be quite poor with some GSPCA devices.
Before you buy a webcam, you should check the compatibility lists on the GSPCA and Linux UVC project pages. Some manufacturers provide Linux support status overviews for their devices, although random tests revealed that most of the reports are unreliable. Some webcams tagged as "unsupported" will work with the GSPCA or Uvcvideo project kernel modules without any trouble.
Say Cheese!
The Gnome desktop Cheese [4] project (Figure 1), which owes its name to the familiar phrase, "Say cheese," is reminiscent of the proprietary Photo Booth software by Apple. Cheese uses the webcam to take photos and record videos. Various effects boost the fun factor (Figure 2): 12 filters let users modify the image by replacing individual hues or by distorting the image.
The camera image occupies most of the workspace. To save an image, just click Take a photo, after selecting Photo or Video mode. The Effects button takes you to freely combinable filters. If you are interested in a black and white cube view (Figure 2), you can simply enable both and then click Effects again to return to the main view where the selected effects are visualized. However, some of the effects involve operations that can slow down even a more powerful machine, especially if you apply them to videos.
Into the Studio
The widespread availability of webcams also brings new options to the world of amateur media. Writing is not everybody's favorite activity. If you don't feel at home in the world of text-heavy blogs, you can still let the world know what you think in the form of videos captured with a stock webcam. Pages such as Ustream.TV [5], BlogTV [6], or Stickam [7] give their members a platform for uploading their contributions or even broadcasting live.
The WebcamStudio [8] project (Figure 3) targets users of these services, offering more than a simple reproduction of the image captured via the webcam. Users with cameras that support Linux, but not the browser's Flash plugin can use WebcamStudio to populate their own video blogs. Although this is the main application for WebcamStudio, the software will also export videos to AVI or Ogg files or create an Ogg broadcast stream.
WebcamStudio combines various media. The Sources menu shows the cameras connected via the V4L (Video for Linux) interface or its successor, V4L2. On top of this, budding producers can add videos or images from disk to their programs or give viewers a chance to watch the producer's desktop.
WebcamStudio integrates text either as static content or RSS feeds. As an alternative, the software will accept the output from any shell command, allowing users to, say, use a live stream to monitor a computer's process list. Other input sources include ANM format animations, IRC chats, and cameras with Firewire connections.
The TCPServer and TCPClient tools let the program use streams from remote computers or the local machine. The Microphone source records an audio track that you can mix with other audio sources. WebcamStudio relies on GStreamer for video and sound reproduction and supports any formats for which you have installed the required plugins.
Users can position the selected sources in the Output window – with transparent superimposition if so desired. For example, you could superimpose your own portrait on a movie. The ability to create a screencast with explanations recorded via a webcam is less artistic, but still useful. At the same time, you can use a paintbrush tool to edit the image by drawing frames around the interesting parts or by using other highlighting techniques.
WebcamStudio developer Patrick Balleux has also implemented an idea that is unique in this kind of software: if you enable Face Detection, the program will automatically detect the eyes of the person the webcam is recording. The user then loads a face file comprising images and coordinates and describing the distance between the image elements it contains. The software applies a virtual mask to the person you are filming, and the mask tracks head movements and scales to reflect the distance to the webcam. It is no surprise that this feature is not perfect, considering the current state of the art, but the quality is fine for visual effects when using face files from the WebcamStudio homepage, such as Batman or Dr. House.
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Find SysAdmin Jobs
News
-
KDE Plasma 5.27 Beta is Ready for Testing
The latest beta iteration of the KDE Plasma desktop is now available and includes some important additions and fixes.
-
Netrunner OS 23 Is Now Available
The latest version of this Linux distribution is now based on Debian Bullseye and is ready for installation and finally hits the KDE 5.20 branch of the desktop.
-
New Linux Distribution Built for Gamers
With a Gnome desktop that offers different layouts and a custom kernel, PikaOS is a great option for gamers of all types.
-
System76 Beefs Up Popular Pangolin Laptop
The darling of open-source-powered laptops and desktops will soon drop a new AMD Ryzen 7-powered version of their popular Pangolin laptop.
-
Nobara Project Is a Modified Version of Fedora with User-Friendly Fixes
If you're looking for a version of Fedora that includes third-party and proprietary packages, look no further than the Nobara Project.
-
Gnome 44 Now Has a Release Date
Gnome 44 will be officially released on March 22, 2023.
-
Nitrux 2.6 Available with Kernel 6.1 and a Major Change
The developers of Nitrux have officially released version 2.6 of their Linux distribution with plenty of new features to excite users.
-
Vanilla OS Initial Release Is Now Available
A stock GNOME experience with on-demand immutability finally sees its first production release.
-
Critical Linux Vulnerability Found to Impact SMB Servers
A Linux vulnerability with a CVSS score of 10 has been found to affect SMB servers and can lead to remote code execution.
-
Linux Mint 21.1 Now Available with Plenty of Look and Feel Changes
Vera has arrived and although it is still using kernel 5.15, there are plenty of improvements sure to please everyone.