I recently bought some gadgets that don't play well together. Namely, I want to connect my playstation 3 optical out to my sound card to play through my 5.1 speakers. Since the card doesn't decode dolby in hardware, I have to attempt to do it on the fly through ac3filter, yay! I encountered two obstacles so far:1. The inadequate, but working solution:In graphedit, I route audio source->ac3filter->audio renderer and it works, but predictably audio lags behind video a fraction of second, and2. The annoyance:When launching/quitting games, I lose audio and get buzz instead. I have to go the the mixer on my sound card control panel and toggle "SPDIF-in reverse" checkbox and I get back my sound.

Solution for 1:I started writing my own directshow ASIO streaming capture/render filter that uses ASIO4ALL v2 for the driver. So far I managed to write enough code for 2 channel stereo input/output to work to see if I can defeat the lag issue, and it's a success so far. I'm confident I will have the whole thing done in a few days.

Solution for 2?I don't want to go the the mixer all the time to flip a switch. Since I have the access to the whole SPDIF stream, how do I check whether it's valid or whether I need to "reverse it." This would allow me to fix the signal inside the capture filter prior to passing it through the decoder. I searched everywhere but I just hit a wall here. What does reverse spdif mean? Can anyone point me how to do it in C/C++?

The reason I ask here is that my sound card is based on the CMI8768+ chip and I poked around in the driver and noticed that this driver also has this invert switch and at least I can see the source to see what it does, but I don't understand it. Can anyone explain me the gist of it? Thanks in advance.

1: kernel streaming / wasapi might also be an option. You will, however, have a lag of an ac3 frame's length 32ms plus 10ms for the cyclic audio buffer to fill up in the worst case.

2: that's a register bit which is exposed to userland. For more information, consult the cmedia data sheet. It's probably defining the signal levels of the spdif receiver inside the chip. cmicontrol.exe has command line switches which can be used to enable / disable the 'reverse bit' thing.

1: kernel streaming / wasapi might also be an option. You will, however, have a lag of an ac3 frame's length 32ms plus 10ms for the cyclic audio buffer to fill up in the worst case.

2: that's a register bit which is exposed to userland. For more information, consult the cmedia data sheet. It's probably defining the signal levels of the spdif receiver inside the chip. cmicontrol.exe has command line switches which can be used to enable / disable the 'reverse bit' thing.

1. Yes, I tried kernel streaming and it's a significant improvement over regular (directsound?) capture/render, but the delay is still clearly noticeable and I have no way of shrinking its default buffer size that I know of.

2. I would like my capture filter to be able to tell whether it's looking at an invalid stream so that it may flip that switch automagically. Do you know if that would be possible?

2. I would like my capture filter to be able to tell whether it's looking at an invalid stream so that it may flip that switch automagically. Do you know if that would be possible?

there's an spdif status bit in some register which can be read and exposed to userland. I haven't implemented this yet since almost no one uses that, but since the driver is open source, you are free to do so.

1.) 24bit support is still something I haven't been able to implement. Maybe I'm missing something, but chances are that the chip doesn't support it at all: with the official cmedia driver, 24 bit output is unattainable.

Have you tried any of the CMI8768+ cards? I've checked the CMI8768 datasheet and it says 16bit playback now. CMI8768+ is less popular but it's datasheet says 24bit playback. Diamond Xtreme 7.1 uses the CMI8768+ and the manufacturer seems pretty sure that it plays 24bit. I'd check myself but I can't find any cheap CMI8768+ card in Poland.

Have you tried any of the CMI8768+ cards? I've checked the CMI8768 datasheet and it says 16bit playback now. CMI8768+ is less popular but it's datasheet says 24bit playback. Diamond Xtreme 7.1 uses the CMI8768+ and the manufacturer seems pretty sure that it plays 24bit. I'd check myself but I can't find any cheap CMI8768+ card in Poland.

for all I know, the 8768+ is just a regular 8768 card with a slightly different chip ID. all the extra functionality (dolby encoder etc.) is actually implemented in the driver, so I guess the 8768+ isn't capable of doing 24bit. Also, the linux driver doesn't implement anything specific for the 8768+ card.

If someone with a 8768+ is reading this, maybe he or she can test my conjecture by trying to play a 24bit file and looking at the sample size of the spdif output.

I'm a long time user of your driver under XP. It worked like a charm, but now I've switched to Windows 7 (exactly the same hardware) and I've a small issue.

When I install the driver the MPU-401 part says the driver has an invalid INF file that is missing an entry. Then, in "Device properties" it shows an "error code 28". My version of Seven is in spanish but it roughly translates as "The installation was not done because no function controller was specified for this device".

If I try to directly specify the location of the drivers it goes on with the "invalid INF message"

I'm again trying to install these drivers on a Server 2008 machine with the tool which the FAQ mentions?.

Does a more specific instruction set for installing these drivers with the tool exist somewhere? I still can't seem to install them and have them work, even using the tool, but I can't tell if I'm doing everything correctly.

Either this method doesn't work on Server 2008 or I'm taking a wrong step in trying to use the tool.

It was asked on the first page but I haven't been able to find the answer with lots of searching and googling. I'm currently looking for a cheap sound card that can do recording of AC3 via optical input. My motherboard input can do PCM but apparently it resamples, because DD recordings are totally unplayable.

Can someone using this driver give it a try? Here is the the Dolby Digital Recorder app which doesn't require installation.

Hy there.I have a problem with cmi control panel.it says that the system cano't find the file specified, I pres ok and it says the operation completed sccesfuly i pres ok again and the cmi control appears and disappears very fast.Please help me out

I really appreciate that Dogber1 did drivers for CMI 8738 cuz they are great and the sound from my speakers is awesome but i gotta big issue....i hope u guys can help me

My PC audio is :Terratec Aureon 5.1 Fun, CMI8378 connected via Toslink 1,5 M to Lampucera DAC and from DAC to my Cambridge Audio A500 amplifier by 2 x 2 RCA cable 5 meters.The thing is if i wanna change the song in winamp i gotta wait about half a second or 0,75 a second to hear the sound from my speakers and i don't know why it happens ?In Foobar 2000 it works perfectly fine.

Another big issue is that the sound in movies has delays/big latency like 0,5 or 0,75 second of delay.If i look at the lips of actrees is noticable that the music is delayed.

it happens in every media player even in youtube movies ect.

I tried to change my codecs and it happened over and over again.

Do you know what can cause that issue ? is it something with my Sound card or driver ? or my DAC isn't working properly ? Before my PC was using Sound blaster live connected by analog to DAC and then to my Amplifier ahd it wasn't any delays/latency sound.

Thanks a lot for this driver. It's the first one ever which lets me record bit-correctly through SPDIF-in under win xp IIRC. I can also confirm that SPDIF out and looping from SPDIF in to SPDIF out works. That's basically what I really need...I couldn't get the analog out to work so far though. Perhaps it's just me doing something wrong.I especially liked "Detected driver cmedia xy...these will be wiped from your system to avoid conflicts".

well just registred to tell you many thanks Dogbert. you work on this driver has made my life significantly easier and cheper, since i for a long time have been using a cheapo sound card in my mediacenter with bitperfect streaming :-)

what are your thoughts on driver signing in windows 7 64 bit. how do you deal with it? me i still run 32 bit. but my brother i law runs 64 bit on a mediacenter i administrate for him, we have it running test mode and testsigned you driver, but is there a better workaround?