I am running Windows XP as a virtual machine through VirtualBox on Ubuntu 11.10. I have some USB devices (namely a video grabber & Android phone) that aren't recognised by Ubuntu. Will they be recognised by Windows XP if it is running virtually?
Probably, yes. The USB-passthrough gives native-like access to USB devices to VMs.
In the past I've used VirtualBox to update the firmware on my old phone, the firmware on my mouse (it's a very shiny mouse) and update our Logitech Harmony remote. All things that aren't really possible through Ubuntu directly.
What I should point out is that the performance is not great all the time. It isn't a real passthrough (that's practically impossible as the hubs are all managed by Ubuntu) so there's a software layer in there that does slow things up. Pointedly for you, a video grabber may not work very well.
Note: I thought this didn't need saying but, just reading Frank's answer, it probably does... All this does require you to set up USB support correctly!
Yes, but.. You have to add your user account to the VBOXUSERS group.
Here is a quick rundown. http://www.howtogeek.com/howto/31726/mount-usb-devices-in-virtualbox-with-ubuntu/
Once you do that (and reboot) your USB devices should appear when you click on the USB icon on the bottom status bar of your virtualbox window.
My experience with VMWare on Windows is that VMWare installs a USB driver that essentially passes the USB device's communications directly through to the VM. So if I plugged in a USB wireless card, the Wireless card would disappear from the host's device list and be replaced with a "VMWare USB Device" and then it would appear in the guest's device manager.
YMMV with different VM software.