How to record Web Cam footage to Video File?

I have a requirement from a customer to allow them to record Web Cam footage from the game client to a video file and then this will get uploaded to a cloud server at a later stage. Rendering the web-cam footage to a texture and displaying it fairly straight forward but I don’t need to do that.

The user should click a button, the web-cam should start recording, and when the user clicks finished it should save the footage to a video file and then upload it to a cloud server. I can do the uploading and the user interface but I am struggling with actually recording the footage and I wonder if there is a better way of doing this.

Currently I am looking at:

  • OpenCV
  • ARToolkit
  • Other

Are there any suggestions on the best way to do this?
Does anyone have some ideas?

I would really appreciate any help.