Hi, I am writing a kernel streaming filter for audio. I use a filter driver and install as an upper filter driver above the usb audio system driver (usbaudio.sys in win2k). The framework is generated by DriverStudio as an usb filter. The purpose of this filter is to perform FIR filter to the audio stream data. This is the DeviceControl method: NTSTATUS UsbtestDevice::DeviceControl(KIrp I) { t <<"Entering UsbtestDevice::DeviceControl\n"; switch (I.IoctlCode()){ case IOCTL_KS_WRITE_STREAM: { t<<" -- IOCTL_KS_WRITE_STREAM\n"; break; } case IOCTL_KS_PROPERTY: { t<<" -- IOCTL_KS_PROPERTY\n"; break; } default: t<<" -- IOCTL_UNKNOWN[ "<<I.IoctlCode()<<" ]\n"; } return PassThrough(I); } The IOCTL_KS_WRITE_STREAM signal can be caught in the DeviceControl method, but I can't find the pointer KSSTREAM_HEADER.Data to real stream data. How to get the stream data under this framework? Or, is this the wrong way for my purpose? Need your help!! Thanks! Frank ****************** 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.de/