Kernel streaming
- KVRAF
- 37374 posts since 14 Sep, 2002 from In teh net
Prompted by recent discussion on the Gigastudio thread I've been looking into Kernel streaming and GSIF vs other driver types. It seems the way GSIF works is by bypassing the Windows KMixer app which apparently introduces 30ms of latency all by itself. This is all from wikipedia so I might be wrong on this but it seems it's only Windows that has this issue - something I wasn't aware of - bit stupid really.
http://en.wikipedia.org/wiki/GSIF
http://en.wikipedia.org/wiki/Kernel_streaming
I'm also not sure if ASIO works the same way or uses Kernel streaming but it doesn't look like WDM does (except maybe on Vista which uses WaveRT).
Anyway just as an experiment I thought I'd try this kernel streaming thing. Foobar has a kernel streaming mode driver that seems to work on my system and there is a VST host plugin for Foobar - I've already got it loading up EnergyXT to use as an audio host and will see how well this works. No midi unfortunately but I could use this for fx and audio (might be cool for live guitar processing for example and I could record the output using eXT or my Scope sound recorder)
http://en.wikipedia.org/wiki/GSIF
http://en.wikipedia.org/wiki/Kernel_streaming
I'm also not sure if ASIO works the same way or uses Kernel streaming but it doesn't look like WDM does (except maybe on Vista which uses WaveRT).
Anyway just as an experiment I thought I'd try this kernel streaming thing. Foobar has a kernel streaming mode driver that seems to work on my system and there is a VST host plugin for Foobar - I've already got it loading up EnergyXT to use as an audio host and will see how well this works. No midi unfortunately but I could use this for fx and audio (might be cool for live guitar processing for example and I could record the output using eXT or my Scope sound recorder)
- KVRAF
- Topic Starter
- 37374 posts since 14 Sep, 2002 from In teh net
Nuts it doesn't work. I thought there would be a way to get it to process audio in as well as the mp3's etc but I can't find one. What I need is a proper host that supports kernel streaming.
-
Reverse Engineer Reverse Engineer https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=9129
- KVRAF
- 4968 posts since 23 Sep, 2003 from Glasgow
I tried the foobar kernel streaming component the other night, and i couldn't get a peep out of it. Whenever i clicked on a track to play, nothing happened.
I downloaded it from this: http://www.foobar2000.org/components/index.html page, but it doesn't specify which OS it's for, so it could be Vista only? Either way, it does bugger all on my comp (xpsp3, m-audio delta 2496, latest drivers, if that matters any.)
I downloaded it from this: http://www.foobar2000.org/components/index.html page, but it doesn't specify which OS it's for, so it could be Vista only? Either way, it does bugger all on my comp (xpsp3, m-audio delta 2496, latest drivers, if that matters any.)
- KVRAF
- Topic Starter
- 37374 posts since 14 Sep, 2002 from In teh net
It works fine on mine and I'm on XP - probably it depends on the soundcard having drivers that support kernel streaming? Mine is a Creamware scope card.
-
Reverse Engineer Reverse Engineer https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=9129
- KVRAF
- 4968 posts since 23 Sep, 2003 from Glasgow
It could very well be that. But would it not just disregard my card altogether, instead of giving me options? (KS: Delta AP 1/2 and KS: Delta AP SPDIF.)aMUSEd wrote:It works fine on mine and I'm on XP - probably it depends on the soundcard having drivers that support kernel streaming? Mine is a Creamware scope card.
Lets just say that's a rhetorical question, since, if i should ask anyone, it would be the developer.
-
- KVRist
- 434 posts since 29 Jun, 2008 from Mid Wales, UK.
The Delta cards driver should work with KS.
You need to be aware though, that KS is exclusive - if something else uses either MME or Directsound, the KS connection won't work. Windows sounds are often the culprit for that & some media players. Some users keep the onboard soundchip for Windows so their "pro" card isn't affected. Other apps can also hold the driver at the wrong sample-rate which also stop KS working for you.
The Delta driver certainly works with Cakewalk apps in KS mode.
Delta ASIO is also KS, but a separate path connection. You won't get the same conflicts with ASIO and Windows sounds, except maybe the sample-rate locked wrong.
You need to be aware though, that KS is exclusive - if something else uses either MME or Directsound, the KS connection won't work. Windows sounds are often the culprit for that & some media players. Some users keep the onboard soundchip for Windows so their "pro" card isn't affected. Other apps can also hold the driver at the wrong sample-rate which also stop KS working for you.
The Delta driver certainly works with Cakewalk apps in KS mode.
Delta ASIO is also KS, but a separate path connection. You won't get the same conflicts with ASIO and Windows sounds, except maybe the sample-rate locked wrong.
- KVRAF
- Topic Starter
- 37374 posts since 14 Sep, 2002 from In teh net
KS doesn't seem to work on my laptop though which has NI KORE as the interface 
No sound
No sound
- KVRAF
- Topic Starter
- 37374 posts since 14 Sep, 2002 from In teh net
So is ASIO a form of kernel streaming? I was under the impression it was something different from what GSIF does? (more latency)
-
Reverse Engineer Reverse Engineer https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=9129
- KVRAF
- 4968 posts since 23 Sep, 2003 from Glasgow
I'm not too clued up on KS, but i'll ask anyway. Is there the possibility the 2496 uses KS by default? The reason i ask is...Jim Y wrote:The Delta cards driver should work with KS.
You need to be aware though, that KS is exclusive - if something else uses either MME or Directsound, the KS connection won't work. Windows sounds are often the culprit for that & some media players. Some users keep the onboard soundchip for Windows so their "pro" card isn't affected. Other apps can also hold the driver at the wrong sample-rate which also stop KS working for you.
The Delta driver certainly works with Cakewalk apps in KS mode.
Delta ASIO is also KS, but a separate path connection. You won't get the same conflicts with ASIO and Windows sounds, except maybe the sample-rate locked wrong.
The windows mixer seems to be disabled:
I also have no volume control in the system tray.And the volume control window (under sound playback, in the sound and audio properties page, not the configuration app for the card itself) has the m-audio logo on it (as well as having far fewer options.)

- KVRAF
- Topic Starter
- 37374 posts since 14 Sep, 2002 from In teh net
Don't know but I get the same with my Scope system - it means you have to use it's own mixer (which is miles better anyway)
-
Reverse Engineer Reverse Engineer https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=9129
- KVRAF
- 4968 posts since 23 Sep, 2003 from Glasgow
I'm not even sure why i have such an interestaMUSEd wrote:Don't know but I get the same with my Scope system - it means you have to use it's own mixer (which is miles better anyway)
-
- KVRist
- 284 posts since 8 Nov, 2004
ASIO is a user mode (cross platform) API, WDM/KS - in this context - a set of techniques to build the shortest possible audio filter graph that still works. Plus, it is strictly tied to the Windows platform.aMUSEd wrote:So is ASIO a form of kernel streaming?
While the ASIO specification defines how an ASIO driver should behave towards the host, it does not define how exactly it is supposed to implement said behavior. This is why often used language constructs like "true ASIO" and "emulated ASIO" are basically meaningless.
Since there's only so and so many ways for user mode code to legally access kernel components, a fair share of vendor's original ASIO drivers are using implementations not to dissimilar to WDM/KS, except that may be they make some of their stuff not publicly discoverable, use audio formats other than PCM all the way down (since ASIO is non-interleaved)... and so on.
It always depends on the actual implementation at hand, involving kernel driver components and, of course, the actual hardware, what latencies you will end up with.
As far as GSIF, those who say, don't know - and those who know, don't say - or they'll have to kill you afterwards. That API has never been public.aMUSEd wrote:I was under the impression it was something different from what GSIF does? (more latency)
-
- KVRist
- 434 posts since 29 Jun, 2008 from Mid Wales, UK.
With WDM, a mixer is part of the audio system. It is possible for the driver install to over-ride the Windows mixer with it's own.
Back to the KS problem - it usually turns out that something is holding the driver in use. I can guarantee that WMP9 will do that after it's used even when it's been closed! A media player that lives in the system tray is particularly liable to be holding the driver.
I think of WDM KS as a switch in the tail end of kmixer. It is either set as a direct connection to a KS capable program that bypasses the rest of kmixer, or it's set to output Windows audio that's entering kmixer. Which ever way the KS is switched, it stays that way until the user app says "ok, I've finished - you're free". Some media players think they're the only audio app in the universe and don't bother to say they've finished.
Jim
Back to the KS problem - it usually turns out that something is holding the driver in use. I can guarantee that WMP9 will do that after it's used even when it's been closed! A media player that lives in the system tray is particularly liable to be holding the driver.
I think of WDM KS as a switch in the tail end of kmixer. It is either set as a direct connection to a KS capable program that bypasses the rest of kmixer, or it's set to output Windows audio that's entering kmixer. Which ever way the KS is switched, it stays that way until the user app says "ok, I've finished - you're free". Some media players think they're the only audio app in the universe and don't bother to say they've finished.
Jim
-
- KVRAF
- 4054 posts since 8 Jan, 2005 from Hamilton, New Zealand
One note:
one of the things they did in Windows Vista was explicitly move audio support outside of the kernel and into the driver layer. That means it's unlikely that you'll get any kind of kernel streaming happening in Vista - I would think.
But don't know forsure.
M@
one of the things they did in Windows Vista was explicitly move audio support outside of the kernel and into the driver layer. That means it's unlikely that you'll get any kind of kernel streaming happening in Vista - I would think.
But don't know forsure.
M@
I make music: progressive-acoustic | electronica/game-soundtrack work | progressive alt-metal
Win 10/11 Simplifier | Also, Specialized C++ containers
Win 10/11 Simplifier | Also, Specialized C++ containers
- KVRAF
- Topic Starter
- 37374 posts since 14 Sep, 2002 from In teh net
But Vista has also got rid of the KMixer so maybe it's no longer necessary? Doesn't it already have a more streamlined audio layer in WaveRT and the other enhancements to the audio subsystem?