wouldnt pwm imply the input signal be switching on/off at a particular voltage? ie digital
Yes. PWM is digital. [u]This page[/u] shows how PWM works... If you "flash" and LED on & off fast enough, you won't see the flashing but it will look dim.
AT 50% PWM the average current will be half and it will look the same as if you reduced the continuous "analog" current in half.
This can work for audio too. Class D amplifiers use PWM. But, while you can't see an led blinking at 490Hz, you can hear 490Hz. So, class D amplifiers use a much higher frequency (maybe 100kHz or more). With a PWM frequency that's much-higher than the audio frequency, you can filter-out the PWM without filtering-out the audio.
the arduino can't output true analog but it can output varying voltage levels...
No it cannot. It puts-out only 0v and 5V (approximately). A DAC can put-out 1VDC, but the Arduino cannot.
With the Arduino at 20% PWM, you have 1V average. You can low-pass filter the PWM to get constant 1VDC. But since the Arduino's default PWM is 490Hz, around the middle of the audio range, you can't filter-out the PWM pulses without also filtering-out (most of) the audio too.
10 bits of resolution meaning average number of sampling points per sin wave? and again, how is analogRead() a pwm sample point, it should be a pcm sample point no?
10-bits is the amplitude (or "height") resolution. A sample is represented in 2-dimensions of amplitude and time.
The time-resolution is defined as the sample rate (Hz or Samples-per-second). As you may know, CDs have a sample rate of 44.1kHz.
With 10-bits you "count" to 11 1111 1111 in binary, which is 1023 in decimal. As you may also know, CDs use 16-bit signed integers (-32,768 to +32,767 when converted to decimal).
The Audacity website has a nice [u]introduction to digital audio[/u] (normal PCM). It shows how the waveform is digitized/sampled, and how you can"connect the dots" and filter (smooth) to reproduce the analog waveform.