hi I wrote an AVStream driver and registered it to "Audio Capture Sources" category. But the registered filter display different in KSStdio/GraphEdit from that I declare in my code. And my filter play in GraphEdit, GraphEdit is hung. my filter's pin description is here const KSPIN_DESCRIPTOR_EX AudioCapturePinDescriptors [] = { //0:Line In { NULL, NULL, { 0,NULL, 0,NULL, 0, NULL, KSPIN_DATAFLOW_IN,KSPIN_COMMUNICATION_BOTH, &PINNAME_BDA_ANALOG_AUDIO, &PINNAME_BDA_ANALOG_AUDIO, 0 }, 0, 1, 0, NULL, NULL, }, //1:Audio { &AudioFilterPinDispatch, &AudioFilterPinAutomation, { KSINTERFACE_STANDARD_STREAMING,NULL, 0,NULL, SIZEOF_ARRAY(AudioPinDataRanges),AudioPinDataRanges, KSPIN_DATAFLOW_OUT,KSPIN_COMMUNICATION_BOTH, &PINNAME_CAPTURE,&PINNAME_CAPTURE, 0 }, KSPIN_FLAG_DISPATCH_LEVEL_PROCESSING | KSPIN_FLAG_PROCESS_IN_RUN_STATE_ONLY, 1,1, &AudioPinAllocatorFraming, (PFNKSINTERSECTHANDLEREX)&AudioFilterPin::DataRangeIntersection }, }; The KSStudio show only one Capture pin, and tell that the capture pin is KSPIN_COMMUNICATION_SINK (not KSPIN_COMMUNICATION_BOTH as I declare). My INF register is here: [MYDEVICE.AUDIO.AddReg] HKR,,SetupPreferredAudioDevices,3,01,00,00,00 HKR,,AssociatedFilters,,"wdmaud" HKR,,Driver,,mydevice.sys HKR,,NTMPDriver,,"mydevice.sys" HKR,Drivers,SubClasses,,"wave,mixer" HKR,Drivers\wave\wdmaud.drv, Driver,,wdmaud.drv HKR,Drivers\mixer\wdmaud.drv,Driver,,wdmaud.drv HKR,Drivers\wave\wdmaud.drv,Description,,%MYDEVICE.DeviceDesc0% HKR,Drivers\mixer\wdmaud.drv,Description,,%MYDEVICE.DeviceDesc0% ****************** 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/