Movies/DVD's are already encoded in Dolby Digital or DTS formats, which can be carried over SPDIF. Games however, use uncompressed audio, and an uncompressed 5.1 audio signal can NOT be carried over a SPDIF connection, so you get 2.0 instead.The only way to solve this problem is to get a soundcard that can handle real-time encoding to either Dolby Digital or DTS.
If you’re connecting via HDMI, everything’s in the clear. You’ve got uncompressed stereo, 5.1, 7.1, and DTS options. For most scenarios, this is perfect. (Protip: don’t expect to get anything more than 2-channel audio by running a digital optical cable from your TV. Most of them are throttled down, but check your display manual for details.
For the Dolby only headsets, my understanding is that these will work but you will only get stereo audio since we only pass Stereo and DTS through the optical port.
Optical output can only carry a few outputs:Uncompressed 2.0 PCM (up to 192 KHz/Sec)Dolby Digital 5.1DTS 5.1Both DD/DTS requires that your sound system is able to decode the incoming signal for the output to be sent to your speakers, hence why they are generally not used as output. Instead, 2.0 output is generally upscaled to 5.1 using other methods (DTS Neo PC, Dolby Pro Logic, etc). To get 'true' 5.1, you either need a receiver/speakers than can decode an incoming DD/DTS signal, or connect using HDMI, which can carry 5.1/7.1 as uncompressed PCM, removing the need for a decoder. Alternativly, you can use the older analog connections to hook an individual speaker to an individual sound channel (still the best option for PC's, for the above reasons).