I have built the x86 platform of WinCE 4.2 with default Ensoniq 1371 audio
driver.
I can put 2 kind of audio driver when I build x86 platform, but it is not my
requirement.
If I want to install another audio driver on run-time (Ensoniq 1371 has been
exist), how can I do?

Thanks!
Nelson

Re: how to install the second audio driver? by Dean

Dean
Thu Dec 29 08:46:08 CST 2005

I'm not sure I follow the question, but if you're trying to load a driver at
run time, you can call ActivateDeviceEx(). You'll need to have setup a
registry key for this driver, and provide that path to the function.

--
Dean Ramsier - eMVP
BSQUARE Corporation


"Nelson" <nelson.yen@cmedia.com.tw> wrote in message
news:026E185B-A8BD-4EDD-871D-A5CA20FEBCC1@microsoft.com...
>I have built the x86 platform of WinCE 4.2 with default Ensoniq 1371 audio
> driver.
> I can put 2 kind of audio driver when I build x86 platform, but it is not
> my
> requirement.
> If I want to install another audio driver on run-time (Ensoniq 1371 has
> been
> exist), how can I do?
>
> Thanks!
> Nelson



Re: how to install the second audio driver? by nelson

nelson
Thu Dec 29 21:52:01 CST 2005

Thanks for your replying. Maybe I need to re-describe the quesiton.
If I want to add a new usb audio device on x86 platform of wince 4.2, I have
to dynamic load driver into the platform. How can I do?

Another quesiton,
In PDA device, can it possible to enable two audio devices at the same time?

Nelson

"Dean Ramsier" wrote:

> I'm not sure I follow the question, but if you're trying to load a driver at
> run time, you can call ActivateDeviceEx(). You'll need to have setup a
> registry key for this driver, and provide that path to the function.
>
> --
> Dean Ramsier - eMVP
> BSQUARE Corporation
>
>
> "Nelson" <nelson.yen@cmedia.com.tw> wrote in message
> news:026E185B-A8BD-4EDD-871D-A5CA20FEBCC1@microsoft.com...
> >I have built the x86 platform of WinCE 4.2 with default Ensoniq 1371 audio
> > driver.
> > I can put 2 kind of audio driver when I build x86 platform, but it is not
> > my
> > requirement.
> > If I want to install another audio driver on run-time (Ensoniq 1371 has
> > been
> > exist), how can I do?
> >
> > Thanks!
> > Nelson
>
>
>

Re: how to install the second audio driver? by K

K
Sat Dec 31 07:02:04 CST 2005

First, you may need to know how to develop an USB class driver on Window CE
base device.
Any USB class driver is loaded by USBD.DLL, then the USBD.dll will invoke
the USBDeviceAttach finction which is exported by the class driver.
Inside the USBDeviceAttach, the class driver will do some interface
configure and invoke the ActivateDevceEx API to activate a driver instnace.
You could take a look at some of the USB class driver sample codes which
could be found at $(_WINCEROOT)\public\common\oak\drivers\usb\class

And for PDA.
It is possible to load two or more audio driver at the same time, but only
one of them could be default audio driver.
The default audio driver is the one and the only one that will recevice all
of the system notification sound, and for applications playback audio when
not assign to a specific audio device.
To change the default audio device, you could use the
DRVM_MAPPER_PREFERRED_SET and DRVM_MAPPER_PREFERRED_GET wavedev messages.

"Nelson" <nelson.yen@cmedia.com.tw> ¼¶¼g©ó¶l¥ó·s»D:C1318D83-128F-4F3F-8907-117CCC00EA7F@microsoft.com...
> Thanks for your replying. Maybe I need to re-describe the quesiton.
> If I want to add a new usb audio device on x86 platform of wince 4.2, I
> have
> to dynamic load driver into the platform. How can I do?
>
> Another quesiton,
> In PDA device, can it possible to enable two audio devices at the same
> time?
>
> Nelson
>
> "Dean Ramsier" wrote:
>
>> I'm not sure I follow the question, but if you're trying to load a driver
>> at
>> run time, you can call ActivateDeviceEx(). You'll need to have setup a
>> registry key for this driver, and provide that path to the function.
>>
>> --
>> Dean Ramsier - eMVP
>> BSQUARE Corporation
>>
>>
>> "Nelson" <nelson.yen@cmedia.com.tw> wrote in message
>> news:026E185B-A8BD-4EDD-871D-A5CA20FEBCC1@microsoft.com...
>> >I have built the x86 platform of WinCE 4.2 with default Ensoniq 1371
>> >audio
>> > driver.
>> > I can put 2 kind of audio driver when I build x86 platform, but it is
>> > not
>> > my
>> > requirement.
>> > If I want to install another audio driver on run-time (Ensoniq 1371 has
>> > been
>> > exist), how can I do?
>> >
>> > Thanks!
>> > Nelson
>>
>>
>>



Re: how to install the second audio driver? by nelson

nelson
Sun Jan 01 20:22:02 CST 2006

Thanks at first.
For PDA, based on your description, only one audio driver could be used.
If I change the default local audio driver to my virtual audio driver with
the application, all sound will be played by my virtual driver and be sent to
remote speaker with wireless. And then, if I use the loadlibray and
getprocaddress function to change all sound back to local driver, is it
possible to do it?
I asked the question because I have tried it on PDA device and could not
hear any sound. The virtual driver was not built in default platform, it was
installed when I want to change it. I want to separate different sound to
different driver and speaker. Is it possible for it?

Nelson

"K. S. Huang" wrote:

> First, you may need to know how to develop an USB class driver on Window CE
> base device.
> Any USB class driver is loaded by USBD.DLL, then the USBD.dll will invoke
> the USBDeviceAttach finction which is exported by the class driver.
> Inside the USBDeviceAttach, the class driver will do some interface
> configure and invoke the ActivateDevceEx API to activate a driver instnace.
> You could take a look at some of the USB class driver sample codes which
> could be found at $(_WINCEROOT)\public\common\oak\drivers\usb\class
>
> And for PDA.
> It is possible to load two or more audio driver at the same time, but only
> one of them could be default audio driver.
> The default audio driver is the one and the only one that will recevice all
> of the system notification sound, and for applications playback audio when
> not assign to a specific audio device.
> To change the default audio device, you could use the
> DRVM_MAPPER_PREFERRED_SET and DRVM_MAPPER_PREFERRED_GET wavedev messages.
>
> "Nelson" <nelson.yen@cmedia.com.tw> ¼¶¼g©ó¶l¥ó·s»D:C1318D83-128F-4F3F-8907-117CCC00EA7F@microsoft.com...
> > Thanks for your replying. Maybe I need to re-describe the quesiton.
> > If I want to add a new usb audio device on x86 platform of wince 4.2, I
> > have
> > to dynamic load driver into the platform. How can I do?
> >
> > Another quesiton,
> > In PDA device, can it possible to enable two audio devices at the same
> > time?
> >
> > Nelson
> >
> > "Dean Ramsier" wrote:
> >
> >> I'm not sure I follow the question, but if you're trying to load a driver
> >> at
> >> run time, you can call ActivateDeviceEx(). You'll need to have setup a
> >> registry key for this driver, and provide that path to the function.
> >>
> >> --
> >> Dean Ramsier - eMVP
> >> BSQUARE Corporation
> >>
> >>
> >> "Nelson" <nelson.yen@cmedia.com.tw> wrote in message
> >> news:026E185B-A8BD-4EDD-871D-A5CA20FEBCC1@microsoft.com...
> >> >I have built the x86 platform of WinCE 4.2 with default Ensoniq 1371
> >> >audio
> >> > driver.
> >> > I can put 2 kind of audio driver when I build x86 platform, but it is
> >> > not
> >> > my
> >> > requirement.
> >> > If I want to install another audio driver on run-time (Ensoniq 1371 has
> >> > been
> >> > exist), how can I do?
> >> >
> >> > Thanks!
> >> > Nelson
> >>
> >>
> >>
>
>
>

Re: how to install the second audio driver? by K

K
Mon Jan 02 09:41:25 CST 2006

I just note that theDRVM_MAPPER_PREFERRED_SET and DRVM_MAPPER_PREFERRED_GET
wave device message is *not* available unitl Windows Mobile 5.0 AKU1.
So if the PDA is *not* Magneto AKU1 and above, you may need to take another
apporach.
Once an audio driver is loaded as the default sound device, the fact might
*not* be changed unitil system reboot.
I'll suggest to write a wrapper audio driver and modify the registry setting
to let this wrapper driver loaded as default audio device (replace the
original audio driver).
Then the wrapper will deviced to route the audio payload to the original
driver or the new one.

And you also mention about routing different sound to various devices, it
that mean you want to route some of the stram to original audio device and
may want to route others to the new one??
If so, how dose the driver decide which sound should route to which driver??

"Nelson" <nelson.yen@cmedia.com.tw> ¼¶¼g©ó¶l¥ó·s»D:1CB89DB2-1CC4-4B56-A730-10B74A007329@microsoft.com...
> Thanks at first.
> For PDA, based on your description, only one audio driver could be used.
> If I change the default local audio driver to my virtual audio driver with
> the application, all sound will be played by my virtual driver and be sent
> to
> remote speaker with wireless. And then, if I use the loadlibray and
> getprocaddress function to change all sound back to local driver, is it
> possible to do it?
> I asked the question because I have tried it on PDA device and could not
> hear any sound. The virtual driver was not built in default platform, it
> was
> installed when I want to change it. I want to separate different sound to
> different driver and speaker. Is it possible for it?
>
> Nelson
>



Re: how to install the second audio driver? by E

E
Sat Aug 18 21:00:00 CDT 2007

Would you happen to know where I can find any .Net sample code for the
DRVM_MAPPER_PREFERRED_SET and DRVM_MAPPER_PREFERRED_GET wavedev messages? I
am at my whits end I cannot seem to get the signature or input variables
right...Anybodys help would be greatly appreciated.

WaveOutMessage(m_WaveOut, DRVM_MAPPER_PREFERRED_GET, ref CurrentDeviceID,
ref RefZero);




"K. S. Huang" wrote:

> First, you may need to know how to develop an USB class driver on Window CE
> base device.
> Any USB class driver is loaded by USBD.DLL, then the USBD.dll will invoke
> the USBDeviceAttach finction which is exported by the class driver.
> Inside the USBDeviceAttach, the class driver will do some interface
> configure and invoke the ActivateDevceEx API to activate a driver instnace.
> You could take a look at some of the USB class driver sample codes which
> could be found at $(_WINCEROOT)\public\common\oak\drivers\usb\class
>
> And for PDA.
> It is possible to load two or more audio driver at the same time, but only
> one of them could be default audio driver.
> The default audio driver is the one and the only one that will recevice all
> of the system notification sound, and for applications playback audio when
> not assign to a specific audio device.
> To change the default audio device, you could use the
> DRVM_MAPPER_PREFERRED_SET and DRVM_MAPPER_PREFERRED_GET wavedev messages.
>
> "Nelson" <nelson.yen@cmedia.com.tw> ¼¶¼g©ó¶l¥ó·s»D:C1318D83-128F-4F3F-8907-117CCC00EA7F@microsoft.com...
> > Thanks for your replying. Maybe I need to re-describe the quesiton.
> > If I want to add a new usb audio device on x86 platform of wince 4.2, I
> > have
> > to dynamic load driver into the platform. How can I do?
> >
> > Another quesiton,
> > In PDA device, can it possible to enable two audio devices at the same
> > time?
> >
> > Nelson
> >
> > "Dean Ramsier" wrote:
> >
> >> I'm not sure I follow the question, but if you're trying to load a driver
> >> at
> >> run time, you can call ActivateDeviceEx(). You'll need to have setup a
> >> registry key for this driver, and provide that path to the function.
> >>
> >> --
> >> Dean Ramsier - eMVP
> >> BSQUARE Corporation
> >>
> >>
> >> "Nelson" <nelson.yen@cmedia.com.tw> wrote in message
> >> news:026E185B-A8BD-4EDD-871D-A5CA20FEBCC1@microsoft.com...
> >> >I have built the x86 platform of WinCE 4.2 with default Ensoniq 1371
> >> >audio
> >> > driver.
> >> > I can put 2 kind of audio driver when I build x86 platform, but it is
> >> > not
> >> > my
> >> > requirement.
> >> > If I want to install another audio driver on run-time (Ensoniq 1371 has
> >> > been
> >> > exist), how can I do?
> >> >
> >> > Thanks!
> >> > Nelson
> >>
> >>
> >>
>
>
>

Re: how to install the second audio driver? by andyraf

andyraf
Sat Aug 25 13:16:33 CDT 2007

Try waveOutMessage(WAVE_MAPPER,...)

Note that the DRVM_MAPPER_PREFERRED... APIs may change or go away in
some future versions of the OS (they were really only a hack to solve
some short-term issues on Smartphone platforms, and we'd like to go
back and do a cleaner solution in the future). From an application
perspective, rather than using DRVM_MAPPER_PREFERRED_GET to query the
preferred device, you can always just use WAVE_MAPPER as the device ID
in waveOutOpen and we'll always route you to the preferred device.

On Aug 18, 7:00 pm, E. Joe Wright <E. Joe
Wri...@discussions.microsoft.com> wrote:
> Would you happen to know where I can find any .Net sample code for the
> DRVM_MAPPER_PREFERRED_SET and DRVM_MAPPER_PREFERRED_GET wavedev messages?=
I
> am at my whits end I cannot seem to get the signature or input variables
> right...Anybodys help would be greatly appreciated.
>
> WaveOutMessage(m_WaveOut, DRVM_MAPPER_PREFERRED_GET, ref CurrentDevice=
ID,
> ref RefZero);
>
>
>
> "K. S. Huang" wrote:
> > First, you may need to know how to develop an USB class driver on Windo=
w CE
> > base device.
> > Any USB class driver is loaded by USBD.DLL, then the USBD.dll will invo=
ke
> > the USBDeviceAttach finction which is exported by the class driver.
> > Inside the USBDeviceAttach, the class driver will do some interface
> > configure and invoke the ActivateDevceEx API to activate a driver instn=
ace.
> > You could take a look at some of the USB class driver sample codes which
> > could be found at $(_WINCEROOT)\public\common\oak\drivers\usb\class
>
> > And for PDA.
> > It is possible to load two or moreaudiodriver at the same time, but only
> > one of them could be defaultaudiodriver.
> > The defaultaudiodriver is the one and the only one that will recevice a=
ll
> > of the system notification sound, and for applications playbackaudiowhen
> > not assign to a specificaudiodevice.
> > To change the defaultaudiodevice, you could use the
> > DRVM_MAPPER_PREFERRED_SET and DRVM_MAPPER_PREFERRED_GET wavedev message=
s=2E
>
> > "Nelson" <nelson....@cmedia.com.tw> =BC=B6=BCg=A9=F3=B6l=A5=F3=B7s=BBD:=
C1318D83-128F-4F3F-8907-117CCC00E...@microsoft.com...
> > > Thanks for your replying. Maybe I need to re-describe the quesiton.
> > > If I want to add a new usbaudiodevice on x86 platform of wince 4.2, I
> > > have
> > > to dynamic load driver into the platform. How can I do?
>
> > > Another quesiton,
> > > In PDA device, can it possible to enable twoaudiodevices at the same
> > > time?
>
> > > Nelson
>
> > > "Dean Ramsier" wrote:
>
> > >> I'm not sure I follow the question, but if you're trying to load a d=
river
> > >> at
> > >> run time, you can call ActivateDeviceEx(). You'll need to have se=
tup a
> > >> registry key for this driver, and provide that path to the function.
>
> > >> --
> > >> Dean Ramsier - eMVP
> > >> BSQUARE Corporation
>
> > >> "Nelson" <nelson....@cmedia.com.tw> wrote in message
> > >>news:026E185B-A8BD-4EDD-871D-A5CA20FEBCC1@microsoft.com...
> > >> >I have built the x86 platform of WinCE 4.2 with default Ensoniq 1371
> > >> >audio
> > >> > driver.
> > >> > I can put 2 kind ofaudiodriver when I build x86 platform, but it is
> > >> > not
> > >> > my
> > >> > requirement.
> > >> > If I want to install anotheraudiodriver on run-time (Ensoniq 1371 =
has
> > >> > been
> > >> > exist), how can I do?
>
> > >> > Thanks!
> > >> > Nelson- Hide quoted text -
>
> - Show quoted text -