这篇翻译不完整。请帮忙从英语翻译这篇文章。
非标准
该特性是非标准的,请尽量不要在生产环境中使用它!
When you use the CameraManager.getCamera() method to get a reference to a camera, you specify a callback function to be invoked on success. That function receives as a parameter a CameraControl object. You can use its methods and properties to manage and make use of the camera.
Properties
CameraControl.capabilities只读- A
CameraCapabilitiesobject indicating all the capabilities for the given camera. CameraControl.effect- A string defining the effect to be used by the camera (
noneby default). Its value must be one of the values available inCameraCapabilities.effects. CameraControl.exposureCompensation只读- A value used to compensate the camera exposure. This attribute is read-only; to change the exposure, you need to call the
CameraControl.setExposureCompensation()method. CameraControl.flashMode- A string that defines how the flash, if any, is to be used; this is
autoby default if the device has a flash,noneotherwise. When set, its value must be chosen from the list of options specified byCameraCapabilities.flashModes. CameraControl.focalLength只读- A number that express the camera's focal length in millimeters.
CameraControl.focusAreas- An
Arrayof one or more objects that define where the camera will perform auto-focusing. CameraControl.focusDistanceFar只读- This value is a distance in meter used with
CameraControl.focusDistanceNearto defined the image's depth of field. The value for this property may beInfinity. CameraControl.focusDistanceNear只读- This value is a distance in meter used with
CameraControl.focusDistanceFarto defined the image's depth of field. CameraControl.focusDistanceOptimum只读- This value is a distance in meter where the subject will appear sharpest.
CameraControl.focusMode- A string that defines which kind of focus mode the camera should use (
autoorfixedby default). Its value must be chosen fromCameraCapabilities.focusModes. CameraControl.meteringAreas- An
Arrayof one or more objects that define where the camera will perform auto-focusing. CameraControl.onShutter- A handler for the camera's "shutter" event, to trigger a shutter sound and/or a visual shutter indicator.
CameraControl.onClosed- A handler called when a new
CameraControlobject in the same app takes over the camera. CameraControl.onRecorderStateChange- A function to call when the recorder changes state, either because the recording process encountered an error, or because one of the recording limits (see
CameraControl.startRecording()) was reached. CameraControl.sceneMode- A string that defines which scene mode the camera is to use (
autoby default). Its value must be chosen fromCameraCapabilities.sceneModes. CameraControl.whiteBalanceMode- A string that defines which white balance mode the camera is to use (
autoby default). Its value must be chosen fromCameraCapabilities.whiteBalanceModes. CameraControl.zoom- A number that defines which kind of zoom factor mode the camera is to use (1 by default). Its value must be chosen from
CameraCapabilities.zoomRatios.
Methods
CameraControl.autoFocus()- Tells the camera to attempt to focus the image.
CameraControl.getPreviewStream()- Gets a video stream from the camera; you can use this in an arbitrary context.
CameraControl.getPreviewStreamVideoMode()- Gets a video stream from the camera based on a specific video mode.
CameraControl.release()- Releases the camera so that other applications can use it.
CameraControl.resumePreview()- Resumes the preview video stream after it's been paused by a call to
CameraControl.takePicture(). CameraControl.setExposureCompensation()- Lets you specify the exposure compensation factor.
CameraControl.startRecording()- Lets you start recording a video stream.
CameraControl.stopRecording()- Lets you stop recording a video stream.
CameraControl.takePicture()- Lets you capture a single image, receiving it as a
Blob.
Specification
Not part of any specification as yet; this will probably be replaced by WebRTC when it gains more widespread support on mobile devices.
Permissions
Up until Firefox OS 1.4, The Camera API was a certified API, so not accessible to third party apps. From Firefox OS 2.0 onwards, the permission level has been downgraded to privileged, so it is now available for developers to use in their apps.
"permissions": {
"camera": {
"description": "Required for accessing cameras on the device."
}
}

