How is CyanogenMod manual focus controlled?

CyanogenMod appears to provide a "manual" focus mode without using the Camera2 API, but how can this be controlled?

I opened this mode on OnePlus One by calling:

camera.getParameters().getSupportedFocusModes()

      

The returned list includes an additional named mode "manual"

that is not documented in the standard API API reference . I can set this mode (for example using setFocusMode("manual")

], but then what?

The CyanogenMod Camera API source shows what this mode is called FOCUS_MODE_MANUAL_POSITION

and also provides the following:

 private static final int MANUAL_FOCUS_POS_TYPE_INDEX = 0;
 private static final int MANUAL_FOCUS_POS_TYPE_DAC = 1;
 /** @hide
 * Set focus position.
 *
 * @param pos user setting of focus position.
 */
 public void setFocusPosition(int type, int pos) {
   set(KEY_QC_MANUAL_FOCUS_POS_TYPE, Integer.toString(type));
   set(KEY_QC_MANUAL_FOCUS_POSITION, Integer.toString(pos));
 }

 /** @hide
 * Gets the current focus position.
 *
 * @return current focus position
 */
 public String getCurrentFocusPosition() {
    return get(KEY_QC_MANUAL_FOCUS_POSITION);
 }

      

But constants MANUAL_FOCUS_POS_TYPE_

are private and methods are marked @hide

.

So again my question is, how would I manage this "manual" focus mode?

+3


source to share





All Articles