Listening to Music in Linux


Good-quality sound hardware is considered a necessity for today's desktop and laptop computer systems. Whether playing songs downloaded from the Internet, sound tracks to digital movies, or audio from a TV card, any user -friendly operating system has to support a healthy list of sound hardware and audio applications.

Most popular sound devices for the PC, whether on separate cards or built into your computer's motherboard, will be automatically detected when a Red Hat Linux system boots up. Appropriate modules will be loaded, so you can immediately begin using your sound card.

Advanced Linux Sound Architecture (ALSA) provides the drivers and utilities in Fedora and RHEL systems to work with sound cards. The alsa- utils RPM package contains the commands and configuration files you can use to tune your sound card and adjust audio levels. Other friendly graphical tools have been added by the GNOME and KDE projects for managing sound.

After your sound card is working and audio levels are adjusted, you can use any of the dozens of audio applications that come with Linux with your sound card. Those applications include music players, video players, video conferencing applications, games , and audio recorders , to name a few.

As for audio content, the following list describes the types of audio content you might want to play, which players can be used for each type of content, and whether or not the software comes with Fedora or RHEL. (If not, I describe where you can get software to play that content and issues associated with getting and using that software.)

  • Music CDs (CDDA) - Commercial music CDs are nearly all stored in the Compact Disc Digital Audio system (CDDA). Fedora and RHEL applications that can play music CDs include CD Player (gnome-cd) and KsCD (kscd). Rhythmbox can play music CDs, as well import songs to your hard disk (using Sound Juicer) so you can manage your music from one location. Applications from Fedora Extras that can play audio files from CDs include xmms and grip.

  • Ogg Vorbis Audio - If you are compressing and storing music from scratch, Ogg Vorbis is probably the best choice if you want to avoid completely any royalty issues. The libvorbis codec is included with Fedora and RHEL and makes it possible to play audio encoded in Ogg Vorbis format in a variety of Linux music players, including xmms, Rhythmbox, ogg123, and many others. The vorbis-tools package also includes utilities for encoding (oggenc) and decoding (oggdec) Ogg Vorbis content to or from WAV and raw music formats.

  • MP3 Audio - MPEG Audio Layer 3 (MP3) has become the standard format for storing audio files that are transmitted over computer networks (such as the Internet). Because of licensing issues associated with distributing MP3 players, Red Hat does not include codecs needed to encode or decode MP3 audio files in any of its distributions. However, the MP3 Licensing site ( http://mp3licensing.com ) which once seemed to indicate that you don't have to pay royalties for non-commercial use of MP3 encoders, now has gone silent on the issue. (Note that I am not a lawyer and you need to come to your own conclusion about this.)

    The xmms-mp3 package contains software needed by Linux audio players to play MP3 audio files with the xmms music player. You need the lame package to create compressed audio files from WAV, AIFF, or raw audio files that play on MP3 players. Many use the mpg321 command-line MP3 player, which is available in the mpg321 package. (All of these packages are available from the Livna.org RPM repository. See Chapter 5 on installing software from the Livna.org repository.)

  • FLAC Audio - FLAC is an open source lossless audio format. Lossless means that it compresses the audio as much as possible without losing sound quality. In comparing the same song compressed in Ogg Vorbis and FLAC (using default settings), FLAC files were on average about six times the size of the Ogg Vorbis files.

    Many of the same applications that can play Ogg Vorbis files can play FLAC files as well. Rhythmbox, ogg123, and xmms can all play FLAC files. You can encode FLAC audio using Sound Juicer or the flac command, among others.

  • Other Audio Formats - While the audio formats mentioned previously are the most common ones used for music files today, there are other audio formats you may want to play from Linux. Refer to the description of the sox utility for several audio formats that are supported by that utility. Use the play command (which comes with the sox package) or aplay (which is in the alsa-utils package) to play content stored in any of those supported formats.

Audio formats that are sometimes included with video files are described in the section on video players later in this chapter. For an official description of which contentious multimedia encoding software (and other software) Fedora doesn't include, refer to the Fedora Project Forbidden Items page ( http://fedoraproject.org/wiki/ForbiddenItems ).

Configuring a Sound Card

Configuring a sound card in Linux consists primarily of having the right modules load (which usually happens automatically at boot time) and then using ALSA utilities to adjust the settings for the sound card. Today's sound cards often have more than the old Mic-In, Line-In, Speaker-out, and Joystick ports. So when you go to adjust your audio levels, there are more items you need to learn about.

Sound Card Features

Sound cards can pack an amazing number of features these days. If you are choosing a sound card (as opposed to using the onboard sound chip and ports on your motherboard), you want to make sure that it is one that is supported by ALSA ( www.alsa-project.org/alsa-doc ). Beyond that, you should look for the features you need. Here are examples of sound card features:

  • Sound recording and playback quality - When you record and play back audio, quality and file size are determined, in part, by word length (the number of bits that are used to hold a numerical value) and sample rates. Typical word lengths include 8-bit (less popular), 16-bit, or 24-bit digital sizes. To convert the sound, the board samples the sound in waves from 8 kHz to 96 kHz, or 8,000 to 96,000 times per second. (Of course, the higher the sampling, the better the sound and larger the output.)

  • Full-duplex support - This allows for recording and playback to occur at the same time. This is particularly useful for bidirectional Internet communication or simultaneous recording and playback.

  • PCI or USB interface - Most people purchase a PCI sound card to put in the case of their desktop system, when sound ports on the computer's motherboard are not sufficient. However, if you are using a PC (such as a Shuttle) with limited slots or a laptop, there are USB sound cards that are supported in Linux. If your USB sound card doesn't work, check to see if it is on the ALSA sound card list. Look for tips associated with your sound card or click the link to USB Generic (for general USB sound card instructions) if your card isn't listed.

Several different ports on the board enable you to connect input/output devices. These ports can include some or all of the following:

  • Line-In (blue) - Connects an external CD player, cassette deck, synthesizer, MiniDisc, or other device for recording or playback. If you have a television card, you might also patch that card's line out to your sound card's line in.

  • Microphone (red) - Connects a microphone for audio recording or communications.

  • Headphone /Line-Out/Speaker Out (green) - Connects speakers , headphones, or a stereo amplifier . (On sound cards I've tested , this is marked as Headphone in mixer utilities.)

  • Joystick/MIDI (15-pin connector) - Connects a joystick for gaming or MIDI device. (Some sound cards no longer have these ports because they are now available from most motherboards.)

  • Digital out (orange) - A digital out connector can be used to connect a digital audio tape (DAT) device or CD recordable (CD-R) device.

  • Rear out (black) - Can be used to deliver audio output to powered speakers or an external amplifier.

  • Internal CD Audio - This internal port connects the sound card to your computer's internal CD-ROM drive (this port isn't exposed when the board is installed).

Caution 

Before you install a separate sound driver distribution, check to see if your current Fedora or Red Hat distribution already has the most recent sound driver. When possible, use the driver that's distributed with the kernel. If you have tried the procedures in this book and you still don't have a working sound card, visit the Advanced Linux Sound Architecture at www.alsa-project.org , home of the ALSA sound architecture.

For some sound applications, you need to identify the device files used to communicate with the sound card and other sound hardware. The devices that the audio programs use to access audio hardware in Fedora and RHEL include:

  • /dev/audio, /dev/audio1 - Devices that are compatible with Sun workstation audio implementations (audio files with the .au extension).

  • /dev/ cdrom - Device representing your first CD-ROM drive. (Additional CD-ROM drives are located at /dev/cdrom1, /dev/cdrom2 , and so on.)

  • /dev/dsp, /dev/dsp1 - Digital sampling devices, which many audio applications identify to access your sound card.

  • /dev/mixer, /dev/mixer1 - Sound-mixing devices.

  • /dev/sequencer - Device that provides a low-level interface to MIDI, FM, and GUS.

  • /dev/midi00 - Device that provides raw access to midi ports.

Tip 

Nodes in the /dev directory, such as /dev/audio , aren't just regular files. They represent access points to the physical devices (hard disks, COM ports, and so on) that are connected to your system, or to pseudo-devices (such as Terminal windows ). For example, to find out the device of your current Terminal window, type tty . Then send some data to that device. For example, if your device name is /dev/pts/0 , type:

 $  echo "Hello There" > /dev/pts/0  

The words Hello There appear in that Terminal window. You can try sending messages among several Terminal windows. If a user who is logged on to the computer has terminal permissions open, you can send messages to him or her in this way, too. (I knew people who would send a dictionary file to an unsuspecting user's terminal. Although it wasn't destructive, it was annoying if you were trying to get work done.)

To get information from the ALSA service about your sound cards, list the contents of the following files (for example, cat /proc/asound/devices ):

  • /proc/asound/devices - Contains available capture, playback, and other devices associated with your sound system.

  • /proc/asound/cards - Contains the names , model numbers and IRQs of your sound cards.

For general information about sound in Linux, see the Sound-HOWTO (for tips about sound cards and general sound issues) and the Sound-Playing-HOWTO (for tips on software for playing different types of audio files). You can also refer to the Linux Audio Users Guide ( http://lau.linuxaudio.org ).

Note 

You can find Linux HOWTOs at www.tldp.org .

Detecting Your Sound Card Driver

During the first start-up after you install Fedora, the Firstboot setup agent tries to detect and configure your sound card. If that process was successful, and your sound card is working, you can skip this procedure. If your sound card wasn't detected or you simply don't hear any sound, try running the Audio Configuration utility.

Tip 

Audio may be muted when you first install Fedora or RHEL. If you are not able to hear your sound the test of your sound card, use Volume Control or alsamixer (as described later in this chapter) to unmute and adjust the volume on your audio input.

To open the Audio Configuration window, from the System menu, click Administration Soundcard Detection (this runs the system-config-soundcard command). If your sound card was detected, the Audio Devices window should appear, as shown in Figure 8-1. Click the play button to the left of the slider and you should hear a test sound. You can move the slider to the right to make sure volume is set high enough to hear it.

image from book
Figure 8-1: The Audio Configuration (system-config-soundcard) window detects your sound card.

The Audio Configuration window contains three tabs of settings you might want to adjust:

  • Sound test - Besides letting you test your sound card, this tab shows information about each sound card you have installed. If your sound card isn't working, use the Vendor, Model, and Module information when you ask for help. You can also change the PCM device from this tab if you want, for example, to try different outputs from the card.

  • Settings - If you have multiple sound cards, you can select which to use by default (Default audio card) and the PCM device for that card you want to use to output sound. From this tab, you can also disable specific card configuration to (allowing plug-ins to override default settings). Likewise, you can change the order in which audio cards are used on your system.

  • System - You can view information about the ALSA sound system (driver versions, library packages, and utility packages) from this tab. You can also reload sound drivers or generate a report related to your sound system. The report is copied to /root/sysconfig.log and contains output from commands such as lspci and lsmod , as well as contents of your /etc/asound.conf file and output from the aplay-l command.

At this point, you can try playing an audio file. Insert a CD and open one of the CD players described in the following section. If you don't hear any sound, but the utility seems to have detected your sound card, refer to the next section and try adjusting your audio levels. If that doesn't work, try some of the debugging procedures suggested in the ALSA Wiki FAQ ( http://alsa.opensrc.org/faq ).

Tip 

If there is a data CD in your CD drive, you may not be able to simply eject it to play your music CD. To eject a data CD, close any windows that may have an open file from the CD, and then unmount the CD in your drive (if one is mounted) by typing umount /media/cdrecorder as root user from a Terminal window (the mount point name may be something other than cdrecorder ). Then you can eject the old CD and place an audio CD in the drive. If the CD appears as an icon on the desktop, you can right-click the CD icon and select Eject to eject the disc.

Adjusting Sound Card Levels

Every audio output (Playback) and input (Capture) device associated with your sound cards can be adjusted or muted using one of several different tools that come with Fedora and RHEL. Each track typically has one or two sliders associated with it (associated with mono or stereo channels on the track). With your desktop running, the GNOME Volume Control window is the first one to try. From the desktop panel, right-click the volume icon in the top panel and select Open Volume Control (or type gnome-volume-control ).

Figure 8-2 shows an example of the GNOME Volume Control window.

image from book
Figure 8-2: The GNOME Volume Control window provides simple, intuitive controls for setting audio levels.

The Volume Control window starts off showing you the most common audio levels you will probably need to adjust. With speakers or headphones connected to the green port on your sound card, you will probably want to adjust the audio tracks marked Headphone and PCM first. A red X appearing on the speaker icons under any of the playback tracks indicates that the track is muted. Click those Xs under Headphone and PCM first to unmute those tracks.

Next, use the sliders to adjust the volume of those tracks up or down. By clicking the chain icon under each track, you can separate the right and left channels on any of those audio ports, to adjust them individually. If the sliders shown don't change the volume for the tracks you need to adjust, select Edit Preferences to see a list of available tracks. Selected tracks appear on the window, ready to be adjusted.

The Capture tab can be used to select the input used for audio recording or communications. Usually the Line-in, Microphone, and other input devices are muted if you are not using them for input at the moment. That's because any audio capture devices that are on with the volume raised can cause noise on your audio playback.

If you don't happen to have GNOME utilities, such as the Volume Control, installed, you can always use utilities that come with the alsa-utils package in Fedora and RHEL. In particular, that package contains the alsamixer utility, which lets you adjust or mute the various sound tracks. It also lets you select the device from which you can record or otherwise capture audio input.

The alsamixer utility is an ncurses application, which means that it is viewed graphically from a shell. It can be used to manage sound levels for more than one sound card on a computer, each with multiple devices representing it. Type alsamixer from a Terminal window to start it in playback mode (to adjust audio output) or alsamixer -V capture (to select an audio capture device and adjust audio capture level). Figure 8-3 shows an example of the alsamixer utility in playback mode.

image from book
Figure 8-3: Adjust audio levels using the alsamixer utility.
Tip 

If you have more than one sound card, each sound card is identified by a number, with zero identifying the first sound card. For example, to start alsamixer for your second sound card, type $ alsamixer -c 1 .

Here are some ways to adjust your audio tracks with alsamixer:

  • Use the right and left arrow keys to move among the different sound tracks.

  • Use the up and down arrow keys to adjust the levels of the current tracks.

  • Press m to mute or unmute the current track (playback mode only).

  • Press the spacebar to make the current track the capture device, for devices such as microphone or line-in that are appropriate for capturing audio. Then adjust the Capture bar to set the level at which audio is captured. (Note that this feature only works in capture mode: alsamixer -v capture .)

Tracks that are muted appear with an MM at the bottom of the slider. When unmuted, 00 appears instead. If more tracks are available than can appear on the screen, the right arrow key lets you scroll to the right to display additional track bars.

If two channels are available on a track, you can adjust them individually. With the track selected, use the q, w, and e keys to adjust the left, both, and right channels up, respectively. Use z, x, and c to adjust those same channels down, respectively. When you are done using alsamixer, press the Esc key to exit.

Here are a few general rules for adjusting your audio channels:

  • Mute any tracks you are not using, to avoid unwanted noise on playback or record.

  • An icon representing your GNOME Volume Control utility should appear on your desktop panel. The single slider associated with that icon may be set to adjust your master volume or headphone port output. Right-click that icon and select Preferences to change to a different port.

  • To test that your audio channels are working, use the speaker-test command. For example, speaker-test -c4 will send a tone to each of four speakers in turn (front left, front right, rear left, and rear right) to check that each is working. Note that the tone output may surprise you with its loudness.

Setting Your Sound Card to Record

I added this section on setting your sound card to record because people often miss this step. You may run the arecord command or communications application (such as Ekiga) and wonder why nothing records. The reason is that you need to identify the capture device to use before you record and make sure its level is up high enough to work.

The easiest way to set the channel to use for audio capture is to use the GNOME Volume Control window described earlier. Click the Capture tab to see the available channels for capturing audio input. Then make sure that all audio devices are muted except the one you want to record from. Available devices include microphone, line-in, and CD. A red X through a microphone icon beneath each capture device indicates that it is muted.

Move the slider for your capture device up to an appropriate level. Then connect your microphone or input device (to line in), and then start the application you want to record from.

Tip 

Audacity is a nice application for recording and working with recorded sound in Fedora. You can install the audacity package from Fedora Extras (type yum install audacity ).

Choosing Audio Players

There are audio players in Fedora and RHEL for playing music and sound files in a variety of formats. Without adding any software, you can play commercial music CDs and Ogg Vorbis audio (which you can rip and encode yourself). MP3 support can be added to some of these players, while MP3 players outside of Red Hat distributions are also available.

  • CD Player (gnome-cd) - This is the CD player that comes with the GNOME desktop. Besides having standard play buttons , this player lets you get track information automatically from a CD database (such as freedb .org ). Or, if your CD isn't listed in the database, you can enter your own track information manually.

  • KsCD Player (kscd) - The KsCD player comes with the KDE desktop. To use KsCD, the kdemultimedia package must be installed. From the Applications menu (KDE desktop), select Sound & Video KsCD (or type kscd from a Terminal window). Like gnome-cd, this player lets you get title, track, and artist information from the CD database, and lets you submit information you type in yourself to a CD database (if your CD isn't found there).

  • Rhythmbox (rhythmbox) - Import and manage your music collection with Rhythmbox music management and playback software for GNOME. Rhythmbox uses GStreamer and Sound Juicer to extract music from a CD, and then compresses that music using Ogg Vorbis, FLAC, or a low-quality WAV (for speech) audio format. Besides allowing you to create playlists of your music library, Rhythmbox also has features for playing Internet radio stations . Open Rhythmbox from the Applications menu by selecting Sound & Video Music Player.

  • XMMS (xmms) - The X Multimedia System (XMMS) audio player provides a simple, graphical player for playing Ogg Vorbis, WAV, FLAC, and other audio formats. XMMS has a fairly simple Windows winamp -like look and feel, which you can adjust using a few dozen skins. (The xmms package is available in Fedora Extras. To add CD playing support to xmms, install the xmms-cdread package as well.)

  • ogg123, mpg321, aplay, or play - If you don't have access to the desktop, you can use the text-based ogg123, mpg321 , or play commands. The ogg123 command comes with the vorbis-tools package, aplay is part of the alsa-utils package and play comes with the sox package in Fedora and RHEL. The mpg321 command comes in the mpg321 package, which is available from the Livna.org RPMs site. (The mpg321 command is covered under the GPL. There is an mpg123 project, which is no longer maintained and is not fully covered under the GPL.)

The default CD audio player is Totem ( totem command) for the current release. Totem is primarily a video player, so you might want to change the default to some other player that includes CDDB support and other CD-playing features. You can do that with the Removable Drives and Media window, as described in detail in the next section.

Note 

If you try some of these CD players and your CD-ROM drive is not working, see the sidebar "Troubleshooting Your CD-ROM" for further information.

Automatically Playing CDs

When you put an audio CD into your CD-ROM drive, a media player (totem) automatically pops up on your desktop and begins playing the CD. If you are using the GNOME desktop, you can thank the GNOME Volume Manager. The GNOME Volume Manager monitors your CD-ROM drives (as well as your other removable media, such as DVDs and digital cameras ) and opens a CD player when it sees an audio CD.

If you don't want to have CDs automatically start playing or if you want to use a different CD player by default, you can change that behavior using the GNOME Volume Manager's Removable Drives and Media Preferences window. Select System Preferences Removable Drives and Media. Then from the Multimedia tab, either turn off the Play audio CD selection or change the command that is run (for example, to gnome-cd %d ).

Refer to the "Managing removable media (CDs, DVD, and cameras)" section of Chapter 3 for details on using the GNOME Volume Manager to change CD playing and mounting preferences.

Playing CDs with gnome-cd

Like most graphical CD players, the gnome-cd player has controls that look similar to what you would see on a physical CD player. If you are using the GNOME desktop, from the Applications Menu select Sound & Video CD Player, or from a Terminal window, type:

 $  gnome-cd &  

If your computer is connected to the Internet, for most CDs you'll see the title and artist information. Even obscure artists are represented in the free online databases. If the information isn't available, you can enter it yourself.

The interface for adding information about the CD and its tracks is very nice. Click the Open Track Editor button. You can add Artist and Title information about the CD. Then you can select each track to type in the track name. To add the name of the artist and the disc title, click in the appropriate text box and type in that information. The information you add is stored locally, so it will appear each time you open the same CD. Figure 8-4 shows the CD Player and the CDDB Track Editor.

image from book
Figure 8-4: Play CDs and store artist, title, and track information with gnome-cd.

Playing and Managing Music with Rhythmbox

Rhythmbox is a tool for gathering, managing, and playing your music collection from one application. It lets you import music (from a CD, URL, or folder), and then select and sort your music by album, artist, title, or other variables from the Rhythmbox window. Rhythmbox also lets you play Internet radio stations.

The first time you run Rhythmbox, the program displays a setup wizard. You can tell Rhythmbox the folder in which to store your music files with the wizard dialog box shown in Figure 8-5. (Remember this folder name. You will need it later when you configure Sound Juicer to rip CDs.)

image from book
Figure 8-5: Define where you store your music with Rhythmbox.
Tip 

The location you choose for your music collection could require lots of disk space. Some people will add a hard disk or at least have a large, dedicated disk partition for storing their music and other multimedia content. Having this separate disk area can be useful later for doing backups . Also, if you later want to reinstall your operating system, you will be able to do so without harming your music collection.

After you've gone through the setup wizard, you'll see the main music library interface (see Figure 8-5). Rhythmbox makes it easy to organize even large collections of music files.

Note 

Fedora and RHEL do not include support for playing MP3 files because of patent issues. You can download updates for Rhythmbox at rpm.livna.org . You want the package gstreamer-plugins-mp3 . Be sure to get the package that corresponds to your version of Fedora.

Here are a few ways of using Rhythmbox:

  • Import Audio CD - Extract tracks from an audio CD by selecting Music Import Audio CD. This launches Sound Juicer to rip and compress the music from your CD (see the section "Extracting music CDs with Sound Juicer" for more on ripping audio CDs).

  • Import Location - Identify a folder of music from a Web site (http) or FTP site (ftp) and you can load the artist, album, song, and related information from that folder. Note that this doesn't download the songs themselves to your computer. Select to play a song from that imported location and Rhythmbox gets it and plays it live. (Your network connection must be up to use this feature, so you might consider copying the music to your local hard disk using a tool such as wget to get an album of music.)

  • Create playlist - To create a playlist, select Music Playlist. If you have a really large music collection, select New Automatic Playlist. A pop-up window lets you choose search criteria to find songs music, artists, title, or other criteria to load into your playlist. You can also create a new empty playlist (New Playlist) or load a stored playlist from a file. Once a playlist is created, you can add songs to the list by importing (as described previously) or dragging and dropping from a Nautilus window. Right-click on a song to copy, cut, or delete it.

  • Check statistics - Rhythmbox stores how many times a song has been played, when it was last played , and how you rate it (one to five stars). Select Edit Preferences to select to have columns of that information appear on your Rhythmbox window.

  • Play music tracks - With your music available, play that music by double-clicking an album (to play the whole album), artist (to play the artist's first album you have), or track (to start with that track). Buttons at the top of Rhythmbox let you play/pause or go forward or backward a track. Select Shuffle or Repeat boxes on the bottom of Rhythmbox to randomly play the songs in the album or play the same album repeatedly. Use the slider to move ahead or back in a song and select the speaker icon to adjust volume.

  • Play Internet radio - Rhythmbox can also play Internet radio stations. The easiest way to do this is to find a streaming radio station (you want to look for Shoutcast PLS files, usually with a .pls extension). Save the PLS file, right-click the file in the Nautilus file browser, and then select Open with Music Player. Nautilus comes configured to launch Rhythmbox for playing audio.

image from book
Figure 8-6: View your music library and play selected songs or albums with Rhythmbox.
Tip 

The sites www.di.fm and www.shoutcast.com list a number of free Internet radio channels.

Playing Music with XMMS Audio Player

The XMMS (X Multimedia System) Audio Player provides a graphical interface for playing music files in MP3, Ogg Vorbis, WAV, and other audio formats. XMMS has some nice extras, too, which include an equalizer, a playlist editor, and the ability to add more audio plugins. If the player looks familiar to you, that's because it is styled after the Windows winamp program.

Note 

To add MP3 support into Fedora Core, you can get and install an MP3 plugin. One place to get RPM package that support MP3 decoding for xmms is http://rpm.livna.org/fedora . Look for the xmms-mp3 package. An option for getting MP3 support that is fully legal is to get the GStreamer MP3 Plug-in from Fluendo ( www.fluendo.com/resources/fluendo_mp3.php ). The Fedora Wiki ( http://fedoraproject.org/wiki/Multimedia/fluendo-mp3 ) has further information.

The xmms package is available from Fedora Extras (type yum install xmms to install the xmms package). To use XMMS to play CDs, you must also add the xmms-cdread package (also from Fedora Extras). With an Internet connection, this command will get both packages for you: yum install xmms xmms-cdread

Start the XMMS Audio Player from the Applications menu by selecting Sound & Video Audio Player or by typing the xmms command from a Terminal window. Figure 8-7 consists of the XMMS Audio Player with the associated equalizer (above) and the Playlist Editor (to the right).

image from book
Figure 8-7: Play Ogg Vorbis and other audio files from the XMMS playlist.
Note 

Although the default theme is one that matches the Fedora Blue Curve theme, you can download different themes from www.xmms.org/skins.php . Copy the skin's zip file to the /usr/share/doc/xmms/Skins directory . Then change the look of the player by right-clicking on XMMS and selecting Options Skin Browser. The theme shown in Figure 8-7 is called UltrafinaSE.

As noted earlier, you can play several audio file formats. Supported audio file formats include the following:

  • MP3 (with added xmms-mp3 package)

  • Ogg Vorbis

  • FLAC (with added xmms-flac package)

  • WAV

  • AU

  • CD Audio

  • CIN Movies

You can get many more audio plugins from Fedora Extras or directly from xmms.org . The XMMS Audio Player can be used in the following way to play music files:

  1. Obtain music files by either:

    • Ripping songs from a CD or copying them from the Web so that they are in an accessible directory.

    • Inserting a music CD in your CD-ROM drive. (xmms expects the CD to be accessible from /dev/cdrom .)

  2. From the Applications menu, select Sound & Video Audio Player. The X Multimedia System player appears.

  3. Click the Eject button. The Load files window appears.

  4. If you have inserted a CD, the content of that CD appears in the Files pane. (If it doesn't, change to /dev/cdrom, /media/cdrom or /media/cdrecorder , as appropriate.) Select the files you want to add to your Playlist and click the Add Selected Files or the Add All Files in Directory button to add all songs from the current directory. To add audio files from your file system, browse your files and directories and click the same buttons to add the audio files you want. Select Close.

  5. Click the Play List button (the tiny button marked PL) on the console. A Playlist Editor window appears.

  6. Double-click the music file and it starts to play.

  7. With a file selected and playing, here are a few actions you can take:

    • Control play - Buttons for controlling play are what you may expect to see on a physical CD player. From left to right, the buttons let you go to a previous track, play, pause, stop, go to the next track, or eject the CD. The Eject button opens a window, allowing you to load the next file.

    • Adjust sound - Use the left slider bar to adjust the volume. Use the right slider bar to change the right-to-left balance.

    • Display time - Click in the elapsed time area to toggle between elapsed time and time remaining.

    • View file information - Click the button in the upper-left corner of the screen to see the XMMS menu. Then select View File Info . You can often find out a lot of information about the file: title, artist, album, comments, and genre . For an Ogg file, you can see specific information about the file itself, such as the format, bit rate, sample rate, frames , file size, and more. You can change or add to the tag information and click Save to keep it.

  8. When you are done playing music, click the Stop button to stop the current song. Then click the X in the upper-right corner of the display to close the window.

Special features of the XMMS Audio Player let you adjust high and low frequencies using a graphic equalizer and gather and play songs using a Playlist Editor. Click the button marked EQ next to the balance bar on the player to open the Equalizer. Click the button marked PL next to that to open the Playlist Editor.

Using the Equalizer

The Equalizer lets you use slider bars to set different levels to different frequencies played. Bars on the left adjust lower frequencies, and those on the right adjust higher frequencies. Click the EQ button to open the Equalizer. Here are tasks you can perform with the Equalizer:

  • If you like the settings you have for a particular song, you can save them as a Preset. Set each frequency as you like it and click the Preset button. Then choose Save Preset. Type a name for the preset and click OK.

  • To reload a preset you created earlier, click the Preset button and select Load Preset. Select the preset you want and click OK to change the settings.

The small window in the center/top of the Equalizer shows the sound wave formed by your settings. You can adjust the Preamp bar on the left to boost different levels in the set range.

Using the Playlist Editor

The Playlist Editor lets you put together a list of audio files that you want to play. You can add and delete files from this list, save them to a file, and use them again later. Click the PL button in the XMMS window to open the Playlist Editor.

The Playlist Editor allows you to:

  • Add files to the playlist - Click the Add button. The Load Files window appears. Select the directory containing your audio files (it's useful to keep them all in one place) from the left column. Then either select a file from the right column and click Add selected files or click Add all files in the directory. Click OK. The selected file or files appear in the playlist. You can also drag music files from the nautilus file manager onto the playlist window to add the files to the playlist.

  • Select files to play - To select from the files in the playlist, use the previous track and next track buttons in the main XMMS window. The selected file is highlighted. Click the Play button to play that file. Alternatively, you can double-click on any file in the playlist to start it playing.

  • Delete files from the playlist - To remove files from the playlist, select the file or files you want to remove (next/previous track buttons), right-click the playlist window, and click Remove Selected. The selected files are removed.

  • Sort files on the playlist - To sort the playlist in different ways, click and hold the Misc button and move the mouse to select Sort List. Then you can select Sort List to sort by Title, Filename, Path and Filename, or Date. You can also randomize or reverse the list.

  • Save the playlist - To save the current playlist, hold the mouse button down on the List button and then select Save. Browse to the directory you want, and then type the name you want to assign to the playlist and click OK.

  • Load the playlist - To reload a saved playlist, click the List button. Select a previously saved playlist from the directory in which you saved it and click OK.

There is also a tiny set of buttons on the bottom of the Playlist Editor screen. These are the same buttons as those on the main screen used for selecting different tracks or playing, pausing, stopping, or ejecting the current track.

Using ogg123, mpg321, and Play Command-Line Players

Command-line music players are convenient if you happen to be working from a shell (no GUI) or if you want to play audio files from a shell script. Here are a few command-line players that might interest you:

  • ogg123 - The ogg123 command is a good way to play Ogg Vorbis or FLAC audio files from the command line. From the command line, you can play a file ( abc.ogg ), a playlist containing multiple music files ( --list=/tmp/myownlist ), or an HTTP or FTP location ( http://example.com/song.ogg ). The following is an example of the ogg123 command playing an Ogg Vorbis file from the current directory:

     $  ogg123 01-Rhapsody_in_Blue.ogg  Audio Device: Advanced Linux Sound Architecture (ALSA) output Playing: 01-Rhapsody_in_Blue.ogg Ogg Vorbis stream: 2 channel, 44100 Hz Title: Rhapsody in Blue Artist: George Gershwin Track number: 1 Tracktotal: 8 Album: Rhapsody in Blue Genre: Instrumental Time: 00:20.36 [15:29.65] of 15:50.01 (181.6 kbps) Output Buffer 96.9% 

    To stop ogg123 from playing a single song, press Ctrl+C. Do two Ctrl+C keystrokes to quit ogg123 when multiple tracks are queued up.

  • play - The play command can be used to play any of the wide range of audio formats supported by sox . The syntax is simply play file.xx . To see what file formats can be played by the play command, type sox -h to see a list. The play command is useful if you are looking in directories of sound effects, voice content, or other audio files that aren't your typical mainstream multimedia audio types. (You need the sox package installed, which comes with Fedora and RHEL, to be able to use play.)

  • mpg321 - This is similar to the ogg123 command, but it's used (as you might guess) to play MP3 audio files. Like ogg123, you can play a file ( abc.mp3 ), a playlist containing multiple music files ( --list /tmp/myownlist ), or an HTTP or FTP location ( http://example.com/song.mp3 ). Unlike ogg123, mpg321 doesn't come with Fedora or RHEL. You can get the mpg321 package from the Livna.org site.

Using MIDI Audio Players

MIDI stands for Musical Instrument Digital Interface. MIDI files are created from synthesizers and other electronic music devices. MIDI files tend to be smaller than other kinds of audio files because, instead of storing the complete sounds, they contain the notes played. The MIDI player reproduces the notes to sound like a huge variety of MIDI instruments.

There are lots of sites on the Internet for downloading MIDI files. Try the Ifni MIDI Music site ( www.ifnimidi.com ), which contains songs by the Beatles, Led Zeppelin, Nirvana, and others organized by album. Most of the MIDI music is pretty simple, but you can have some fun playing with it.

Fedora and RHEL come with the kmid MIDI player. Kmid is not installed by default (find it in the kdemultimedia package on the DVD). Kmid provides a GUI interface for midi music, including the ability to display karaoke lyrics in real time. There is also the timidity MIDI player (from the timidity++ package on the DVD), which lets you run MIDI audio from a Terminal window.

Note 

Use the timidity MIDI player if your sound card doesn't include MIDI support (install the timidity++ package). It can convert MIDI input into WAV files that can play on any sound card. To start timidity, type timidity file.mid at the command-line prompt.

To start kmid, type kmid & from a Terminal window.

Converting Audio Files with SoX

If you have a sound file in one format, but you want it to be in another format, Linux offers some conversion tools you can use to convert the file. The sox utility can translate to and from any of the audio formats listed in Table 8-1.

Table 8-1: Sound Formats Supported by the sox Utility
Open table as spreadsheet

File Extension or Pseudonym

Description

File Extension or Pseudonym

Description

.8svx

8SVX Amiga musical instrument description format.

.aiff

Apple IIc/IIgs and SGI AIFF files. May require a separate archiver to work with these files.

.au,.snd

Sun Microsystems AU audio files. This is a popular format.

.avr

Audio Visual Research format, used on the Mac.

.cdr

CD-R files used to master compact discs.

.cvs

Continuously variable slope delta modulation, which is used for voice mail and other speech compression.

.dat

Text data files, which contain a text representation of sound data.

.gsm

Lossy Speech Compression (GSM 06.10), used to shrink audio data in voice mail and similar applications.

.hcom

Macintosh HCOM files.

.maud

Amiga format used to produce sound that is 8-bit linear, 16-bit linear, A-law, and u-law in mono or stereo.

.ogg

Ogg Vorbis compressed audio, which is best used for compressing music and streaming audio.

.ossdsp

Pseudo file, used to open the OSS /dev/dsp file and configure it to use the data type passed to Sox. Used to either play or record.

.prc

Psion record.app format, newer than the WVE format.

.sf

IRCAM sound files, used by CSound package and MixView sample editor.

.sph

Speech audio SPHERE (Speech Header Resources) format from NIST (National Institute of Standards and Technology).

.smp

SampleVision files from Turtle Beach, used to communicate with different MIDI samplers.

. sunau

Pseudo file, used to open a /dev/audio file and set it to use the data type being passed to Sox.

.txw

Yamaha TX-16W from a Yamaha sampling keyboard.

.vms

Used to compress speech audio for voice mail and similar applications.

.voc

Sound Blaster VOC file.

.wav

Microsoft WAV RIFF files. This is the native Microsoft Windows sound format.

.wve

8-bit, A-law, 8 kHz sound files used with Psion Palmtop computers.

.raw

Raw files (contain no header information, so sample rate, size, and style must be given).

.ub, .sb, .uw, .sw, .ul, .al, .lu, .la, .sl

Raw files with set characteristics. ub is unsigned byte; sb is signed byte; uw is unsigned word; sw is signed word; and ul is ulaw.

Tip 

Type sox -h to see the supported audio types. This also shows supported options and effects.

If you are not sure about the format of an audio file, you can add the .auto extension to the filename. This triggers SoX to guess what kind of audio format is contained in the file. The .auto extension can be used only for the input file. If SoX can figure out the content of the input file, it translates the contents to the sound type for the output file you request.

In its most basic form, you can convert one file format (such as a WAV file) to another format (such as an AU file) as follows :

 $  sox file1.wav file1.au  

To see what sox is doing, use the -V option. For example:

 $  sox -V file1.wav file1.voc  sox: Reading Wave file: Microsoft PCM format, 2 channel, 44100 samp/sec sox: 176400 byte/sec, 4 block align, 16 bits/samp, 50266944 data bytes sox: Input file: using sample rate 11025 size bytes, style unsigned, 1 channel sox: Input file1.wav: comment "file1.wav" sox: Output file1.voc: using sample rate 44100 size shorts, encoding signed (2's complement), 2 channels sox: Output file: comment "file1.wav" 

You can apply sound effects during the sox conversion process. The following example shows how to change the sample rate (using the -r option) from 10,000 kHz to 5,000 kHz:

 $  sox -r 10000 file1.wav -r 5000 file1.voc  

To reduce the noise, you can send the file through a low-pass filter. Here's an example:

 $  sox file1.voc file2.voc lowp 2200  

For more information on SoX and to get the latest download, go to the SoX - Sound eXchange- home page ( http://sox. sourceforge .net ).

Extracting and Encoding Music

Storing your music collection on your computer's hard disk makes it easy to manage and play your music. Using ripping software, you can copy music tracks from a music CD to your hard disk. As part of the same process (or as a separate step), you can encode each track into another form. That encoding is usually done to reduce the size of the audio files.

Tools that come with Fedora and RHEL for extracting audio tracks from CDs and copying them to your hard disk include the Sound Juicer window and the cdparanoia command. Encoders that come with Fedora and RHEL that are typically used for encoding music include oggenc and flac . Although encoding is often done as part of the extraction process (for example, in Sound Juicer), I give an example of how to use oggenc to encode WAV files to Ogg Vorbis format on the command line.

Extracting Music CDs with Sound Juicer

Sound Juicer is an intuitive graphical tool for extracting music tracks from commercial music CDs. It can read the tracks of a music CD; get CD album, artist, and track information about the CD (provided you have an Internet connection); and save the tracks to your hard disk. During that process, you can also have Sound Juicer encode the tracks in Ogg Vorbis, FLAC, or Voice-quality WAV format.

Note 

Sound Juicer requires the lame plug-in to do encoding that can be played in MP3 players. (Lame stands for "Lame ain't an MP3 encoder," so who am I to argue with that?) Anyway, the lame package contains the lame command-line encoder. The gstreamer-plugins-mp3 package, available from Livna.org, includes the software needed to do lame encoding in Sound Juicer.

To start Sound Juicer, select Applications Sound & Video Sound Juicer CD Extractor. (Or you can launch it by typing sound-juicer or by selecting Music Import Audio CD from Rhythmbox.) Figure 8-8 shows an example of the Sound Juicer window.

image from book
Figure 8-8: Extract songs from music CDs and encode them using Sound Juicer.

Here's how to use Sound Juicer to extract songs from an audio CD and encode them to any supported encoding type:

  1. After starting Sound Juicer, insert an audio CD into your computer's CD drive and select Re-read on the Sound Juicer window. (If another audio player starts up, you can close it.)

  2. Select Edit Preferences. The Preferences window appears, as shown in Figure 8-8.

  3. Set the following Preferences:

    • CD Drive - If you have multiple CD drives, choose the one you want to extract from.

    • Music Folder - Choose the folder the music tracks will be written to. Make sure that the disk partition containing the folder has enough space for you to store your music collection. As I noted earlier, a separate partition is a good idea for a large collection.

    • Track Names - Here's where you identify the names that will be used to store your music. The Folder hierarchy is set to the artist's name, followed by the Album title. So multiple albums by the same artist will be in the same folder. The tracks themselves, indicated by the File name box, are stored by track number and song title, separated by a dash. You can choose different ways of indicating the files and folder names used to store your music.

    • Output - This sets the type of encoding that is done to each track. Your choices are FLAC, Ogg Vorbis, and WAV. With a gstreamer-plugins-mp3 package installed, you should have the choice of MP3 as well. I normally use Ogg Vorbis because the quality is good and it takes less disk space. In cases where I want higher quality output (with some compression), I tend to use FLAC. Choose WAV to store the file without compression (highest quality, largest size).

  4. Close the Preferences window and select Extract from Sound Juicer. The tracks are extracted, encoded, and stored on your hard disk to the folder you selected.

Extracting and Encoding Music CDs from Commands

Instead of using a graphical tool (such as Sound Juicer) to extract and encode your music CDs, you can use commands instead. The commands described here are available on most Linux systems, while those systems might tend to offer different graphical tools. Using these commands, you also have more flexibility in setting options to use for your encoding.

This procedure takes you through the process of extracting tracks from CD ( cdparanoia ) and encoding them to Ogg Vorbis ( oggenc ).

  1. Create a directory to hold the audio files, and change to that directory. Make sure the directory can hold up to 660MB of data (or less if you are burning fewer songs). For example:

     #  mkdir /tmp/cd  #  cd /tmp/cd  
  2. Insert the music CD into your CD-ROM drive. (If a CD player opens on the desktop, close it.)

  3. Extract the music tracks you want by using the cdparanoia command. For example:

     #  cdparanoia -B  

    This example reads all of the music tracks from the CD-ROM drive (the location of your CD drive may be different). The -B option says to output each track to a separate file. By default, the cdparanoia command outputs the files to the WAV audio format.

    Instead of extracting all songs, you can choose a single track or a range of tracks to extract. For example, to extract tracks 3 through 5, add the " 3+5 " option. To extract just track 9, add " 9 ".

    Watch the "output smiles" on the progress bar as the tracks are extracted. Normal operation (low/no jitter) is represented by a smily face :-) while errors cause faces that are progressively more worried: :- :-/ :-P and so on.

  4. To encode your WAV files to Ogg Vorbis, you can use the oggenc command. In its most basic form, you can use oggenc with one or more WAV or AIFF files following it. For example:

     $  oggenc *.wav  

    This command would result in Ogg Vorbis files created from all files ending with .wav in the current directory. An Ogg file is produced for each WAV file, with oggenc substituting .ogg for .wav as the file suffix for the compressed file.

Instead of using oggenc to convert the WAV files to Ogg Vorbis, you can use the flac command to convert the WAV files to FLAC format ( *.flac ). To give you an idea of the space consumed by each format, I started with a WAV file of 27MB. When I encoded it with FLAC, it went to 11MB, while encoding the WAV file to Ogg Vorbis ended in 1.5MB.

Tip 

Another tool for ripping and compressing a music CD is grip. Grip allows you to select oggenc or other tools to do the file compression. While grip has been dropped from Fedora and RHEL distributions, you can still get grip from Fedora Extras (type yum install grip ). Refer to the Web site associated with this book ( www. wiley .com/go/fedora6bible ) for information on using grip.

Creating Your Own Music CDs

Fedora and RHEL contain tools for burning CDs and DVDs from either the command line or graphical window. CD and DVD burners are great for backing up your data and system files. The following sections describe how to use CD/DVD burning software specifically to create audio CDs.

Creating Audio CDs with Cdrecord

You can use the cdrecord command to create either data or music CDs. You can create a data CD by setting up a separate file system and copying the whole image of that file system to CD. Creating an audio CD consists of selecting the audio tracks you want to copy and copying them all at once to the CD.

This section focuses on using cdrecord to create audio CDs. The cdrecord command can use audio files in .au, .wav , or .cdr format, automatically translating them when necessary. If you have audio files in other formats, you can convert them to one of the supported formats by using the sox command (described previously in this chapter).

Cross-Reference 

See Chapter 13 for how to use cdrecord to create data CDs.

Start by extracting music tracks from your audio CD (using a tool such as cdparanoia, described earlier in this chapter). After you have created a directory of tracks (in WAV format) from your CD, you can copy those files to your CD writer as follows:

 #  cdrecord -v dev=/dev/cdrom -audio *.wav  

The options to cdrecord tell the command to create an audio CD ( -audio ) on the writable CD device located at /dev/cdrom . The cdrecord command writes all files from the current directory that end in .wav . The -v option causes verbose output.

If you want to change the order of the tracks, you can type the track names in the order you want them written (instead of using *.wav ). If you don't indicate a recording speed, cdrecord will try to choose an appropriate one. If you get errors recording, sometimes reducing the recording speed can help. For example, try speed=2 or speed=4 on the cdrecord command line.

After you have created the music CD, indicate the contents of the CD on the label side of the CD. The CD should now be ready to play on any standard music CD player.

Creating Audio and Data CDs with K3b

For anyone who has struggled getting the options just right with cdrecord , the K3b CD/DVD Burning Facility is a wonderful tool. Modeled after popular CD recording tools you can find in Windows environments, K3b provides a very intuitive way to master and burn your own CDs and DVDs.

Among the best uses of K3b are copying audio CDs and burning ISO images (perhaps containing a Linux distribution you want to try out) that you download from the Internet. To start K3b, select Sound & Video K3b from the Applications menu. Figure 8-9 shows an example of the K3b window.

image from book
Figure 8-9: Master and burn CDs and DVDs using the K3b window.
Creating a New Audio CD

If you have a bunch of audio tracks you want to put together for your own CD, here's how to do that from the K3b window:

  1. Select the New Audio CD project icon from the main K3b window.

  2. Open a folder window and go to the folder that contains the music track files you want to burn to CD.

  3. Drag-and-drop the music tracks you want to the Current Projects pane on the bottom of the K3b screen.

  4. Right-click on any track to see properties of that track. You can change or add to the information there. To change the order, you can drag tracks to different locations within the pane.

  5. Select the Burn button in the upper-right corner of the K3b Current Projects screen.

  6. From the Audio Project window that appears, select options for doing the burn and click the Burn button to burn the CD. As an alternative, you can select Only Create Image, to create an ISO image of all the files that you can burn to CD at a later time.

Copying a CD

If there is an audio or data CD you want to copy, you can do so from the K3b window as follows:

  1. Insert the CD you want to copy into your CD drive.

  2. Select Tools CD Copy CD from the K3b window. The CD Copy window appears (as shown in Figure 8-9).

  3. Choose options for the CD copy, such as the CD reader and burner devices (they can be the same if you have only one). You can also choose to do a normal copy or clone copy. Assuming you have only one CD drive (and it's a burner ), you need to set a temporary directory that can hold the entire contents of the CD.

  4. When you are happy with the options, click Start. K3b begins copying the source disk to the temporary directory you indicated.

  5. When prompted, remove the original CD and insert a blank CD into the CD drive.

  6. Click Start to continue. K3b will tell you when the copy is complete.

  7. Eject the CD and mark it appropriately.

Burning an ISO Image to CD

Before your songs are copied to CD, they are gathered together into a single archive, referred to as an ISO image. You can download ISO images of software (such as the DVD or CD images used to install Fedora Core). To burn any of the images just described to a CD using K3b, do the following:

  1. Download or otherwise copy an ISO image to a directory on your hard disk. A CD image will be up to about 700MB, while a DVD image can be over 4GB.

  2. From the K3b window, select Tools CD Burn CD Image. A Burn CD Image window appears.

  3. Next to the Image to Burn box, select the folder icon to browse your file system to find the ISO image. After you select the image, it is loaded into the Burn CD Image window, which will display information about the image, including its MD5sum.

  4. Check the MD5sum and compare it with the MD5sum provided with the ISO image when you downloaded it. (There is likely a file ending with md5 in the directory from which you downloaded the image.)

  5. If the MD5sums match, continue by checking out the settings on the Burn CD Image window. I've had generally good luck using the default settings. However, I find that if I get a bad burn, often changing the speed from Auto to a slower speed that is auto-detected will result in a good burn.

  6. Click Start to begin burning the image to CD. When the writing is done, K3b will tell you whether it thought the burn process was successful.

The descriptions for burning CDs apply to DVDs as well (provided you have a DVD burner). Remember that you are going to need a lot more temporary space on your hard disk to work with DVDs than you would to work with CDs.

Creating CD Labels with Cdlabelgen

The cdlabelgen command can be used to create tray cards and front cards to fit in CD jewel cases. You gather information about the CD and cdlabelgen produces a PostScript output file that you can send to the printer. The cdlabelgen package also comes with graphics (in /usr/share/cdlabelgen ) that you can incorporate into your labels.

Note 

Starting with Fedora Core 4, cdlabelgen was dropped from the main distribution, although it is in RHEL 4. Look for cdlabelgen in Fedora Extras ( yum install cdlabelgen ).

Here is an example of a cdlabelgen command line that you can use to generate a CD label file in PostScript format. (Type it all on one line or use backslashes, as shown here, to put it on multiple lines.)

 cdlabelgen -c "Grunge is Gone" -s "Yep HipHop" \ -i "If You Feed Me%Sockin Years%City Road%Platinum and Copper%Fly Fly \ Fly%Best Man Spins%What A Headache%Stayin Put Feelin%Dreams Do Go \ Blue%Us%Mildest Schemes" -o yep.ps 

In this example, the title of the CD is indicated by -c "Grunge is Gone" and the artist by the - s "Yep HipHop" option. The tracks are entered after the -i option, with each line separated by a % sign. The output file is sent to the file yep.ps with the -o option. To view and print the results, you can use the evince command as follows:

 $  evince yep.ps  

The results of this example are shown in Figure 8-10.

image from book
Figure 8-10: Generate CD jewel case labels with cdlabelgen and print them with evince.

You will probably want to edit the command and re-run evince a few times to get the CD label correct. When you are ready to print the label (assuming you have a printer configured for your computer), click Print All to print the label.




Fedora 6 and Red Hat Enterprise Linux Bible
Fedora 6 and Red Hat Enterprise Linux Bible
ISBN: 047008278X
EAN: 2147483647
Year: 2007
Pages: 279

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net