Windows System Software -- Consulting, Training, Development -- Unique Expertise, Guaranteed Results


More Info on Driver Writing and Debugging

The free OSR Learning Library has more than 50 articles on a wide variety of topics about writing and debugging device drivers and Minifilters. From introductory level to advanced. All the articles have been recently reviewed and updated, and are written using the clear and definitive style you've come to expect from OSR over the years.

Check out The OSR Learning Library at:

Before Posting...

Please check out the Community Guidelines in the Announcements and Administration Category.

Is it possible to send asynchronous notification from a camera driver to userspace?

SvabSvab Member Posts: 8

I have read and implemented properties to camera driver. Thanks to mr. Paklin for inspiration.

One of property is called "trigger". This property could be pooled from userspace fine. Property contains logical level on a wire.

It has been told to me that pooling is not sufficient enough and that they want to have asynchronous notifications faster than one frame after trigger change.
Does there exist any mechanism in Windows kernel DirectShow streaming that allows this to implement?

I know only one way to have mutex in userspace to be unblocked from kernel when some event occurs. Passing this quirk through ks.lib might be quite hard.

Thank you very much.


  • Tim_RobertsTim_Roberts Member - All Emails Posts: 14,167

    The AVStream method of doing this is to use a KSEVENT. This ends up being implemented as an inverted call.

    It is, of course, also possible for you to use a KSPROPERTY to send a user-mode event handle into the driver, and use a plain old KeSetEvent to fire the event.

    What's the point of this? Camera drivers work in units of frames, so you can't really do anything faster than a frame.

    Tim Roberts, [email protected]
    Providenza & Boekelheide, Inc.

  • SvabSvab Member Posts: 8
    edited October 22

    Thank you very much for response. I will study link you sent me.

    I do not actually understand a customer point too much, may be that he needs to evaluate exact moment when some event occurred. May be that event occurred several milisecond after frame shipped. Or he needs to catch narrow signal peak. I personally recommended that some specialised DAQ device might do a better job than overloading camera driver with this functionality. I see no benefit of combined camera device in comparison with another PCIe/USB separate device. But they request this functionality anyway.

Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. Sign in or register to get started.

Upcoming OSR Seminars
OSR has suspended in-person seminars due to the Covid-19 outbreak. But, don't miss your training! Attend via the internet instead!
Writing WDF Drivers 24 January 2022 Live, Online
Internals & Software Drivers 7 February 2022 Live, Online
Kernel Debugging 21 March 2022 Live, Online
Developing Minifilters 23 May 2022 Live, Online