This bug may very well have been around for a while, but it seems that the Google Voice plugin for browsers (Safari, Firefox, Chrome) is very possessive of its webcam.
If you have the Google Voice plugin installed on your machine and you attempt to go to a site with Flash that wants/needs to have access to your webcam, you’ll realize that it just doesn’t work. Flash will fail with any attempt to bind to the user’s camera.
I discovered this particular anomaly when I was resurrecting one of my old projects. Everything else played fine in the Flash unit, but when the user (in this case me) went to make their own video, the Flash just wouldn’t recognize the camera.
It’d been a while since I’d touched the flash code on that particular project so I started to second-guess myself… spending an entire night poring over old code, searching for the errant needle in the .as haystack. The next morning, while at work, I attempted to load the Flash site on my work machine. Lo and behold, the recording functionality worked just fine. I determined the difference between my personal MacBook Pro and my work machine was that my personal machine had the Google voice plugin installed. I uninstalled the plugin from my machine, went back to the problematic Flash site, and PRESTO! Flash was able to successfully connect to my webcam.
Thoughts on what it might be:
So, who’s to blame? Is this a Flash issue? Is this a Google Voice issue?
I’d put the onus on Google. In Flash, in order to capture and display video from a user’s webcam, you must call Camera.getCamera() (see here). This method then returns a Camera object. If there is no webcam, or the webcam is not available, the method will return null. I believe that Google Voice is somehow latching on to the webcam and just hanging out, all chill, in the background. Then along comes Flash, wanting to access the Camera, but seeing that Google Voice is already latched on to the camera, returns null.
In the meantime, if you want to uninstall the Google Talk plugin, you can find the uninstaller on your Mac at: /Library/Application Support/Google/GoogleVoiceAndVideoUninstaller
Here’s hoping that someone somewhere decides to do something about this.