Converting audio to MP3's is normally a 2 stage process, first the audio is
recorded into a WAV format, then the WAV is then converted into an MP3. Some
utilities will do both processes in one go for you.
The format you wish to encode audio from, CD or direct audio, will determine what software tools you need to produce the WAV file.
If you are wanting to encode from audio input, you will need a program that will record from your soundcard's input and save the results in a WAV format. Below are some useful utilities (most of the comments are taken from the respective website of the app.)
Cdparanoia is a Compact Disc Digital Audio (CDDA) extraction tool, commonly known on the net as a 'ripper'. The application is built on top of the
Paranoia library, which is doing the real work (the Paranoia source is included in the cdparanoia source distribution). Like the original cdda2wav,
cdparanoia package reads audio from the CDROM directly as data, with no analog step between, and writes the data to a file or pipe in WAV, AIFC or raw 16 bit linear PCM. Compared to cdda2wav, it's much slower but really gets the best results you can get even from CDs that are difficult to rip for scratches or other read-errors.
RipEnc is a bourne shell script frontend to Cdparanoia, cdda2wav, tosha and Bladeenc, 8hz-mp3, l3enc. It utilizes CDDB lookups to automate the naming of songs as they are ripped. A manual naming option is also available. The entire CD can be ripped or you can pick the songs to rip. ID3 tags are also supported.
RipperX is a GTK program to rip CD audio and encode mp3s. It has plugins for
cdparanoia, BladeEnc, Lame Mp3 encoder, XingMp3enc, 8hz-mp3, lame, and the
ISO v2 encoder. It also has support for CDDB and ID3 tags.
Grip is a GTK-based CD-player and CD-ripper/MP3-encoder. It has the ripping capabilities of cdparanoia built in, but can also use external rippers (such as cdda2wav). It also provides an automated frontend for MP3 encoders, letting you take a disc and transform it easily straight into MP3s. The CDDB protocol is supported for retrieving track information from disc database servers. Grip works with DigitalDJ to provide a unified "computerized" version of your music collection.
To convert the WAV file to MP3 format you will need an encoder:
Blade's MP3 Encoder
BladeEnc is a freeware MP3 encoder. It is based on the same ISO compression routines as mpegEnc, so you can expect roughly the same, or better, quality . The main difference is the appearance and speed. BladeEnc doesn't have a nice, user-friendly interface like mpegEnc, but it is more than three times faster, and it works with several popular front-end graphical user interfaces.
In the great history of GNU naming, LAME stands for LAME Ain't an Mp3 Encoder. LAME is not an mp3 encoder. It is a GPL'd patch against the dist10 ISO demonstration source. LAME is totally incapable of producing an mp3 stream. It is incapable of even being compiled by itself. You need the ISO source for this software to work. The ISO demonstration source is also freely available, but any commercial use (including distributing free encoders) may require a license agreement from FhG (Fraunhofer Gesellschaft, Germany).
This is a very fast MP3 encoder for x86-CPU, which is based on LAME ver 3.29beta and optimized by PEN@MarineCat, Keiichi SAKAI, URURI, kei and shigeo.
(You will also need to download NASM to compile the source, which can be found
http://www.web-sites.co.uk/nasm/)
Xaudio is a very fast and very robust multiplatform solution for Digital
Audio playback, especially targeted at MPEG Audio (MP1, MP2 and MP3) decoding.
AlsaPlayer is a new type of PCM player. It is heavily multi-threaded and tries to exercise the ALSA library and driver quite a bit. It has some very interesting features unique to Linux/Unix players. The goal is to create a fully pluggable framework for playback of all sorts of media with the focus on PCM audio data.
Full speed (pitch) control, positive *and* negative! First Linux- and
only GPL player that does this!! MP3's and CD's do varispeed :)
What is mpg123? It is a fast, free and portable MPEG audio player for Unix.
It supports MPEG 1.0/2.0 layers 1, 2 and 3 (those famous "mp3" files), and
it has been tested on a wide variety of platforms, including Linux, FreeBSD,
NetBSD, SunOS, Solaris, IRIX, HP-UX and others. For full CD quality playback
(44 kHz, 16 bit, stereo) a Pentium (or fast 486), SPARCstation10, DEC Alpha
or similar CPU is required. Mono and/or reduced quality playback (22 kHz or
11 kHz) is even possible on slower 486 CPUs.
FreeAmp is an extensible, cross-platform audio player. It features an
optimized version of the GPLed Xing MPEG decoder which makes it one of the
fastest and best sounding players available. FreeAmp provides a number of
the most common features users have come to expect in a clean, easy to use
interface.
Streaming servers allow you to 'broadcast' MP3's across a network, whether this
is your intranet or the internet itself.
Icecast
Welcome! icecast is a Mpeg Layer III Audio broadcasting system brought to
you by the linuxpower.org team. Icecast comes bundled with iceplay, and
icedir. iceplay is a playlist streamer that will allow you to send
pre-encoded files to your icecast server.
LiveIce is the source client for Icecast which encodes an mpeg stream for broadcast as it is created. Unlike clients such as Shout and IceDJ this permits the broadcast of live audio, rather than prerecorded mp3's.
LiveIce is bundled with Icecast, newer versions together with documentation may be found at the website below:
eMixer is an easy-to-use front-end to mpg123 that allows you to play and mix two mp3 streams together. The ability to mix two mp3s makes eMixer act like a cross-fader, effectively giving the user DJ-like capabilities from the computer console. eMixer is also very able in a "real time" party environment. eMixer is based on the original mp3 mixing code upon which liveice's mixing component is built.