The sampling RATE is also an important factor. Nyquist, et.al. says that you need 2x the highest frequency you want to reproduce. Standard good-quality audio is defined as 20Hz to 20KHz. That is why CDs use a sample rate or 44KHz (2x the 20KHz maximum plus a bit more to accomodate the low-pass filter skirts.) But, again, you say you don't need pristine quality, so maybe you could get away with a sample rate of 11KHz or even 8KHz?
Yeah, I'm aware of that 2x sampling rate issue. And I did some tests last night on the sound effect I want to use in Sound Forge, to see exactly how small I could get it. Turned out it sounded fine at 8bit, but I couldn't lower the sampling rate any lower than 22khz without it turning to muddy sounding crap because it's mostly frequencies around 5-10khz.
Even at 8bit and 22khz mono, and sampling only a single cycle of the effect which I would then have to adjust in pitch, I still couldn't get it down below about 20K, which is too big for the Arduino to store.
So... not sure what I'm gonna do about that.
I wonder if I could compress the sound in some way. A lower sample depth would give a sine wave that isn't very smooth, but what if instead of storing the samples, I stored the difference between each, and instead of simply storing the difference, I set it up so that stored diferences of 1 2 3 or 4 would be translated to 1 2 4 or 8, so greater changes would be stored with less accuracy, while finer adjustments would have greater accuracy?
Well just an idea. Even if that gave me 2x compression it still wouldn't really be enough to fit the sample in memory with my program.
Hm... I wonder if one could do something like that with a resistor ladder to get a better sounding output. That's not what they did with the phones, is it? It sounds like you were saying they did a kind of compression like that, but with the sample value, rather than the difference, so louder samples would be lower quality.
Not even sure how that compression idea of mine would even sound actually. Or if you could do that with a resisotr ladder dac.