Nice article and it would be very hard to provide an example, since the author would have to present the code for driver (wdm, sys or vxd), the code for capture card initialisation (which is very unic for each type of video digitizer used) and the code for video processing.
The only comment I have about this article is that the code is not efficient, since it has to convert EACH frame from RGB to YUV. It's really a lot of work. I would suggest to convert "on the fly" each pixel from RGB to YUV representation right before checking with m_cStepY, m_cStepU, m_cStepV values. An yet better solution would be to work with YUV video stream (almast all professional DVRs do that) directly and convert it to RGB only when a picture snapshot is needed (BMP, JPG...).
same as the others really. An explanation of an executable to use, and how to specify and interact with particular capture cards if the system has more than one. I want to be able to detect motion and send notification to a remote device via the network by email or sms. The dll compiles OK, but you need to make sure that in VC++ , project , project settings, You set "settings for" to "all configurations", and in the General tab, set "Microsoft Foundation Classes" to "Use MFC in a shared DLL". Then select OK.