Hi there,
I'm a corporate engineer who used to work for well-known camera manufactuers(IP and ANalo), including Tyco American Dynamics and Sony.
OpenCV is great for basic /generic IP camera or USB camera access, but to really be able to get optimal performance , customise video steams/bandwiths etc... one should always use the SDK provided by the camera manufacturer; and then develop a custom camera "driver", which can process each frame.
On the other hand, if there is a need to deal with various camera manufacturers, and generic /modern streaming video streams and codecs, then OpenCV is fine.
If you still want to use OPenCV, I can provide you with technical guidance , Q&A's a technicalk report,and C++ examples...... as I specialise in C and C++ based engineering projects.. and have done it(or did it, as I'm now not working in this field any longer), for 20+ years.