Hi Uwe, >> * declare only current sample rate in the Vista control panel, and use >> custom control panel for sample rate switch (it will be automatic for >> external sources) > That would be great, but how do you do that without unloading the > driver? My understanding was so far that this is not possible. Please > correct me if I´m wrong. > Unloading the driver is not an option for me, because the driver has to > control the hardware all the time the hardware is present. The driver is > also needed for the other intefaces (ASIO / GSIF). My driver is AVStream-based, not portclass-based, that's why it might be a bit easier for me. On driver start-up, the driver reads current sample rate from the device and creates filter factory + pins + data ranges with a single sample rate. Vista shows single format in its control panel, the control is grayed out, disabled. Whenever an event happens (user changes hardware sample rate or opens vendor-specific control panel), I perform the following: * signal AVStream that device classes state is 'disabled' (this terminates all pending DirectSound/WinMM sessions) - by using KsFilterFactorySetDeviceClassesState * _KsEdit() pin's data range, filter factory data range and change the sample rate * signal AVStream that device classes state is 'enabled' This solves the problem with everything but Vista control panel :) It keeps displaying previous sample rate, but also lists new one. If a user selects new sample rate, old one disappears... However, WinMM applications won't work until sample rate is changed manually. But ASIO/GSIF clients are working properly, of course. For PortClass driver it should be possible to achieve the same by using IUregisterSubdevice interface. I'm still unsure if this Vista behavior is correct. I suppose it is a bug, because the control panel keeps listing the format no longer supported by device and no longer manifested by the driver. Moreover, even after reboot / disable-re-enable and similar events Vista remembers the format. I wonder if this is caused by the specifics of the audio format (our hardware uses 24-bit data packed into 32-bit containers) - since the control panel checks 8-, 16-, and 24-bit formats during initialization (I receive corresponding intersection requests), but no 32-bit formats are enumerated. Regards, Eugene Gavrilov Senior Software Engineer, CEntrance, Inc. ****************** WDMAUDIODEV addresses: Post message: mailto:wdmaudiodev@xxxxxxxxxxxxx Subscribe: mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=subscribe Unsubscribe: mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=unsubscribe Moderator: mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx URL to WDMAUDIODEV page: http://www.wdmaudiodev.com/