Using arduino to drive speakers/headphones.

So, I'm coming up with a project that can be thought of as a fancy pair of headphones which i can control the volume and balance of via arduino. (Note the current design has 3 speakers). Issue is, that in my research Arduino seems omewhat lacking on the audio front - only supporting up to 19khz and also requiring certain file types to play properly. My solution to this is to work further towards the analog side of things: Headphones don't seem to typically have their own circuits, instead tending towards taking electricity from the audio signal to drive sound out. I was thinking of doing the same thing, not influencing the audio signal, but individually controlling the volume (and other basic features such as treble) with arduino.

So my question boils down to: are there ways to use arduino to control the volume of a audio signal without damaging or change the frequency of the original signal. Or do you have other suggestions that would acheive the same effect. Thanks for reading.

Sure, use a digitally controlled potentiometer. Signal into one end, other to Gnd, wiper to the amplifier.

Thanks dude, i had not heard of those before. I'll certainly look into it