DTSSource.ax and azidts keep constantly crashing on my pc, so I came up with this solution:
what u need:
DTSWAVSource.ax - hypercube's DTSWAV filter (hypercube.is.dreaming.org)
iviaudio.ax - Intervideo's Audio Decoder
wavdest.ax - Wave Destination Filter (from the DirectX SDK, it's included in a few codec packs iirc)
qcap.dll - File writer (windows standard?, if not, it's from the DirectX SDK)
graphedit - microsoft's filter tool, that's spread all around the net
a hex editor of your choice
cool edit or any other wave editor which is able to read 6 channel waves
possibly dts2wav.exe from hypercube's website to convert your DTS file into a single WAV and DTSParser to determine the sample rate of your DTS file
1. start graphedit
2. graph => insert filter (or ctrl-f), DirectShow => DTSWAVSource => select your DTS wave
3. insert filter DirectShow => Intervideo Audio Decoder
4. insert filter DirectShow => WAV Dest
5. insert filter DirectShow => File writer => choose a name for your target file (e.g. something.wav)
6. connect DTSWAVSource => Intervideo Audio Decoder => WAV Dest => File writer
7. right-click Intervideo Audio Decoder => properties => select 5.1 => click ok
8. click the play button on the toolbar of graphedit, start the explorer and wait till the filesize of your target file stops increasing. then close graphedit.
9. open your target file with a hex editor, change the byte at offset 16 from 02 to 06. if you just converted a 44,1 kHz DTS, change the word at offset 18 from 0x80BB (48000 kHz) to 0x44AC (44100 kHz). save the file.
10. open your target file with cool edit - tada, you have six seperate waves. the first one is left, 2nd is center, 3rd is right, 4th is rear left, 5th is rear right and 6th is for the subwoofer.