A complete guide of and debunking of audio on Linux, ALSA and Pulse
Explains sampling rate, bit-depth, resampling, encoding, ALSA, Pulse, Jack. The approach is listening, not recording and editing, but solid starter info nevertheless.
Here's the TL:DR:
As you can see, there's little you can do in Linux in the first place, so what can you do if you want better sound?
- When you want to encode audio, prefer open, free formats like Ogg Vorbis. MP3 is not your friend.
- Never encode a lossy format to another lossy format. Always try to encode from a 96kHz, 24-bit FLAC if you can.
- Generally you won't have to touch PulseAudio, but there are a few things you can change in the /etc/pulse/daemon.conf file.
- You can pick a different resampling method, see the manual for your options.
- You should probably match the default-sample-* settings to your sound card.
- Generally you shouldn't touch this file unless you are experiencing sound issues.
- Do not set avoid-resampling to true, this is a huge misconception, this does not improve sound quality at best, and in the worst case, can actually break things.
MYTH: Linux sound quality is worse than Windows. They are exactly the same, Pulse doesn't work that different from how Windows does mixing and resampling.
- Buy a good external DAC, turning a digital signal into analog inside of a PC case is a bad idea due to electromagnetic interference. Ever plugged your headphones into the front audio jack of your case? You will hear the noise. A good DAC will make a meaningful improvement your listening experience.
- Your headphones and amplifier really make the biggest difference. Having a good pair of headphones paired with a good headphone amplifier ten times more important than whatever chip you got in your PC.
MYTH: Linux sound quality can be better than Windows.
They are exactly the same. All improvements in quality come from the
driver and your DAC, not the sound server. Pulse and ALSA do not touch
the PCM beyond moving it around and resampling it.