Hi Matthew, On windows 8.1 I am noticing that after raising event on on all pins, I get calls for KSPROPERTY_TYPE_SET on all pins but I do not receive calls for KSPROPERTY_TYPE_GET. In KSPROPERTY_TYPE_SET, I receive request to set last selected sample rate - driver sends STATUS_NO_MATCH to this. Still I do not see any KSPROPERTY_TYPE_GET calls. Why is this happening? cheers, Neetu On Tue, Sep 3, 2013 at 9:45 PM, Matthew van Eerde < Matthew.van.Eerde@xxxxxxxxxxxxx> wrote: > Raise the event for each pin that you want to be requeried.**** > > ** ** > > For example, suppose that Ch 1/2 Out, Ch 3/4 Out, and Ch 1/2 In are all at > 44.1 kHz.**** > > ** ** > > Then the user goes into the Sound control panel and changes Ch 1/2 Out to > 48 kHz.**** > > ** ** > > You should raise the event on Ch 3/4 Out and Ch 1/2 In. When Windows > renegotiates the device format on those endpoints, insist on a 48 kHz > format; decry any support for 48 kHz.**** > > ** ** > > *From:* wdmaudiodev-bounce@xxxxxxxxxxxxx [mailto: > wdmaudiodev-bounce@xxxxxxxxxxxxx] *On Behalf Of *Jesko Quenzer > *Sent:* Monday, August 26, 2013 12:47 AM > *To:* wdmaudiodev@xxxxxxxxxxxxx > *Subject:* [wdmaudiodev] KSEVENT_PINCAPS_FORMATCHANGE event and the > PCEVENT_VERB_ADD**** > > ** ** > > Hi,**** > > **** > > I try to add the "Dynamic Format Change Support" which is documented in > here: > http://msdn.microsoft.com/en-us/library/windows/hardware/gg463055.aspx to > my miniport driver. > I was able to register the events to get calls to my > EventHandlerFormatChange and to my PropertyHandlerPinProposeForma function > (both taken from the document above). **** > > **** > > I also see the KSPROPERTY_TYPE_SET and KSPROPERTY_TYPE_GET calls and > everything seem to be OK.**** > > **** > > There are some things I'm missing or do not understand well:**** > > **** > > For example I have a device which provides Ch 1/2 and Ch 3/4 Out and Input > 1/2 and I want to keep the sample rate settings synchronised for all of > them. > So I guess I should get a KSPROPERTY_TYPE_GET for each device after I > changed the sample rate for one of them to synchronise the others to the > new "default" sample rate. > Is this correct ?**** > > **** > > The problem is I never get this call. I only get a call to > KSPROPERTY_TYPE_GET once when I open the device in the Windows CPL.**** > > **** > > There are two parts in the sample code I don't understand and are probably > related:**** > > **** > > NTSTATUS CMiniportHelper::GenerateFormatChangeEvent() > which calls: > m_pPortEvents->GenerateEventList(...,...,...);**** > > **** > > where should I instantiate the pPortEvents and where do I call the > GenerateFormatChangeEvent ?**** > > The source code(which I didn't write by my self) calls once:**** > > pPort->QueryInterface (IID_IPortEvents, (PVOID *)&pPortEvents);**** > > in my Adapter->StartDevice function. Should I keep this instance ?**** > > **** > > also the "case PCEVENT_VERB_ADD:" in the EventHandlerFormatChange is > never called, only "case PCEVENT_VERB_SUPPORT:" is called.**** > > **** > > Any suggestion what I'm doing wrong ?**** > > **** > > Another thing is how can I distinguish which pin is opened in the CPL ?*** > * > > Any idea ?**** > > **** > > Thanks and Regards,**** >