Usually the image stabilizer is a built-in function of the camera, and OIS (optical image stabilization) is a built-in hardware function; to date, indeed, several devices support them.
If the device does not have a built-in function, I think that you can not do anything.
Android does not provide a direct API for controlling image stabilization, but you can try:
- If
android.hardware.Camera.getParameters().getSupportedSceneModes(); contains the steadyphoto keyword (see here ), your device supports some stabilization (usually these are pictures when the accelerometer data indicate a βstableβ situation) - check
android.hardware.Camera.getParameters().flatten(); for the keyword / value "OIS" or "image stabilizer" or similar use in Parameters.set(key, value); . For Samsung Galaxy Camera you should use parameters.set("image-stabilizer", "ois");//can be "ois" or "off" - If you are really bored, you can try reading the accelerometer data and decide to shoot when the device looks stable.
Good luck.
source share