I have a requirement to control USB CAM from any iOS device by sending command like take picture, zoom in, zoom out. Also the live video should be stream on iOS device so I can see the camera view on my iOS device's screen and perform required action.
- Can I achieve this by apple's external accessory framework or by registration for apple's MFI program ?
- Does it require any external hardware support like arduino or raspberry-pi ?
- Does USB CAM companies provide any SDK for this ?
Thanks in advance.
Okay so in short there are a few different ways to achieve what you're trying to do here, all and each offering their own pros and cons. So first off, you could go 100% hardware end driven and build yourself a camera that simply outputs what it sees to a webserver local to the device. Pop a WebView in your app, connect and you're golden.
Dowsides:
The next option you could go for comprises of creating a camera that will only connect to the desired device via a handshake of sorts, and yes for this method you will need Apples external accessory framework. In the way of hardware support, you're probably not going to do it with an Arduino, Raspberry Pi is feasible, but then you'll have to accommodate all that Apple standard nightmare rubbish!
In my opinion, I would go with the webserver approach and call so java etc to ensure the device you're connecting to, is of the correct type / formfactor. If you have a raspberry pi and picamera you can use this Git, my personal experience with it was good & i stripped down some of the code to make it work with a quadcopter project. It's here: https://github.com/ccrisan/motionPie