I used to fly UAV's in the army, and there were a couple of features in the GCS for the camera that I found really useful. I was wondering how hard it would be to implement.
Point at Coordinates button- when pressed, the camera stays fixed on the current stare point (very handy when mapped to a camera joystick button)
Current camera location- constantly displays the coordinates of the camera stare point (extremely useful on a HUD overlay of the video)
I think that this is a stellar idea.. the idea lends itself to military but I guess many of the concepts we use are reverse engineering from different contexts.
I presume that this already could exist within the mikrocopter hardware as it has a follow function using a second receiver. I remember reading that this was an idea some time ago but I am not sure where things are at an Ardupilot code equivalent. I guess there would be some code to draw the altitude, and do some simple algebra to determine the angle at which the camera would point. It would also be affected by the stabilize code to maintain stable X and Y and Z axis values.
The other thing I think of is that this would be quite complicated to manage unless the drone was completely autonomous or a multicopter in a loiter/mode. It would inherently need an Xbee to update the coordinates if necessary if it is a dynamic variable that you want to change as you fly. I guess that wouldn't be completely necessary, but would mean that a flight-plan may need to be programmed with your GCS and you would use AUTO mode on your radio to initiate it.
A calibration routine would likely be necessary as well for the camera to determine its front. Perhaps this could be overcome by calling the compass heading and utilize that for determining the camera yawing.
I would think that it would be quite complicated to operate the camera and flight at the same time so it would be best left to a GCS station to program pre-flight. OR go the route of having a second operator but this would mean having either a piggy back controller from your own, or have a completely different rx/batt/APM running the camera module.
That brings up another idea. A 2 axis camera gimbal is needed for the camera. By having it track a point and compensate for the elev/ail inputs, code would be needed to not spin too much so that wires do not get twisted and disconnected.
As I understand it, the software already has a "Camera Point Here" function, with a three-axis camera gimbal setup. As far as single pilot ops, you would select guided mode over the stare point, then operate the camera.