Linux Sound Support

Multimedia has received a lot of attention in the computer industry recently. Unix systems traditionally have not provided much support for multimedia in general, and sound in particular, except for some expensive professional systems. Workstation vendors are now scrambling to introduce multimedia-ready systems.

More on Music

When it comes to playing music, there are several methods
that can be used.

First, don't plan on digitizing a 60 minute music CD as a
sound file and storing it on your hard disk. Some simple
calculations show the size of the data involved:

A more compact method of storing music is MOD files. These
originated with the Amiga computer, but MOD file editors and
players are now available on other systems as well, including
Linux. MOD files essentially store a bank of short samples
(instruments), and sequencing information (musical notes). These
files are of the order of 30K to 300K bytes in size and can
represent several minutes of music (i.e. a complete song).

MIDI stands for Musical Instrument Digital Interface, and as
the name suggests, is a standard hardware and software protocol for
allowing electronic musical instruments to communicate. MIDI files
describe songs in terms of keypress events, and can be played using
either an internal FM synthesizer on the sound card, or external
MIDI devices.

Another, less common, file format is Adagio files. Adagio is
a music description language developed at Carnegie Mellon
University. Programs to play Adagio files, and convert between
Adagio and MIDI files are available.

Games

We can't forget another important application for
sound—games! Several graphical games supporting sound run under
Linux, including Bdash and Xboing.

Sound Tools and Utilities

To make use of the sound support in the Linux kernel,
applications are needed. Several of the important ones are Sox (a
utility for converting sound files from one format to another and
adding effects), and tracker (a MOD file player). Some graphical
programs that run under X are available as well, including xmix (a
sound mixer), xplay (a sound player/recorder), and xmp (a MIDI file
player).

There are many others, including some interesting
applications such as speech synthesis.

The Future

Now it's time for me to get up on my soapbox. Sound support
in Linux is quite new, and application support is not as complete
as for some other operating systems. I envision seeing a complete
set of sound tools, that would provide a consistent, graphical user
interface for all of the common sound functions. This would help
bring Linux to the forefront of multimedia operating systems. Some
of the tools that need to be developed are:

sound player/recorder tool

file conversion utility

audio mixer

MOD file player

MOD file editor

MIDI file player and sequencer

FM synthesizer patch editor

text to speech synthesizer (how about support for a
/dev/speak device?)

an X window manager supporting sound

Many of these already exist in various forms, and just need
more development to be more reliable and consistent. Any
volunteers?

An interesting side note is that the author of the Linux
sound drivers, Hannu Savolainen, is porting them to other Intel
operating systems as well. The package has been dubbed VoxWare, and
should make it easier to write sound applications that are portable
across several operating systems.

Sources of more information

The Linux Sound-HOWTO document provides more information on
the topics discussed in this article and provides other references.
Look for it on your local Linux archive site.

If you have access to the Internet, the following FAQs
(Frequently Asked Question documents) are regularly posted to the
usenet newsgroup news.announce as well as being archived at the
site rtfm.mit.edu in the directory /pub/usenet/news.answers:

PCsoundcards/generic-faq (Generic PC Soundcard FAQ)

PCsoundcards/soundcard-faq (comp.sys.ibm.pc.soundcard
FAQ)

PCsoundcards/gravis-ultrasound/faq (Gravis Ultrasound
FAQ)

audio-fmts/part1,part2 (Audio file format
descriptions)

These FAQs also list several product specific mailing lists
and archive sites. The following Usenet news groups discuss sound
and/or music related issues:

alt.binaries.sounds.misc (Digitized sounds and
software)

alt.binaries.sounds.d (Discussion and follow-up group)

alt.binaries.multimedia (Multimedia sounds and
software)

alt.sb.programmer (SoundBlaster programming topics)

comp.multimedia (Multimedia topics)

comp.music (Computer music theory and research)

If you have Internet mail access, then you can subscribe to
the SOUND channel of the Linux Activists mailing list. To find out
how to join the mailing list, send mail to
linux-activists-request@joker.cs.hut.fi.

The Readme files included with the kernel sound driver source
code contain useful information about the sound card drivers. These
can typically be found in the directory
/usr/src/linux/drivers/sound.

The Linux Software Map (LSM) is an invaluable reference for
locating Linux software. Searching the LSM for keywords such as
“sound” is a good way to identify applications related to sound
hardware. The LSM can be found on various anonymous FTP sites,
including sunsite.unc.edu in the file
/pub/Linux/docs/LSM.gz.

Note that at the time this article was written, the sound
driver was at version 2.4, and was included as part of the Linux
kernel version 0.99 patch level 15 (and is probably ancient history
by the time you read this).

Jeff Tranter
(Jeff_Tranter@mitel.com)
is a software designer for a high-tech
telecommunications company in Kanata, Canada. He is the author of
the Linux Sound HOWTO.

As Linux continues to play an ever increasing role in corporate data centers and institutions, ensuring the integrity and protection of these systems must be a priority. With 60% of the world's websites and an increasing share of organization's mission-critical workloads running on Linux, failing to stop malware and other advanced threats on Linux can increasingly impact an organization's reputation and bottom line.

Most companies incorporate backup procedures for critical data, which can be restored quickly if a loss occurs. However, fewer companies are prepared for catastrophic system failures, in which they lose all data, the entire operating system, applications, settings, patches and more, reducing their system(s) to “bare metal.” After all, before data can be restored to a system, there must be a system to restore it to.

In this one hour webinar, learn how to enhance your existing backup strategies for better disaster recovery preparedness using Storix System Backup Administrator (SBAdmin), a highly flexible bare-metal recovery solution for UNIX and Linux systems.