I wanted to share my experience with this relatively common problem. The main difference here is I am not using Realtek card, but one of those external USB 5.1 or 7.1 sound card with SPDIF.
So the problem was that I was getting output from the 2 front speakers and the subwoofer but nothing from the rear speakers. Thus, making my home theater experience in 2.1. When I was playing a 6-channel sound test file, the signal which was supposed to play in the rear speakers was simply playing in the front!
Now, this is my solution, take what you want from it and leave the rest
--- Context ---
OS : Windows 7 64 bit
Audio output : SPDIF
Sound card : External USB 6 Channel 7.1 Audio Sound Card with S/PDIF
Problem : Sound comes from the 2 front speakers and subwoofer, but not rear
# Step 1 #
This being said, the first step is to get the RIGHT driver for the card. There are many, many clones of it, but in the end, it's all based on C-Media chipset. The driver that comes with the card, "Cm106", is not the good version. In my case, Windows was freezing all the time. So, what you need to do first is to find with google the version "188.8.131.520
" instead of "184.108.40.2060
# Step 2 #
Remove VLC !! Normally it is the best player around and I agree, but for this case, since the codecs are integrated, it is more painful (if not impossible) to configure.
# Step 3 #
Install Windows Media Player Classic - Home Cinema. Also called MPC-HC.
# Step 4 #
Get the latest version of AC3Filter. Yep, there is already a version in MPC-HC, but this external codec gives just the options we need to adjust.
# Step 5 #
Start a 5.1 movie or whatever in MPC, pause it, and look besides the clock (bottom-right corner). You will have an AC3Filter icon. Open it because we gonna have to make important changes.
# Step 6 #
Apply these changes :
--- 1st tab ---
Check "Use SPDIF"
Change output format to "5.1 Surround"
Change rate to 48,000
Under preferences, choose "SPDIF ON"
--- SPDIF Tab ---
UNCHECK all SPDIF passtrough
Change the mode to SPDIF/DTS outline
Choose SPDIF/DTS conversion to DTS16
Check "Detect SPDIF tracks in PCM stream"
UNCHECK "SPDIF Output in PCM"
Note : maybe you could say that some of those settings are useless to change, but I did this to ensure that the signal that is being sent to the receiver will always be the same format, and not depending of the source in the PC.
The goal here was to avoid situations in which one movie works, but not another.
At this time, if you play "6_Channel_ID.wav" in MPC-HC, you should get playback from all 6 speakers.