There is indeed already a node about this, fool.
Sound quality of an Mpeg 1 Layer 3 Audio File (hereafter 'MP3') is usually (in my experience) dictated by four things: Source, Encoder, Player and Output; quality is affected linearly in that order. I am not an Audiophile, and this is not written for an audiophile, just for people who like nice sounding tunage.
- Source - If the audio you're grabbing is from a new CD, ripped digitally, you should not have any issues here. However, it's not totally foolproof. If the CD is badly scratched, your ripper will either simply record the scratch, or in some cases completely bork itself. Also, unless you have a God Box, using the PC while you rip is not a good idea since ripping a CD is very timing dependent -- just like burning a CD, if the flow of data it interrupted, the rip will end up with gaps and pops.
If you're transferring from another source, though a sound input device, the quality if that input device comes in to play. Many sound chips are perfectly fine, but a number of older cards are crippled in the input department and only do things like 8-bit input or 22kHz sampling.
- Encoder - Assuming the raw PCM Data made it into the PC without woe, the next step is to package it into the fabu MP3 format. Many encoders exist and, unless you're an audiophile, which encoder your use isn't an issue... within reason. Older Xing encoders should be avoided like the plague because they cut out at 16kHz versus the 20 or 22kHz that other encoders do; The newest Xing codecs do not have this problem because they are basically a copy of the Fraunhaufer codec.
The Real Jukebox encoder has issues, too, so I'd recommend you avoid it.
For most purposes a basic encoder like LAME should be fine, unless you're anal, in which case you'll want to look into something like the Radium codec or Encoder-X.
Bitrate has always been a huge issue with most people, and so I'm not going to get into it in any great detail. Suffice it to say that, if at all possible, don't use 128kbps encoding. Very few encoders can handle complex wave forms or deep bass properly at 128, and so you're get mangled and clipped sound. Do yourself a favor and go to 160kHz, or even 192 is you can justify the extra disk space. Don't use VBR.. just don't.
- Player - Once the file is encoded you, obviously, need a player to play it. Thankfully decoding an MP3 is much easier than encoding it, and so most MP3 Players do a decent (if not good) job of it. I'm partial to Winamp 2.71's Nitrane Decoder, with the stock XMMS decoder coming in at a close second. Players that suck include the old Micros~1 Media Player and Quicktime 4.0 (the decoder has been improved in 4.1 and 5.0).
- Output - The last hurdle in getting great MP3 wave-forms is where the sound comes back out as analog sound waves. Sound cards are the usual cause of quality loss here, with speakers as a close second reason.
While most sound chips are up to the task, many old sound cards only do 8-bit output and have horrid signal-to-noise ratios -- the original Sound Blaster Pro is a prime example. You might also be getting a 50/60-cycle hum in your speakers, usually due to improperly shielded power wires near your speaker lines. This can usually be remedied by using a Ground Loop Isolator. They're available from Radio Shock (in the US) and are specifically designed for this purpose.
Another side not about output quality is the processing power of the device doing the decoding: Decoding a 44kHz 192kbps Data stream takes a lot of power, and if you don't have it you could be forced to drop your sampling rate to something like 22kHz. This is a bad thing, and if your can upgrade your computation capacity, do.