Clearing up the KMixer confusion
May 26, 2007 at 3:02 AM Post #32 of 105
Quote:

Originally Posted by scompton /img/forum/go_quote.gif
I think it's amazing when someone from one company essentially steers someone to another company's products. Makes me wish I could afford a Benchmark DAC


x2
 
May 28, 2007 at 10:47 AM Post #33 of 105
Just to add to the confusion, I want to bring this post from another place to the table: http://www.audioasylum.com/scripts/t...caudio&m=18769 (bottom)
Quote:

Apparently if your device driver advertises itself as having a "hardware mixer" and promises to be compliant to AC97, Windows will let it do the mixing instead of using kmixer. For example, my Audiotrack Prodigy 7.1 will play back DTS files fine, because it *has* a hardware mixer. I think this is also the case for some of the other soundcards based on the Via Envy chipset. The reason why this discussion is interesting is because the Benchmark USB DAC claims to use generic XP USB drivers, which (I think) do not register as having a hardware mixer to the OS.


Now, someone on this forum who has licensed the Centrance IP told me in PM that indeed it does something like this, and kmixer is bypassed. However, I still have my doubts, because Microsoft documentation, though saying hardware mixer presence can cause kmixer to be bypassed, it also claims that if the stream will go to usbaudio.sys for output in USB Audio Class, kmixer CANNOT be bypassed in this way.

So I ask Mr Gwinn, does the DAC1 somehow tell Windows it has a hardware mixer and thus kmixer is bypassed, or some trick of this sort?
 
May 29, 2007 at 7:22 PM Post #34 of 105
Quote:

Originally Posted by Crowbar /img/forum/go_quote.gif
So I ask Mr Gwinn, does the DAC1 somehow tell Windows it has a hardware mixer and thus kmixer is bypassed, or some trick of this sort?


No, Kmixer is not bypassed with the DAC1 USB.

Thanks,
Elias
 
Jun 5, 2007 at 12:05 AM Post #35 of 105
I have performed some tests with the Auzentech X-Meridian sound card and I have found that the Wave Volume control does NOT expand 16-bit streams to 24 bits when the volume is set to less than 100%. Everything is truncated to 16 bits after attenuation.

However, when the original stream is 24-bit, the Wave Volume control will preserve that.

I have also confirmed bit-perfect output through KMixer when the Master and Wave volume controls are set to 100%. The result is the same whether the sound goes through KMixer, Kernel Streaming or ASIO.

Best,

Tomasz
 
Jun 5, 2007 at 12:10 AM Post #36 of 105
I mentioned this in another thread, but this seems like a good place too.

With my Benchmark DAC1 USB under Windows Vista I've noticed that I can use Kernal Streaming output from Foobar2000 to bypass kmixer/DirectSound/WinWhatever's volume control, prevent other sounds from other applications (including Vista), and reduce the CPU usage of the Audio Graph process (whatever that is).

So it seems like there is a way around the kmixer/DirectSound/WinWhatever problem in Vista with the standard USB driver (if the OS services are causing a problem in the first place).
 
Jun 5, 2007 at 5:31 AM Post #38 of 105
Okay, here it goes. My Edirol UA-1EX arrived tonight and I hooked it up performing the standard DTS playback test.

The result is that using Directsound this USB adapter is not bit perfect using the USBaudio.sys driver due to kmixer.

When I install asio4all and bypass kmixer via kernel streaming it works bit perfect. The behavior is identical to my Audiotrak Optoplay and consistent with what everyone else has been seeing over the years.

This makes me wonder about the testing methodology the Elias has been using to test for bit perfect playback. I get the same result when I record digitally and compare the resulting files. Maybe the test that Elias is using is indicating bit perfect while that is not actually the case.

Any thoughts?

Cheers

Thomas
 
Jun 5, 2007 at 5:43 AM Post #39 of 105
Have you only tested on one system? It could be an issue with certain settings. What you write doesn't seem consistent with post #35 above:
Quote:

I have also confirmed bit-perfect output through KMixer when the Master and Wave volume controls are set to 100%. The result is the same whether the sound goes through KMixer, Kernel Streaming or ASIO.


 
Jun 5, 2007 at 7:02 AM Post #40 of 105
What can I say. I can't speak for the test that tszyn has performed on that PCI card or how he has determined that kmixer was in the path but the Edirol does not play bit perfect on XP using DirectSound on my machine using the DTS playback test. It works fine when using kernel streaming.

I will be happy to repeat the experiment on Vista, but you are probably well aware that Vista does not have kmixer to begin with, although it is also not bit perfect with DirectSound. I can also try another XP box or if anyone has suggestions for which setting I might have missed I am open for improvements.

Cheers

Thomas
 
Jun 5, 2007 at 9:40 AM Post #41 of 105
Quote:

Originally Posted by EliasGwinn /img/forum/go_quote.gif

Quote:

Originally Posted by tszyn /img/forum/go_quote.gif

...

1. If I play two 16-bit streams at the same time, will KMixer output a 24-bit stream to my sound card, as long as the sound card supports 24-bit output?



This is true...for the reasons stated above. In this case, the signal processing is summing two 16-bit signals.



Once SysAudio creates a connection between the KMixer source pin and an adapter sink pin, KMixer never modifies the connection's initial bits-per-sample or number-of-channels settings.

http://msdn2.microsoft.com/en-us/library/ms789343.aspx

Stereo 16-bit/22.05kHz + Stereo 16-bit/44.1kHz --> the new stream has a stereo format with 16-bit samples and a 44.1-kHz sample rate.
http://msdn2.microsoft.com/en-us/library/ms789326.aspx


Quote:

Originally Posted by thomaspf /img/forum/go_quote.gif

...

Kmixer is only active for PCM streams and the stream I embeddded a link to happens to be a 2-channel stereo PCM stream. That the bits inside are Dolby Digital encoded is unknown to Windows. If your sound card works as Elias describes it should just pass these bits through unmodified. Somehow that is not the case for any of the tests that I have ever done or for that matter anyone who has ever tried this before Elias.




KMixer System Driver

The KMixer system driver (Kmixer.sys) is the KS filter that does the following:

* Mixing of multiple PCM audio streams
* High-quality format conversion
* Mixing and sample-rate conversion
* Bit-depth conversion
* Speaker configuration and channel mapping

In addition to simple 8- and 16-bit, mono and stereo data formats, the KMixer driver supports:

* PCM and IEEE floating-point data
* Bit depths greater than 16 bits, and multichannel formats with more than two channels
* Head-related transfer function (HRTF) 3‑D processing



Quote:

Originally Posted by thomaspf /img/forum/go_quote.gif
...
Maybe the DAC1 is doing something very special?
...



Maybe the driver is just different from others? http://www.centrance.com/about/pr/pr070215.shtml
 
Jun 5, 2007 at 11:07 AM Post #42 of 105
Well, KMixer must have been in use, because I was able to change the volume by using the Wave Volume slider in the Windows Volume Control (SndVol32). In addition, multiple streams were being mixed as expected.

I have learned that Windows XP SP2 uses a different volume control from XP SP1. Perhaps this is the reason why thomaspf observes different behavior.

Here is a quote from MSDN which seems to confirm that at 100% wave volume KMixer leaves the original stream intact:

Quote:

In Windows XP and later, the operating system uses a different set of default volume settings to avoid this loss of audio quality. It sets the volume levels on the wave, CD audio, MIDI, and other audio sources to zero decibels of attenuation (pass-through mode). This translates to a full-volume slider setting for each of these sources in SndVol32. These settings improve the default sound quality by ensuring that KMixer does not degrade the original resolution of the source signal.


Best,

Tomasz
 
Jun 5, 2007 at 12:02 PM Post #43 of 105
kmixer is not designed to work w/ dts streams, hence "dts test" is meaningless for determining of bit-perfect playback capabilities
 
Jun 5, 2007 at 12:33 PM Post #44 of 105
Quote:

Originally Posted by tszyn /img/forum/go_quote.gif
Well, KMixer must have been in use, because I was able to change the volume by using the Wave Volume slider in the Windows Volume Control (SndVol32). In addition, multiple streams were being mixed as expected.



could it be that x-meridian actually takes over kmixer tasks as decribed in http://www.head-fi.org/forums/showpo...5&postcount=33 ?
 
Jun 5, 2007 at 3:45 PM Post #45 of 105
Quote:

Originally Posted by jiiteepee
Maybe the driver is just different from others? http://www.centrance.com/about/pr/pr070215.shtml


Well, I understood from Elias' post that he uses the standard system driver which is USBaudio.sys

Quote:

Originally Posted by zheka
kmixer is not designed to work w/ dts streams, hence "dts test" is meaningless for determining of bit-perfect playback capabilities


Kmixer does not know that the bits flowing through the audio stack are DTS encoded. To the system these bits look like PCM bits, so I am afraid this argument is not valid. You can repeat the test with HDCD encoded PCM data and get exactly the same result.

So unless someone can point to any settings that I may have missed I stay unconvinced and assume Elias test method is the culprit. Since he suggested this specific sound card and performed the same tests as he did for the DAC1 the same results should apply.


Cheers

Thomas
 

Users who are viewing this thread

Back
Top