Juicehifi wrote: > > "Why would you choose to do it that way, instead of writing a filter > driver (for XP) or an APO (for Vista)? Those would seem to be much > less intrusive mechanisms, with much less reinventing of the wheel." > I was hoping that this would be as simple as splitting one of the DDK > audio driver examples, take the user mode interface from it, send the > audio to buffers for processing and build a player on the back side > for the downstream - and syncronize the two audiostreams by forwarding > the callbacks upstream. Is this a very complicated task? I, personally, would judge it to be much more complicated than the filter driver and APO solutions. The big advantage of a filter driver is that all of the boilerplate stuff is being done for you by the driver you're leeching from. You intercept and modify only those requests that interest you. > The solution doesn't really have to be a driver, but it is important > that the solution is connected to the choosen sound card in such a way > that all audio sent to this particular sound card goes through the > solution. Each time the machine is turned on and until the user > chooses to disable the solution. > > Maybe it should be a filter driver and an APO. I don't know. Will a > filter driver / APO solution work with Asio playback in addition to > the windows audio API? The filter driver certainly should. ASIO on XP talks to the kernel streaming driver, so it should pick up any filter. On Vista, I don't know. The ASIO web site says it now supports WaveRT drivers on Vista, but I don't know whether that means it talks DIRECTLY to the WaveRT drivers. If so, that would bypass any APOs. Note, however, that I have zero personal experience with ASIO. It is possible that I have waded out of my depth here and should just shut up. > The solution should not be dependant on cooperation from the > application. In fact, removing dependancies of the various audio > sources is one of the main motivations for making a solution. It is > also important that the solution is guaranteed to be in the audio > rendering stream whenever audio is routed to the subject sound card. > The solution should have a very straightforward installation procedure > that is works as long as the player and sound card supports certain > defined audio API's. And as long as decoded autio is played. This also > means that it will have to sit further down the stream than a mp3 / > AC3 or any other audio decoder would sit. Yes, naturally. This also means that your driver will not be allowed to participate in protected content on Vista. > Some of todays users send the audio to an available audio output - > then loops the audio back to audio inputs - then from the inputs to a > VST/DX host for processing and finally to the outputs of the the sound > card that's actually being used for the playback. This solution > strikes me as unneccesary complicated. Isn't that exactly the solution you are proposing, with the one exception that you'll configure the playback path yourself? > Is this a "mission impossible"? It's not "mission impossible", but it's not a slam dunk, either. -- Tim Roberts, timr@xxxxxxxxx Providenza & Boekelheide, Inc.