Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

microsoft, vc++, 2003, usb audio class, vc++, 2003

Posted on 2007-11-20
5
Medium Priority
?
286 Views
Last Modified: 2013-11-13
Is there a way to bind a usb audio device to a specific audio app so that no other audio app can access the same specific usb audio device while the first app is active (I would like to not to have to manually elect the device)?  Assume that I am using usb audio class, waveIn & waveOut.
0
Comment
Question by:lmenasco
  • 3
5 Comments
 
LVL 70

Expert Comment

by:Merete
ID: 20325970
this is tricky question, if your looking for vc++,  solutions this is not the right zone,
I am layman on that but put simply
to bind  usb audio device to a specific audio app in windows? depends what the USB audio device is playing, care to elaborate what this USB audio device is?
take for example I can have my stereo connected to my pc and use any media player to play it, if the audio files have a file association such as mp3 then you simply disable the file association in all media players then they wont see them.

I dont know what your talking about really its very broad, but rightclick the audio file and open with choose to always use the program of your choice.

If this is an ipod for ITunes then that's another story.
Please come back and fill in some details
thanks
Cheers Merete


0
 

Author Comment

by:lmenasco
ID: 20326038
I'll try to elaborate a bit.  The binding I'm talking about is to have a usb audio device (in this case I'm using a micronas usb audio codec chip) bound to a specific audio application in such a way as to cause that device to be exclusive to that one app, and prevent other audio apps from having access while the first app is still active (in this case, and app that I wrote).  When the micronas usb chip is plugged in, XP now loads a generic composite usb driver, which allows me to address it via waveIn and waveOut.  But so can any other audio app, because it shows up in the wave_mapper enumeration.  I know that as long as I don't make it the default, then the other apps would generally stay clear, but I would like with certainty to prevent any other apps from accessing the particular audio device.  In essence, I'm looking for some way on the XP platform to be able to do what the new Vista Core Audio Api does with their exclusive-mode audio streaming, where an audio app can address an audio device exclusively, and prevent other apps from having access while it is active.  And for other reasons I won't go into for the moment, I need to stick with the XP os.  I'd prefer not to have to write a driver to accomplish that task.

Any ideas or suggestions on where to look?

0
 

Author Comment

by:lmenasco
ID: 20326070
A PS, if you tell me there's no way of doing the way I'm approaching it now, that's ok too.  If I have to write a dedicated driver, then so be it.  I just wanted to make sure there wasn't an easier way or some flag or parameter, or process that was available to do the job that I might be missing.

Thanks!
0
 
LVL 19

Accepted Solution

by:
MerijnB earned 1500 total points
ID: 20326211
no, there is no way of achieving this the 'conventional' way, only if you make new driver for the microphone yourself which includes this functionality.
Even then it would be quite simple for a user to reinstall the normal driver and there you have your problem again... :|
0
 

Author Closing Comment

by:lmenasco
ID: 31410317
It's what I suspected was the case.  I guess my next step is to find even a relatively simple driver example that gives me just the equivalent of waveIn and waveOut, there are other drivers that I am already using that allow me to do what the mixer control functions would ordinarally do, but more directly.  I just need audio io streaming capability.  I aready came across a means of at least binding a specific driver to a specific hardware port, so with a dedicated driver, I can probably create the binding I need.  One other thing I do have control over is the enumeration process/.asm code on the usb audio device.  I plan to eliminate the part that enumerates it as a generic composite device, and add instead an enumeration that would bring up the dedicated driver.  It's just a lot of extra work that I was hoping I could avoid!

Thanks again!
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Programmer's Notepad is, one of the best free text editing tools available, simply because the developers appear to have second-guessed every weird problem or issue a programmer is likely to run into. One of these problems is selecting and deleti…
Tired of waiting for your show or movie to load?  Are buffering issues a constant problem with your internet connection?  Check this article out to see if these simple adjustments are the solution for you.
Viewers will get an overview of how to make and use Drum Racks in Ableton Live. Load new Drum Rack into empty MIDI track: Fill rack with audio samples: Re-arrange sample slots as necessary: Adjust parameters of each slot to tailor each sound a…
Viewers will learn key ranges in Sampler to make their sampled instruments sound more realistic Gather samples of various notes and drag them to Key Range panel: Set proper root key for each sample: Select all the samples with Command-A (or Ctrl…

783 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question