In this scenario, you need to customize the USB camera driver and replace the built-in driver. You may refer to this graphics driver samples.
Adding watermark to video stream need you analysis the video frame and mix the watermark to the frame, generally, you need to use a third party for that. It is not easy to do that. We recommend you to add the watermark in application. There are many libraries can do that.
How do I modify the stream from a USB camera via a kernel level filter driver (or is there a better way)
I'm looking to write a filter driver that can modify the video stream from USB camera class devices, for instance putting a watermark on it, and seeing it modified on any other application like skype or camera app.
However I've been reading the documentation available online, and I'm not finding what i need. For instance I see how theres kernel streaming in DirectShow's "How Hardware Devices Participate in the Filter Graph" but this isn't expanded on. I've learned how to write a kernel level filter driver like Chew Esmero's "ccfltr" but this simply copies the data to a shared memory available to userland.
Could someone kindly point me in the right direction to achieve this? Thank you very much.
In terms of development environment, I have a target device and kernel debugging setup via WinDbg, using Visual studio 2019, Windows 10 SDK (10.0.19041.0) and corresponding WDK.
1 answer
Sort by: Most helpful
-
MichaelXu-MSFT 1 Reputation point
2020-08-31T08:07:02.323+00:00