[wdmaudiodev] Re: Need help in KS Topology Test - WinBlue, Wave test - Certification

  • From: Parinitha Kashyap <parinitha.kashyap@xxxxxxxxx>
  • To: wdmaudiodev <wdmaudiodev@xxxxxxxxxxxxx>
  • Date: Wed, 19 Aug 2015 14:47:14 -0700

Hello,

I implemented the IMiniportAudioSignalProcessing interface on my wavecyclic
driver as follows since 'raw' mode needs to be reported:
STDMETHODIMP_(NTSTATUS) CPhorusMiniport::GetModes
(
_In_ ULONG Pin,
_Out_writes_opt_(*NumSignalProcessingModes) GUID*
SignalProcessingModes,
_Inout_ ULONG*
NumSignalProcessingModes
)
/*

1. If Pin is not a valid pin number,
return STATUS_INVALID_PARAMETER.

2. If Pin is a valid pin number and it supports n modes (n>0),
init out-parameters and return STATUS_SUCCESS.

3. Else this pin doesn't support any mode,
return STATUS_NOT_SUPPORTED.
example: bridge pins or another mode-not-aware pins.

*/
{
DPF_ENTER_PAGED();

//DPF_ENTER(("[CMiniportWaveRT::GetModes]"));

NTSTATUS ntStatus = STATUS_SUCCESS;
errno_t err;
GUID mode = AUDIO_SIGNALPROCESSINGMODE_RAW;

// copy supported processing modes
err = memcpy_s(
SignalProcessingModes,
sizeof(GUID),
&mode,
sizeof(GUID)
);

if(err) {
ntStatus = STATUS_UNSUCCESSFUL;
}

return ntStatus;
}

After running the test, I still get the error *'ERROR: Pin[00] :
KSPROPERTY_AUDIOSIGNALPROCESSING_MODES is required but not supported*' in
the task 'KS Topology Filters\KS Pins\Check Processing Modes' along
with *'**FAIL:
Pin[00] : DeviceIoControl failed to get basic support for pin property
{4F67B528-30C9-40DE-B2FB-859DDD1F3470}/0, returned error code 31*'. I get
the same deviceIOControl error in the task 'KS Topology Filters\KS
Pins\Check Pin Instance Count' as well. In the method
'PropertyHandlerBasic', we do check if the property request type is
KSPROPERTY_TYPE_BASICSUPPORT and assign the relevant valuesize. Anything
else required to be done in GetModes??

*Warm regards,*
Parinitha Kashyap

On Wed, Aug 5, 2015 at 4:31 PM, Matthew van Eerde <
Matthew.van.Eerde@xxxxxxxxxxxxx> wrote:

KSPROPERTY_AUDIOSIGNALPROCESSING_MODES is a new property for all audio
drivers that was introduced in Windows 8.1.



portcls miniports can implement IMiniportAudioSignalProcessing to have
portcls.sys support the property on their behalf.



The SysVad sample driver shows how to implement it:
https://github.com/Microsoft/Windows-driver-samples/tree/master/audio/sysvad



*From:* wdmaudiodev-bounce@xxxxxxxxxxxxx [mailto:
wdmaudiodev-bounce@xxxxxxxxxxxxx] *On Behalf Of *Parinitha Kashyap
*Sent:* Wednesday, August 5, 2015 4:22 PM
*To:* wdmaudiodev@xxxxxxxxxxxxx
*Subject:* [wdmaudiodev] Need help in KS Topology Test - WinBlue, Wave
test - Certification



Hi,



My driver is a virtual sound driver based on wavecyclic. I am running
tests on windows 10 RTM using the latest HLK software (v10.0.26624.0) and
the latest HLK filters. I am getting a failure in KS Topology Test -
WinBlue in the sub task 'KS Topology Filters\KS Pins\Check Processing
Modes'. The error is *'ERROR: Pin[00] :
KSPROPERTY_AUDIOSIGNALPROCESSING_MODES is required but not supported*'.
When I ran this test on win 8 on the same driver, it passed. Will Microsoft
release filters to pass this test? Or is this an extra requirement for the
wavecyclic drivers on win 10 to have the new DDI for audio signal
processing modes implemented?



The same error occurs in wave test for the sub tests
'WDMAudio::WaveTest::TAEF_Render_VerifyRawOrDefaultProcessingSupported#4'
and
'WDMAudio::WaveTest::TAEF_Render_VerifyRawOrDefaultProcessingSupported#5'.
The exact error text for wave test is as follows: *FAIL: The pin 0
doesn't support KSPROPERTY_AUDIOSIGNALPROCESSING_MODES*. As in KS
Topology test, the wave test passed on win 8 with the same driver.



I have attached a screenshot for the wave test.



Pls help.



Thanks,

*Warm regards,*

Parinitha Kashyap

Other related posts: