Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Windows XP k mixer vs. whatever is in Vista (Read 28472 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Windows XP k mixer vs. whatever is in Vista

I'm a noob with this technical sort of stuff, but I was wondering if the audio processing stuff included in Vista is better or worse than what we had with XP. 

Ok, since I am a noob, this is what I have gathered about XP's audio processing--- the k mixer is bad, and it has a degrading effect on the sound unless you decided to take steps to entirely bypass the k mixer. Correct me if I'm wrong about this.

So I'm wondering, are there any improvements over XP's k mixer with what comes standard with Vista?

Windows XP k mixer vs. whatever is in Vista

Reply #1
I don't know what changes Vista includes with regards to this issue, but i can atleast assure you about kmixer.sys on Windows XP dosen't degrade the sound quality in any percievable way, period  I know many people/sites says otherwise, but that's just the same old boring BS nonsence you'll hear around the web, like e.g. that one needs to use insanely expensive audio cables to not degrade the audio quality or that there are differences between differen't CD-R brands in sound quality or that lossless dosen't sound just as "full" as PCM  The advantage of bypassing kmixer.sys is to loose those extra 30 ms latency which is usefull on recording but dosen't have any advantage whatsoever on playback, besides of course if the WDM drivers over DirectSound output is buggy, but the ASIO drivers or the WDM drivers when used directly through the DirectKS API isn't. Btw, the non-percievable bit-mangling of kmixer.sys happens because of it's volume-control function, but the bit-mangling only occures on the least significant bit, so no-one will ever be able to ABX it on 16bit music playback and if you play 16 bit audio over 24 bit output, then no bit-mangling will occure at all.

Windows XP k mixer vs. whatever is in Vista

Reply #2
Maybe you can explain something to me... I have M-Audio 2496 sound card with bit-perfect playback and when using ASIO or KS in foobar I can passtrough 16/44.1 DTS signal via S/PDIF to my receiver just fine. But when using DS out via kmixer I get only hiss on speakers so obviously kmixer changes digital stream in some way...?

Windows XP k mixer vs. whatever is in Vista

Reply #3
Vista uses a floating point pipeline in their audio subsystem. It also does SRC on each stream and bit depth conversion on the final mixdown, to a frequency and bit depth specified system-wide.

Windows XP k mixer vs. whatever is in Vista

Reply #4
Quote
so obviously kmixer changes digital stream in some way
But the change that quashes DTS doesn't have t9o be great enough to be perceived with regular stereo material.

Windows XP k mixer vs. whatever is in Vista

Reply #5
Quote
so obviously kmixer changes digital stream in some way
But the change that quashes DTS doesn't have t9o be great enough to be perceived with regular stereo material.


Contrary to popular belief, the kmixer of XP and 2k doesn't change a thing when you move the wave volume slider to the max. DTS encoded wave files can be played through WaveOut/DSound and through the kernel mixer without any loss.

And I should know, I've developed a driver for the C-Media 8738/8768 which just can do that stunt.

The mixing engine of Vista works with 32bit float samples, so there's actually some information lost in the conversion. But there is a so called "exclusive mode" which is available through the WASAPI. It should give you bitperfect output, albeit I haven't seen software which actually support it (yet).

Windows XP k mixer vs. whatever is in Vista

Reply #6

Quote
so obviously kmixer changes digital stream in some way
But the change that quashes DTS doesn't have t9o be great enough to be perceived with regular stereo material.


Contrary to popular belief, the kmixer of XP and 2k doesn't change a thing when you move the wave volume slider to the max. DTS encoded wave files can be played through WaveOut/DSound and through the kernel mixer without any loss.

And I should know, I've developed a driver for the C-Media 8738/8768 which just can do that stunt.

The mixing engine of Vista works with 32bit float samples, so there's actually some information lost in the conversion. But there is a so called "exclusive mode" which is available through the WASAPI. It should give you bitperfect output, albeit I haven't seen software which actually support it (yet).



So are you saying that the audio quality that comes standard for XP is superior to what comes standard for Vista?

Windows XP k mixer vs. whatever is in Vista

Reply #7
Quote
So are you saying that the audio quality that comes standard for XP is superior to what comes standard for Vista?


The thing that concerns me about difference between XP and Vista is that Vista seems more DRM prone, which doesn't come as a surprise (that's another topic though and I am not trying to sidetrack the discussion). Does it really matter though honestly? I mean if you have Foobar2000 with kernel streaming you should be all set right?  Just my two cents
budding I.T professional

Windows XP k mixer vs. whatever is in Vista

Reply #8
Foobar2000 with KS works in Vista.

I was using an Onkyo Envy24 soundcard.

Windows XP k mixer vs. whatever is in Vista

Reply #9
How do I get KS working in Vista?  With a Realtek ALC882, no devices are listed for KS output in Foobar - only DS.

Windows XP k mixer vs. whatever is in Vista

Reply #10
Contrary to popular belief, the kmixer of XP and 2k doesn't change a thing when you move the wave volume slider to the max. DTS encoded wave files can be played through WaveOut/DSound and through the kernel mixer without any loss.

Unfortunately that is not case with my card, even with volume slider(s) maxed out in mixer when using DSound in foobar receiver doesn't pick up DTS signal. It briefly switches to DTS but apparently signal is 'week' and receiver reverts back to hissing instantly so IMHO 'contrary to popular belief' kmixer does change signal. It's true that it doesn't effects PCM 44.1 signal but it surely 'destroys'  DTS 44.1 stream (at least im my case).
ONLY way I can get unchanged DTS signal to my receiver is when bypassing kmixer via ASIO or KS plugin.

Windows XP k mixer vs. whatever is in Vista

Reply #11
ONLY way I can get unchanged DTS signal to my receiver is when bypassing kmixer via ASIO or KS plugin.

That's the driver then which modifies the data in one way or the other, not the kernel mixer. Like I said, under the conditions that the Wave Volume is maxed out and that no other stream is playing, bitperfect output is possible under XP and 2k using WaveOut/DSound.

Quote
So are you saying that the audio quality that comes standard for XP is superior to what comes standard for Vista?

No, it's not that easy. For instance, if the kernel mixer of 2k/XP mixes two loud streams, it's much more prone to nasty clipping due to the limitations of the 16bit format. That won't happen in Vista.
But like I said, it is impossible (or I haven't found a way yet) to forward a regular wave stream bitperfectly to the receiver through DirectSound/WaveOut in Vista.

Drivers which are built around the WaveCyclic/WavePCI model can still be used for kernel streaming in Vista, but if you have to use a WaveRT driver, you'll have to wait for WASAPI support to get bitperfect playback in Vista.

Windows XP k mixer vs. whatever is in Vista

Reply #12
For anyone interessted in this bit-mangling issue of kmixer.sys, then here are some interesting quotes about it. Also, my former post about kmixer.sys is based on this info...

Well, a couple of months ago I managed to get mi CMI8738 based card digital input to work.

Using it, and bit-perfect recording the digital output of my Audiophile card at 44.1 KHz mode, I've been able to verify that kmixer indeed does something to the data passed to it. The change is very subtle, so it was not detectable on my analog measurements of the soundcard output. What I've verified that kmixer does to 16-bit audio data, is just mangle the last bit of the data. It does like some kind of re-dithering of the signal, adding a very little amount of spectrally uniform noise to the signal, so that it is no longer bit-perfect. It also adds a very little amount (around -120 dB amplitude) of distortion that can be considered negligible.

I have measured this noise but I don't have the results at hand right now, but with this noise added, the dynamic range of the 16-bit signal is still better than 90 dB.

I haven't been able to do same tests with 24-bit audio, because I can't get a 24-bit recorded data, but I think this is a problem of my testing configuration, because on analog measurements, the analog output of the card with kmixer processing was able to produce an analog signal with better dynamic range than the possible with 16-bit audio. I'm trying to fix this.

When using kernel streaming and ASIO, the output is bit-perfect in 16-bit mode, as it was supposed. There's some evidence that using directsound acceleration (also called hardware mixing) does same thing as using kernel streaming, and enables getting bit-perfect output. However, I haven't been able to verify this, since my Audiophile card doesn't support it.

Note that when kmixer is acting and you play 44.1 KHz data, it can do do two different things depending on the driver implementation. The first is just this relatively bening bit mangling I've talked about in this post. But on some cards and modes (wave output instead of directsound, for example), it will resample the signal to 48 KHz, and this is a greater change to the signal. I haven't done very detailed tests over this resampling, but it worsens a little bit more the SNR of the signal, causes some low-level distortion and causes a very slight HF rollof. At first I don't think this is audible under usual listening conditions, but I haven't done any listening tests.

Note also that there are some professional-oriented cards that use special WDM drivers that don't suffer from any of those kmixer issues. These drivers don't fully conform to the WDM standard, and can't use kernel streaming, but, on the other side, they don't need it. RME cards for example, use this kind of non-standard, kmixer-free, WDM drivers.

Well, I just did a few more tests. I own now both a Revo and an Audiophile, so I can play all types of data on the digital output of the Revo and record them with the digital input of the Audiophile. I just did some RMAA 4.3 measurements, that uses WDM (directsound) drivers, and here are the results:

I will give results without A weighting, I like it better.

1st figure is reference, best possible value. 2nd is kmixer bit-mangled output.

Frequency response is totally flat in all cases, so is omitted.

16 bit, 44.1 KHz:
============
Noise: -96.4 dB, -93.4 dB
Dynamic range: 94 dB, 90.9 dB
THD: 0.000%, 0.001%
THD+N: 0.003%, 0.004%
IMD+Noise: 0.006%, 0.008%
Crosstalk @1KHz: -94 dB, -90 dB

The distortion product that appears at the THD measurement is at -110 dB, not -120 as I said previously. It is still a negligible value in my opinion. The biggest difference is the slight increase of the noise floor. As you see, even here the difference is quite small.

24 bit, 44.1 KHz:
============
Noise: -146.3 dB, -141.5 dB
Dynamic range: 139.5 dB, 137.3 dB
THD: 0.000%, 0.000%
THD+N: 0.000%, 0.000%
IMD+Noise: 0.000%, 0.000%
Crosstalk @1KHz: -141.8dB, -137.2 dB

For 32-bit audio, results are slightly better but very similar.

Taking into account that due to real-world constraints of electronics the best hardware available can't have a dynamic range better than around 120 dB, the effect of kmixer bit-mangling in this case is totally negligible.

And, if you play your 16-bit data as 24 bit or 32 bit, the result is that in practice the full 16-bit resolution is retained, even if you don't use kernel streaming, because the bit-mangling effects are much below 16-bit resolution. In a RMAA measurement, the results in this case were identical to the 16-bit reference results. But this will be true just if your card is a true 24-bit card.

Even when the differences are small or very small and quite possibly inaudible even in the the worst case, this bit-mangling will prevent from bit-perfect digital transfers in any case.

Again, note that this measurements are about this kmixer bit-mangling, which I don't think is any kind of resampling. Measurements of real kmixer resampling (that happens at my card when for example both a stream at 48 KHz and 44.1 KHz are played at same time, or when the output is locked at 48 KHz and you play a 44.1 KHz stream), and its effects are much more evident, see link at a previous post. Resampling produces a worse THD & IMD, easy to see at the THD spectrum, and a slight but measurable difference in frequency response. The effects measured here are just due to some kind of partial "re-dithering" of the signal, probably performed at some stage of kmixer software mixing. But it's not resampling.

As I said at a previous post, on some cards (not Revo) resampling will happen whenever you play a 44.1 KHz stream, or when you use waveout instead of directsound... it depends on the card and its drivers, but in better cards this resampling happens just when it's unavoidable (simultaneous playback of both a 48 and 44.1 stream, or lock of the sampling rate at 48 KHz).

So, the bit-mangling measured here, always, always happens when you play 44.1 KHz data on WinXP (and same seems to happen with Win2K), which is something that AFAIK Microsoft doesn't say. It can be avoided just if you use kernel streaming or ASIO audio interfaces, or your card supports hardware mixing (same as directsound acceleration) and it is enabled.

Note that Creative cards support hardware mixing and kernel streaming, but they internally resample all 44.1 KHz data, so in practice the result is probably even worse that if they use kmixer resampling.


Source : http://www.hydrogenaudio.org/forums/index....st&p=109854

Quote
KMixer issue resolved

Here's an update to the KMixer issue.

Some of the design goals for the KMixer that affects this issue are:
1) Create a standard interface to the audio device
2) Handle multiple asynchronous streams of audio
3) Handle streams of different sampling rates
4) Efficient, low CPU usage (keep data streams moving, even on slower systems)
5) Volume control

In order to meet these goals, the KMixer can not guarantee bit perfect playback. Hence it does not support non-PCM streams. The DTS CD (masquerading as a PCM stream) is corrupted in the process. DVD and CD players don't need to meet the above requirements, so they simply pass the stream along. DTS really should have standardized their format. Regardless, the bit manipulation occurs because of volume control.

Since most PCM data is 16 bits, on MMX systems the KMixer uses 16 bit math to take advantage of the SIMD parallelism of MMX. 15 bits are used for multiplication and 1 bit for sign. This means that the KMixer can not represent an amplitude of 1.0. The best it can do is 7FFF/8000. So on MMX systems, when the volume is set to 0dB attenuation, KMixer still attenuates the signal slightly - so the bits are changed.

On non-MMX systems, the KMixer uses floating point math to handle volume. This results in higher CPU usage, but allows the KMixer to reach an amplitude of 1.0. The floating point numbers are then converted back to integers (because that's what the sound card is connected with) and ends up dithering the stream in the process.

When bit perfect playback is necessary, Kernel Streaming is recommended.

Essentially, it comes down to the following:
1) The KMixer does not support non-PCM streams (which the DTS CDs are)
2) A 1/8000 volume attenuation is extremely small. Can anyone hear really hear it? Refer back to KikeG's measured ratings:

http://www.avsforum.com/avs-vb/show...886#post2493886

I recommend continuing to use Kernel Streaming for your DTS CDs. For PCM data, it is not necessary.


Source : http://archive.avsforum.com/avs-vb/showthr...mp;pagenumber=7

Btw, Black Magic, from the above quote, i believe is a Microsoft employe, since although he hasen't said so directly, he gave this quote a little later in that thread :
Quote
We've dropped the 'Q' from our article names. Search by the the number and it will come up.

I can't comment too much on the other thing, other than it is incorrect information. I'll just stop there.

Also, if anyone is affected by the issue described in the article below, please contact us for the hotfix. The link is in the article. It is scheduled for SP2 if you can wait:

813347 Audio and Video May No Longer be Synchronized After You Issue a
http://support.microsoft.com/defaul...kb;en-us;813347


Source : http://archive.avsforum.com/avs-vb/showthr...666#post2506666

Windows XP k mixer vs. whatever is in Vista

Reply #13
Quote
So are you saying that the audio quality that comes standard for XP is superior to what comes standard for Vista?


The thing that concerns me about difference between XP and Vista is that Vista seems more DRM prone, which doesn't come as a surprise (that's another topic though and I am not trying to sidetrack the discussion). Does it really matter though honestly? I mean if you have Foobar2000 with kernel streaming you should be all set right?  Just my two cents


Well, I want to be able to use a plugin that only works with Windows Media Player.

Windows XP k mixer vs. whatever is in Vista

Reply #14
Quote
But like I said, it is impossible (or I haven't found a way yet) to forward a regular wave stream bitperfectly to the receiver through DirectSound/WaveOut.


you mean just in Vista, right? Becaues just before that you said that in XP you could get bit perfect through DirectSound/WaveOut


Windows XP k mixer vs. whatever is in Vista

Reply #16
The kernel mixer of the 64 bit version of Windows XP doesn't seem to be bitperfect (unlike its 32 bit counterpart).

Windows XP k mixer vs. whatever is in Vista

Reply #17
I can use Kernel Streaming in Vista, using a Soundblaster Live (the very old series, one that supports 5.1) with KXProject drivers, and foobar2000.

I don't have any equipment to test if it is "truly" bit perfect or so, all I know is that Foobar2k plays back fine in KS mode.

Windows XP k mixer vs. whatever is in Vista

Reply #18
The thing that concerns me about difference between XP and Vista is that Vista seems more DRM prone, which doesn't come as a surprise (that's another topic though and I am not trying to sidetrack the discussion).


Well, sidetracking successful. What the hell does "DRM prone" mean?? The amount of uninformed bitching about DRM is really getting to me. Vista lets you do everything XP did, plus a bunch of things hollywood wants restricted, that XP simply can't do at all. (HD-DVD playback for instance). Microsoft isn't "out to get us" with DRM... they build the infrastructure needed to allow us to watch DRM'd stuff, period.

Show me something that worked under XP but doesn't in Vista due to DRM, and i'll take it back.

Windows XP k mixer vs. whatever is in Vista

Reply #19
Vista lets you do everything XP did, plus a bunch of things hollywood wants restricted, that XP simply can't do at all. (HD-DVD playback for instance).

XP can play HD-DVDs. In fact, even Linux can play HD-DVDs.

Quote
they build the infrastructure needed to allow us to watch DRM'd stuff, period.

Exactly. Just like they allowed us to use the Internet Explorer or the Media Player - how generous! Except it's all a big load of BS, because putting DRM into the core of the system is a technical absurdity, very much like the implementation of the Internet Explorer is.

Quote
Show me something that worked under XP but doesn't in Vista due to DRM, and i'll take it back.

Unsigned drivers load in XP x64, but driver signing and therefore a DRM implementation is mandatory in the 64 bit version of Vista.

Windows XP k mixer vs. whatever is in Vista

Reply #20
Actually you are able to disable driver signing by displaying and selecting the appropriate item in the boot menu. In the 64Bit version of Vista.

Windows XP k mixer vs. whatever is in Vista

Reply #21
Actually you are able to disable driver signing by displaying and selecting the appropriate item in the boot menu. In the 64Bit version.

Yeah, but that's not viable because
a) it's too complicated for the regular user,
b) you have to do it every time you boot the system.

I'd be glad to accept a diff for the installer of my driver that automates the process and makes it permanent.

Windows XP k mixer vs. whatever is in Vista

Reply #22
I agree with A) but B) there is a command you can enter in the command prompt to disable it fully.
Should have said this in the previous reply.

Windows XP k mixer vs. whatever is in Vista

Reply #23
Quote
Well, sidetracking successful. What the hell does "DRM prone" mean?? The amount of uninformed bitching about DRM is really getting to me. Vista lets you do everything XP did, plus a bunch of things hollywood wants restricted, that XP simply can't do at all. (HD-DVD playback for instance). Microsoft isn't "out to get us" with DRM... they build the infrastructure needed to allow us to watch DRM'd stuff, period.

Show me something that worked under XP but doesn't in Vista due to DRM, and i'll take it back.


Actually I agree with you too an extent I was just bringing it up in the context of the discussion. There is far too much bitching about DRM, but there are some cases where DRM is more restrictive and poses a problem. If you understand where I am coming from. It can be annoying if it's too restrictive or not implemented right (like who would want to use an entire operating system where DRM limits you to what you can do with your multimedia), but there are other cases where it's perfectly fine.  . Ok back on the topic of discussion now. I am still a firm believer that Windows is not even the right operating system for developing multimedia related stuff, OS/X clearly has an advantage over it at every end of the curve, but most users still use Windows anyway for convenience. That's getting way off topic and we can save that for another discussion.
budding I.T professional

Windows XP k mixer vs. whatever is in Vista

Reply #24
Jebus: HD DVD works just fine on XP. So does Blu-Ray, for that matter.