Solved

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

Posted on 2007-11-20
5
284 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
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 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 500 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

Instantly Create Instructional Tutorials

Contextual Guidance at the moment of need helps your employees adopt to new software or processes instantly. Boost knowledge retention and employee engagement step-by-step with one easy solution.

Question has a verified solution.

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

In our object-oriented world the class is a minimal unit, a brick for constructing our applications. It is an abstraction and we know well how to use it. In well-designed software we are not usually interested in knowing how objects look in memory. …
I have a Synology DS212+ NAS.  These are not only great for backup and normal NAS stuff, but also for delivering media throughout your home or LAN via DLNA.  I copied my whole audio collection from iTunes over to the box, but couldn't figure out how…
This video will demonstrate how to customize windows, tools, and control bars, and save them as screen sets. Open and resize windows: Customize the toolbar: Customize the control bar: Customize your tool selections: Your screen set is alread…
Viewers will learn the basics of making and using Impulse Kits in Ableton Live. Load new Impulse into an empty MIDI track: Fill the 8 empty sample slots with drum samples: Adjust parameters to tailor each sound as desired: Proceed to create be…

623 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