This guide was most useful, thanks very much!
I've got an Auzentech X-Fi prelude and, using the new PAX drivers, I can successfully grab the DTS bitstream (requires bitmatched recording) and throw it through AC3filter in graphedit. Obviously, the latency was an issue, so I did exactly the above, but in AC3filter, I disabled the SPDIF-out stuff, including pass-through, so I'm getting playback on the PC itself.
However, I'm only getting the left and right channels from the decoded DTS input when using the "open device" method in MPC (there were no separate inputs, just the one for the whole card; the input is specified in the recording control).
This is especially confusing when, using graphedit to connect to the MPC graph and saving it, all the channels come through fine (just with that annoying delay). The AC3filter configuration shows up exactly the same in both cases, and shows "levels" for all six channels.
Is it something to do with MPC setting the number of channels, because it's "opened" a 2-ch source? How can I circumvent this? MPC plays DTS, AC3 files with the full complement of channels, so I cannot for the life of me figure it out.
Just two months ago I was thinking this would never be possible, but now that I can actually hear the DTS input, I'm very much impressed and encouraged - just miffed that there's still this one niggle!
Is there something obvious I'm missing, or is there any other way (i.e. with other software etc.) I can "play" the SPDIF input directly and avoid the latency? Thanks in advance!
XP32 SP3, Auzentech X-Fi Prelude (PAX Auzentech v3.10), AC3filter v1.63b, MPC v1.2.972.0
I was mistaken. The graph I saved from MPC does not work with all six channels. If I construct it manually, it still does not work. However, I noticed that when I load a dts / ac3 file into graphedit, the clock icon on the renderer (Default DirectSound Device, in all cases) is yellow after I press "play", but in the MPC graph (and by default) it is always plain. Right clicking the renderer and clicking "select clock" turns the clock icon yellow, and I get all six channels when I press play!
Below, the top graph works fine, with all six channels audible; the bottom one gives only Left and Right (but AC3 filter shows activity on all six channels). The only difference is that "select clock" is used in the top one.
So, the question is, how do I get MPC to use the "clock" when it opens the digital input? As far as I can tell, the clock is for synchronisation, so it's confusing that it makes a difference, to say the least!
In graphedit, the audio output is not only delayed, but it also phases slightly, i.e. by playing slightly too fast (48.6 kHz), before slowing down for a bit (~ 47.5 kHz), and then resuming at the faster rate. It does this no matter the "clock" setting.
I've had a stab with VLC, but I can't get it to open the input at all. So annoyingly close!
Also there seems to be some cheapo products like this on ebay. Is this any good?
I realise that it is a sound card with it's own 5.1 out. But I was wondering if the audio (whether decoded or not) can be captured over USB?
Update - I ended up ordering one of these eBay USB "sound cards" by mistake (don't ask). The same one pictured in your link, but from a different seller. As I surmised, it is compliant with SCMS and outputs silence when protected content is input via optical SPDIF.
The packaging looks like this, but the USB logos on the device itself and the clamshell came covered with stickers. I guess they ran into a trademark problem. The sticker on my particular package calls the unit a 7.1CH Optical USB Sound Card with model number LK-22103.
The chip used is the CM6206, the same as what's in Sabrent's USB-SND8 according to post #13 of the thread (almost 3 years ago).
I was at least able to record unprotected content as bit-perfect 48kHz 16-bit in WinXP. As usual, no such luck in Win7 as it messes with the audio path.
So based on what has been said in this thread, is it still impossible to receive Dolby or 5.1 off the Optical SPDIF cable from the Set top box? There is nothing, even software related that can fix this? I cant beleive this is a codec thing or a non-compaitble thing. I mean it works just fine if I plug the Optical cable into my Denon SS Receiver. Why are "sound cards" that different. Doesnt seem right.
Or do I really need to build XP rig (just before it stops being supported)?
Yup, and actually I don't need to test because GBPVR passes it on live TV or from recordings (depending on your decoder configuration). So it would really be a matter of just creating a small app to pass audio only if that's what you wanted. I've already got some code that could be modified for it (I posted it somewhere on this forum).
That would be interesting. Did you ever post it here?
I'm using the Sabrent USB-SND8 in hopes of using the SPDIF toslink input to record 5.1 Dolby Digital files from my Cisco STB from Verizon Fios. I'm currently running Windows 8.1 64bit and have tried recording the bitstream using Audacity, Vegas, Soundforge, and CD Wave with no luck. I have been using a combination of these programs as well as BeSweet and BeSplit via the DDWAV fix to attempt to get a working AC3 file. All of the files produce static and cause the receiver hooked to my computers SPDIF output to operate in either Stereo or Dolby Pro Logic mode. However, my last couple of tries produced AC3 files which are completely silent when played, but do cause my receiver to switch back to Dolby Digital mode. I read somewhere in this post that certain streams can be copyrighted and that the SCMS protection supported by the SND8 would cause these streams to produce only silence. I was wondering if anyone knew whether or not these Cisco boxes (specifically the CHS 335DHC) output SCMS protected Dolby Digital streams over the SPDIF output. If so, does anyone know a way around this without purchasing one of the more expensive sound cards that were said to be confirmed working at the beginning of the thread? I am going to attempt to fire up one of my old 360 games to see if I am able to capture that sound before installing Windows XP as someone above said they were successful using my card and that operating system. Hopefully we can figure this all out as it seems to be a relatively simple procedure that no one's really found a solid answer to.
If anyone's interested, I was able to successfully record a full Dolby Digital 5.1 AC3 file from my STB using Windows XP SP3, CD Wave, and BeSplit, and play it back in VLC with sound coming from all speakers in Dolby D EX mode through my receiver. I haven't found a way to pass it through to with no delay however.
Ok, I was able to successfully decode a Dolby Digital stream through the SPDIF input and pass it out to my 5.1 logitech speakers connected via the three 3.5mm jacks on my motherboard, as well as pass it through my SPDIF output to my receiver (which was my main concern, I know it wasn't most of yours though.) I utilized a combination of Windows XP, Media Player Classic, and AC3Filter to obtain this. I know a lot of you were concerned about delayed audio in relation to the video, and this did occur, however adjusting the AC3Filter timeshift slider under the System tab to -459 (probably different for everyone but a good starting point) eliminated the delay while using an Avermedia C127's VGA input for the video and Media Player Classic as the preview program (the modified Aver Media Center program that allows me to watch HDCP encrypted content over the HDMI input requires a restart after Media Player Classic attempts to access the capture card, and MPC does not override the HDCP encryption, hence why I used a component-VGA adapter over the VGA input, I don't think others should run into this specific issue unless they use a C127 for video capture.) I had some popping issues in the first couple of tests that are no longer present, I believe its from unchecking the Jitter Correction in AC3Filter just below the A/V sync slider, but I can't be sure as I was changing a number of settings at once (I know stupid, but I was impatient at the time haha.) I also unchecked AC3 under SPDIF Passthrough on the SPDIF tab of AC3Filter, and set the output format on the main tab to 5.1 Surround at 48Khz in 16 bit PCM. Make sure you uncheck the use SPDIF option just below this as well as the AC3 passthrough option I mentioned earlier if you're using 5.1 PC speakers, but not if you just intend to pass the SPDIF input over your SPDIF output to a receiver. Sorry if that was long winded, I wanted to be as specific and detailed as possible to avoid any confusion. If you guys have any questions or I missed anything be sure to let me know. If you missed my last posts I'm using a Sabrent USB-SND8 for SPDIF input.
Sorry forgot to mention MPC settings, all I changed for this was to set the Audio settings box on the left of the capture screen to SPDIF In, PCM, and 48Khz 16bit stereo. And yes, the expected output comes from all 6 speakers (they're not outputting identical sound.)
You have a solid answer by me here - http://www.hydrogenaudio.org/forums/index.php?showtopic=91655&view=findpost&p=859568
And for playback Foobar 2000 with Spdifer plugin is way better option then AC3filter!
Unfortunately the post you linked me to is regarding a $130 24-bit piece of hardware. My main goal for this setup was to be able to utilize my $20 16-bit Sabrent hardware as there were already confirmed solutions to the problem utilizing $100+ 24-bit soundcards. Though I appreciate the input, I was attempting to confirm this procedure can be done without needing to spend a fortune on hardware, which it can using Media Player classic and AC3Filter. Also, I must have done something wrong in foobar as I was unable to find a way to open a live input stream let alone pass it through unmodified or convert it to PCM on the fly. If you could point me in the right direction on that issue I would appreciate it as I am interested in attempting this method to see if it's any more convenient. Also, as I understand it, SPDIFER is just the SPDIF related components of Ac3Filter put into a convenient package and therefore is acceptable for passing through unmodified AC3 streams to the SPDIF output. But I was under the impression some people were attempting to use their computer in place of a receiver which would require on the fly conversion to PCM to allow them to output to their PC speakers which don't use the SPDIF output, and this requires the full AC3Filter package.
I was about to give up when I found a DirectShow filter that was installed with Creative drivers, it is called "Creative Recording Wav_Asio Filter".
I configured Creative ASIO driver using RightMark Audio analyzer (set the buffer and the channel to be recorded, Digital In) and then created a graph in GraphStudioNext:
"Creative Recording Wav_Asio Filter" -> AC3Filter -> DirectSound
Tested... Perfect playback, no delay whatsoever! I had to do all that as my X-Fi do not support decoding through the drivers. I guess that procedure may work with all X-Fi.
When doing that with Windows 7 it almost works, but for some reason the sound cuts off when capturing DTS or DD (I can hear static noise when using the default windows capture device, but silence when using ASIO). PCM in Windows 7 is also very jittery, maybe there is some bug with the driver.
I am using Daniel_K Support Pack 3.0, by the way. I will keep testing with Windows 7 to make it work
I do not know if this filter works with any ASIO drive, will test latter with ASIO4ALL.
For some unknown reason I can record using the ASIO filter from Creative in Windows 7 now, but even with bit-matched recording and in "Audio Creation Mode" AC3Filter cannot decode the sound. Maybe the recording in Windows 7 isn't really bit-matched even with ASIO.
With DTS it detects some frames, but no sound decoding yet.
I also tested capturing the sound with Reaper and then playing with AC3Filter but it did not work.
Last edited by lagonauta; 08-27-2014 at 01:57 PM.
In winxp sp3, I also set up a graph with creative wav_asio as input, ac3 filter in the middle and direct sound as output. In audio creation mode with bit perfect recording and ac3filter properly configured, I can get the so long awaited ac3 input, however this does not work on windows 8.1 for some odd reason.
Also, I get very heavy audio delay, perhaps lagonauta would be so kind to leave better instructions on how to use rightmark audio analyzer to configure the asio driver of x-fi
First of all, like the rest of you, I think its crap how someone can flip a digital switch and take away some a small, minute detail to make sure some fatcat's pockets stay padded.
It irks me beyond belief that I have a very nice PC, with a nice set of 5.1 speaker, with a nice monitor, that happens to share a desk with an Xbox360. The PC is connected to the monitor via HDMI, the xbox via VGA. Easy, just switch the input to play xbox, no problem. Connect xbox to PC sound card via TOSLINK, can only have stereo. WHY!!! (I know why, I read the article, rhetorical). I just wanna play my SS able device on my SS able speaker that just happens to be connect to my SS able PC/soundcard. Sounds easy enough to me. Sigh.
I also reduced ASIO latency from 50ms (default) to 5ms. There was still a minor delay, but only noticeable when you want it to be. Did you try that?
I discovered that it is also possible to decode on Game mode and on Entertainment mode using this method, and I had almost no delay. It is great to play XBox 360 or PS3 or even Dolby ProLogic II games (PS2, Wii, GameCube) with HRTF (CMSS-3D)
To do that you just need to set your recording device on Windows Volume Panel to your desired input (SPDIF or line-in)
To decode ProLogic II I use ffdshow Audio Processor filter and enabled Dolby Decoder
Just upgraded my old AMD board from 2009 to a new Haswell H97 board with no PCI slot, so I had to exchange my SB0770 to a Titanium.
I still cannot decode from SPDIF on Windows 8.1 and Windows 7.
Sadly Windows XP is not fully compatible with my new motherboard, and the SPDIF on my Titanium has a lot of clipping or jitter so it keeps clicking when decoding
I do not know if the problem is the new PCIe bus, or not being able to install the chipset drivers.
PCM recording from SPDIF is perfect on the H97 motherboard and with no delay whatsoever, so I believe I may be able to decode AC3 and DTS somehow.
I am a total noob when it comes to programming and debugging, so it may take some time. For some reason it seems that the spdifextract program is freezing or just never receiving the sound that pipe to it. I won't be able to apply HRTF easily with this setup, but decoding is a start.
If anyone knows C and Linux, I would love your help.