Of late, the google talk plugin wouldn’t allow me to make video calls. Audio used to work fine, but no video. (The tiny movie projector icon was missing.) I tried fiddling around with restarting the plugin, but it wasn’t solving the problem.
I then tried Cheese to see if the problem was with the webcam. Turned out that it was, Cheese wasn’t recognizing the webcam. That’s why no video in GoogleTalk – the strange thing is that the GoogleTalkPlugin didn’t provide any error messages at all when it tried to initialize the webcam. When it realized that there was no webcam, it just switched to audio only mode!
I then ran the dmesg command on the terminal which had the line:
uvcvideo: Failed to initialize the device (-5).
This seemed to point to a UVC problem. Googling revealed that the problem could be fixed by removing and adding the UVC kernel module. Here are the steps to do that:
sudo modprobe -r uvcvideo;
sudo modprobe uvcvideo;
As soon as I ran the second command, the blue light of the webcam flicked on and voila everything was back to normal. Hopefully this quick fix works for you if you run into this problem.
Otherwise, the recommended solution is to upgrade to the latest UVC modules. Linux kernels 2.6.26 onwards include the UVC driver natively, so upgrading to the latest kernel should also solve the problem.