To Camera ?
Actually biggest problem of all surveillance system is drivers. How to communicate to camera knows only vendor. IP camera much simpler then professional but still have many capabilities. Most cases consumer level surveillance systems cover basic functionality which is video stream. I guess it is just wrong , easy but wrong. Our drivers implement whole camera functionality. We do with 2 ways. First camera documentation. Mostly cheap vendors have nothing which is bad. But cheap vendors using the same software which is good. I don't know who is vendor of that built in server, but in HTTP header it identified itself as Netwave. Ok, lets call it Netwave compatible cameras. We reversed HTTP commands and our driver cover full functionality of such cameras. Next non - Netwave devices. Here we follow simple pattern - implement basic "video stream" functionality first (it takes 10 min cause we built driver SDK and just need to decorate driver skeleton with behaviors. Next step is look at another features like frame rate, brightness, resolutions. It usually takes 2 more hours, add 1 hr for testing and new driver is ready. Easy job which any intern can perform. what is most complex thing is just get the device, it could be expensive. Here is 2 ways again: First get test camera from vendor. It is possible in case company has big market value and impact. Second and more realistic, buy camera and use it. It could be costly but there are no other way to provide competitive solution.