Java Reference
In-Depth Information
Weird behavior : Some devices are manufactured with an image sensor mounted
upside down or rotated 90° in one direction or the other to meet specific industrial
design requirements. Unfortunately, on devices like this, it's not uncommon to find
out that the native camera software knows about the rotation and corrects for it,
while the Java ME MMAPI implementation does not and captures the images
rotated or upside down.
Camera support with the MMAPI can be maddening, so check a device's system
properties with System.getProperties , work carefully, and document your results. When
in doubt, check the manufacturer's developer support forums; unless it's a new device,
odds are you're not the first to run into a specific problem. And don't despair: help is in
on the way. JSR 234, the Advanced Multimedia Supplements (AMMS) API, defines a set
of supplemental MMAPI interfaces, including several camera-specific Control subinter-
faces. While not widely deployed on devices as I write this, AMMS API promises to
standardize the behavior of the imaging subsystem, as well as provide a suite of new
Control subinterfaces for imaging, including the following:
javax.microedition.amms.control.camera.CameraControl : Use this to determine and
change things like shutter feedback, camera rotation, exposure mode, and image
resolution.
javax.microedition.amms.control.camera.ExposureControl : Use this to determine
and change exposure settings.
javax.microedition.amms.control.camera.FlashControl : Use this to determine and
set the flash mode for the camera flash.
javax.microedition.amms.control.camera.FocusControl : Use this to determine and
set the focus mode and specific focus settings for variable-focus imaging sensors.
javax.microedition.amms.control.ImageFormatControl : Use this to set the desired
image format.
javax.microedition.amms.control.camera.SnapshotControl : Use this to control burst
still-image captures, taking multiple images in one capture request.
javax.microedition.amms.control.camera.ZoomControl : Use this to determine and set
digital and optical zoom options for variable-zoom imaging sensors.
You can find out if a specific device has support for JSR 234 by invoking System.
getProperty , passing the string microedition.amms.version . Devices supporting the AMMS
API have stricter conformance requirements than those that support the MMAPI, so odds
are good that there will be greater consistency of behavior between devices that provide
the AMMS API.
 
Search WWH ::




Custom Search