[wdmaudiodev] 答复: Re: Problems about dynamic audio subdevice on Vista

  • From: <StarXing@xxxxxxxxxxxxxx>
  • To: <wdmaudiodev@xxxxxxxxxxxxx>
  • Date: Fri, 5 Jun 2009 11:22:28 +0800

Thanks Jeff.
 
I follows the WDK ac97 samples to instantiate/uninstantiate the audio 
subdevice, and in most cases it works well.
That is:
create wave/topology port/miniport -> register wave/topology subdevice -> 
register physical connection when instantiating subdevice and
remove physical connection -> unregister wave/topology subdevcie->release ports 
when uninstantiating subdevices.
 
I doubt whether this is a timing issue. 
That is to say, I should wait some for the audio subsystem to prepare the audio 
api's well.
 
Thanks again.
 
Regards.
HW

________________________________

发件人: wdmaudiodev-bounce@xxxxxxxxxxxxx [mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] 
代表 Jeff Pages
发送时间: Friday, June 05, 2009 11:06 AM
收件人: wdmaudiodev@xxxxxxxxxxxxx
主题: [wdmaudiodev] Re: Problems about dynamic audio subdevice on Vista


Make sure that when a subdevice is instantiated, you create the wave and 
topology ports/miniports, register the physical connection, THEN register the 
wave subdevice and finally the topology subdevice. Likewise when removing a 
subdevice, unregister the topology subdevice first, then the wave subdevice, 
the physical connection and finally release the ports. Apparently if it's not 
done in that order, a race condition can occur which does what you're 
describing.
 
Jeff
 

        ----- Original Message ----- 
        From: StarXing@xxxxxxxxxxxxxx 
        To: wdmaudiodev@xxxxxxxxxxxxx 
        Sent: Friday, June 05, 2009 12:49 PM
        Subject: [wdmaudiodev] Problems about dynamic audio subdevice on Vista

        Hello everyone,
        I am develping an audio driver which implement dynamic audio subdevice 
on windows vista.
        The audio subdevice can be instantiated/uninstantiated on behalf of 
user's request through device IO control.
        After instantiating the audio subdevice, the user would like to locate 
thate audio endpoints through MMDevice API and render through that device.
        In most cases these are running without trouble except two strange 
issues.
        1) Can't locate the audio subdevice through MMDevice API although we 
can see it in system audio control panel
        2) Can't see the audio subdevice in system audio control panel
        In case 2, the audio subdevice will appear in system audio control 
panel if we restart the "Windows Audio Endpoint Builder" services.
         
        Any pointers on these 2 issues are greatly appreciated.
         
        Thanks and regards,
         
        HW

Other related posts:

  • » [wdmaudiodev] 答复: Re: Problems about dynamic audio subdevice on Vista - StarXing