[wdmaudiodev] Re: Naive beginner with only a concept: front filter to use a VST plugin.

  • From: Don Gateley <dongateley@xxxxxxxxx>
  • To: wdmaudiodev@xxxxxxxxxxxxx
  • Date: Wed, 8 May 2013 14:06:22 -0700

Evert, you have described exactly what I envisioned.  Thanks.

The next problem, of course, is how to get there from here given that I
only understand the highest levels and have no skills at the detailed
level.  Personally I only want this for my own use, distributing for easy
evaluation a really impressive filter I've developed for transforming
stereo to binaural for 'phones while emulating very high quality 'phones
that I've been able to measure using inexpensive one's that I've also been
able to measure.  (You'd probably be amazed at the listening experience you
can get with the right $10 'phones.)

But I think that an application like this could provide someone
sufficiently enterprising with a perhaps modest and perhaps
more-than-modest income stream.  I have no interest in putting my cup under
that spigot, only to use the resulting platform to create a spigot of my
own (which can be pretty modest and still be of great help to my
retirement. :-) )

Probably the most challenging part would be the one plugin, one stream, VST
host with plugin graphics capablity.  You really only need one to open the
entire VST universe.  There may be model implementations of that available
even from Steinberg and there is an open source (GNU Lesser
GPL<http://www.gnu.org/copyleft/lesser.html>)
early version of the VSTHost application that could be used as a model.  It
can be downloaded from the bottom of this page:

http://www.hermannseib.com/english/vsthost.htm


On Wed, May 8, 2013 at 5:09 AM, Evert van der Poll <evert@xxxxxxxxxxx>wrote:

>  I think it is possible to come up with a system that comes close to what
> you are proposing. It consists of two components: a WDM component and a
> user mode application.
>
> The WDM component presents a virtual audio output to the system. It has a
> hidden (proprietary) interface that allows the user mode application to
> connect to the audio stream. If the user mode application is not connected,
> the WDM component just drops any incoming audio packets.
> This is much like VAC works, except there is no virtual input (at least it
> is not publicly accesible).
>
> The user mode application receives audio from the WDM component. It can
> process the audio using VST plugins and outputs the results through ASIO or
> another user mode audio API (ASIO probably preferable because of low
> attainable latency).
> The user mode application can be made to start automatically when the
> system starts, possibly running as tray icon application. Configuration is
> done through the user mode application.
>
> It may be possible to connect the configuration part with the WDM
> component's property page. I am not an expert in that area, but it seems
> likely there are ways to do that.
>
> Evert van der Poll
>
>
>
>
>
>
>
>
>
>
>
> On 5/8/2013 4:34 AM, Don Gateley wrote:
>
>  Thanks, Tim.  I understand the need for an integrated, but simple, VST
> host that uses the Steinberg API for this.  My reason for wanting a
> driver/device interface is not to do any low level kernel processing but
> simply to give a user a familiar way to direct output to a DSP filter via
> the "Windows Sound" control panel and to configure the plugin and real
> output device via it.  Is there a path to such a driver interface that
> doesn't involve kernel mode (other than perhaps as a hidden bridge)?  I
> clearly misdirected my query.  Can you suggest a forum or list more
> appropriate?
>
>  Even though I am a programmer I am not capable of programming this
> myself.  I was in real time embedded control, not Windows development.  I
> work at a different level these days, audio DSP applications, and I want to
> explore pulling together the necessary expertise to do something that I and
> probably others would find useful both for development and deployment of
> audio processing functions on Windows which is much less a kludge than what
> is now required.
>
>  Thanks again.
>
>
> On Tue, May 7, 2013 at 3:11 PM, Tim Roberts <timr@xxxxxxxxx> wrote:
>
>> Don Gateley wrote:
>> >
>> > I would like a WDM front filter that is configurable to the extent of:
>> >
>> >  1) naming the path to my VST plugins directory,
>> >  2) naming a single VST plugin to insert as a filter,
>> >  3) naming a real audio device to receive the output and
>> >  4) specifying parameters to the VST plugin and opening it's GUI.
>> >
>> > In my first usage it would name and utilize the PlogueBiduleVST plugin
>> > which is an entire framework for building up more complex flows and
>> > processes.
>>
>>  VST plugins are user-mode modules.  They're just DLLs.  There's no
>> kernel code involved, so WDM doesn't apply.  At the bottom end, the
>> hosting application pumps the resulting audio feed into the Audio Engine
>> for rendering to a speaker, but there must BE a hosting application.
>> They can't run on their own.
>>
>>
>> > I am successfully doing this now via the Virtual Audio Cable and
>> > VSTHost applications but would like to considerably simplify the
>> > mechanism for use by others with a wish to filter Windows audio in a
>> > general and flexible way.
>>
>>  There's really no easier way to do this.  You are trying to connect two
>> incompatible audio worlds here, so you're always going to need an ugly
>> adapter plate.  That's what VAC is doing for you.  Even if you made your
>> own VAC clone, you can't load user-mode DLLs in the kernel, and you
>> can't do UI stuff from the kernel.  You'd still have to have the VAC
>> clone pipe the data to a VST host of some kind.
>>
>> --
>> Tim Roberts, timr@xxxxxxxxx
>> Providenza & Boekelheide, Inc.
>>
>> ******************
>>
>> WDMAUDIODEV addresses:
>> Post message: mailto:wdmaudiodev@xxxxxxxxxxxxx
>> Subscribe:    mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=subscribe
>> Unsubscribe:  mailto:wdmaudiodev-request@xxxxxxxxxxxxx
>> ?subject=unsubscribe
>> Moderator:    mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx
>>
>> URL to WDMAUDIODEV page:
>> http://www.wdmaudiodev.com/
>>
>>
>

Other related posts: