The Nest doorbell is fairly good at this, but it has a relatively narrow field of view and 1080p resolution. Most of the CCTVs out there have a very wide field of view, which makes the number of pixels per face low.
As another commenter pointed out, it also doesn't have to sift through thousands of faces. Chances are the doorbell is only exposed to a handful of faces a day which greatly reduces the volume of false positives regardless of the field of view and resolution.
Modern FR systems can compare tens of millions of faces per second, per core, on a $99 Intel Compute Stick. The thing that sucks about Nest and similar "security cameras" is their wide angles - that makes the distance of recognition far too close. To detect a face, FR needs between 28 and 54 pixels of head height, but to recognize with accuracy is requires a minimum of 120 pixels of head height. A Nest camera will not produce a head that large until it is 3 feet from the camera. I'd prefer to make recognition at 30 feet or more, preferably when a bad actor is not yet inside the property.