The camera API that we put together for B2G was put together with a
lot of haste and optimized mainly for ease of implementation on top of
the backend that we have (the low-level android backend).
It is not pretty and it is not an API that I would recommend to be
standardized without modifications.
> Is it a privileged API?
In v1 yes. But for wholly other reasons. In B2G we are running all
apps in sandboxed processes. It was too much work to allow these
processes to get access to the camera backend without running the
process with very high privileges. So the API implementation only
works for apps that are running with these high privileges, which
means that we have to restrict the API only to a few certified apps.
So it's not an API problem, but an implementation problem.
> What is the short-term plan?
To ship what we have. I.e. only the camera app is running with high
enough privileges that it can use the API.
> Long-term plan?
At the very least to make the API available to sandboxed processes
which would allow us to expose it to privileged apps.
But we should look more closely at expanding the feature set of WebRTC
such that it can solve the use case of building a full featured camera
app on top of it.
> More to the point, though I'll derive my own answer from the previous
> answers: should I bother documenting the short-term solution?
I would say there are higher priorities as far as docs go.