I'm going to be building an application within the next six months that will be functioning as a 2-way video-conferencing system, as well as sharing some other data back and forth. I'll probably be using some sort of relatively expensive USB webcam, and am aware of the USB Video Class Device standard, which seems to the way to go.
Now, what can I use to program against that (or some other direction)? OS is not that important as it is not decided (will choose to fit overall needs), nor is language. Network will be VPN, worst case 256kbps symmetrical. Ideally it would handle encoding and compression too, but basically I'm just looking for some sort of starting point to begin research (have just found TAPI and H.323 so far, not sure of best way to program them).