MP3 (MPEG Layer 3 Audio) accomplishes near CD-quality sound, leaving no reason to let your FreeBSD workstation fall short of its offerings.
By far, the most popular X11 MP3 player is XMMS (X Multimedia System). Winamp skins can be used with XMMS since the GUI is almost identical to that of Nullsoft's Winamp. XMMS also has native plug-in support.
XMMS can be installed from
the multimedia/xmms port
or package.
XMMS's interface is intuitive, with a playlist, graphic equalizer, and more. Those familiar with Winamp will find XMMS simple to use.
The audio/mpg123 port
is an alternative, command-line MP3 player.
mpg123 can be run by specifying
the sound device and the MP3 file on the command line.
Assuming your audio device is
/dev/dsp1.0 and you want to play the
MP3 file Foobar-GreatestHits.mp3
you would enter the following:
# mpg123 -a /dev/dsp1.0 Foobar-GreatestHits.mp3
High Performance MPEG 1.0/2.0/2.5 Audio Player for Layer 1, 2 and 3.
Version 0.59r (1999/Jun/15). Written and copyrights by Michael Hipp.
Uses code from various people. See 'README' for more!
THIS SOFTWARE COMES WITH ABSOLUTELY NO WARRANTY! USE AT YOUR OWN RISK!
Playing MPEG stream from Foobar-GreatestHits.mp3 ...
MPEG 1.0 layer III, 128 kbit/s, 44100 Hz joint-stereoBefore encoding a CD or CD track to MP3, the audio data on the CD must be ripped onto the hard drive. This is done by copying the raw CDDA (CD Digital Audio) data to WAV files.
The cdda2wav tool, which is a part of
the sysutils/cdrtools
suite, is used for ripping audio information from CDs and the
information associated with them.
With the audio CD in the drive, the following command can
be issued (as root) to rip an entire CD
into individual (per track) WAV files:
# cdda2wav -D 0,1,0 -Bcdda2wav will support ATAPI (IDE) CDROM drives. To rip from an IDE drive, specify the device name in place of the SCSI unit numbers. For example, to rip track 7 from an IDE drive:
# cdda2wav -D /dev/acd0 -t 7The -D
indicates the SCSI device 0,1,00,1,0,
which corresponds to the output of cdrecord
-scanbus.
To rip individual tracks, make use of the
-t option as shown:
# cdda2wav -D 0,1,0 -t 7This example rips track seven of the audio CDROM. To rip a range of tracks, for example, track one to seven, specify a range:
# cdda2wav -D 0,1,0 -t 1+7The utility dd(1) can also be used to extract audio tracks on ATAPI drives, read Section 19.6.5, “Duplicating Audio CDs” for more information on that possibility.
Nowadays, the mp3 encoder of choice is
lame.
Lame can be found at
audio/lame in the ports
tree.
Using the ripped WAV files, the following command will
convert
to
audio01.wav:audio01.mp3
# lame -h -b 128 \
--tt "Foo Song Title" \
--ta "FooBar Artist" \
--tl "FooBar Album" \
--ty "2001" \
--tc "Ripped and encoded by Foo" \
--tg "Genre" \
audio01.wav audio01.mp3128 kbits seems to be the standard MP3 bitrate in
use. Many enjoy the higher quality 160, or 192. The higher
the bitrate, the more disk space the resulting MP3 will
consume--but the quality will be higher. The
-h option turns on the “higher quality
but a little slower” mode. The options beginning with
--t indicate ID3 tags, which usually contain
song information, to be embedded within the MP3 file.
Additional encoding options can be found by consulting the
lame man page.
In order to burn an audio CD from MP3s, they must be converted to a non-compressed WAV format. Both XMMS and mpg123 support the output of MP3 to an uncompressed file format.
Writing to Disk in XMMS:
Launch XMMS.
Right-click on the window to bring up the XMMS menu.
Select Preference under
Options.
Change the Output Plugin to “Disk Writer Plugin”.
Press Configure.
Enter (or choose browse) a directory to write the uncompressed files to.
Load the MP3 file into XMMS as usual, with volume at 100% and EQ settings turned off.
Press Play —
XMMS will appear as if it is
playing the MP3, but no music will be heard. It is
actually playing the MP3 to a file.
Be sure to set the default Output Plugin back to what it was before in order to listen to MP3s again.
Writing to stdout in mpg123:
Run mpg123 -s
audio01.mp3 >
audio01.pcm
XMMS writes a file in the WAV
format, while mpg123 converts the
MP3 into raw PCM audio data. Both of these formats can be
used with cdrecord to create audio
CDs. You have to use raw PCM with burncd(8). If you
use WAV files, you will notice a small tick sound at the
beginning of each track, this sound is the header of the WAV
file. You can simply remove the header of a WAV file with
the utility SoX (it can be
installed from the audio/sox port or package):
% sox -t wav -r 44100 -s -w -c 2 track.wav track.rawRead Section 19.6, “Creating and Using CD Media” for more information on using a CD burner in FreeBSD.
This, and other documents, can be downloaded from ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/
For questions about FreeBSD, read the
documentation before
contacting <questions@FreeBSD.org>.
For questions about this documentation, e-mail <doc@FreeBSD.org>.