Skip to content

Improve AF compatibility across different camera HAL implementations and Implement independent AF/AE metering and draggable indicators - #181

Open
matthew777777 wants to merge 1 commit into
eszdman:devfrom
matthew777777:pr-to-upstream9
Open

Improve AF compatibility across different camera HAL implementations and Implement independent AF/AE metering and draggable indicators#181
matthew777777 wants to merge 1 commit into
eszdman:devfrom
matthew777777:pr-to-upstream9

Conversation

@matthew777777

Copy link
Copy Markdown
Contributor

Summary

This PR improves the camera focus and exposure controls by separating AF and AE metering, correcting coordinate mapping, refining capture-request behavior, and improving manual-focus handling.

Changes

  • Added a separate draggable exposure indicator with a sun icon, allowing the AE metering point to be positioned independently from the autofocus indicator.
  • Updated TouchFocus to coordinate independent AF and AE metering points.
  • Refined AF/AE trigger logic in CaptureController to:
    • Prevent redundant AF and AE restarts.
    • Avoid unnecessary request updates.
    • Improve compatibility across different camera HAL implementations.
  • Reworked viewfinder-to-sensor coordinate mapping:
    • Uses SENSOR_INFO_ACTIVE_ARRAY_SIZE.
    • Correctly accounts for the active sensor region.
    • Fixes inaccurate AF/AE region placement caused by incorrect view-to-sensor translation.
  • Applied the selected manual focus distance to still-capture requests, ensuring captured images use the same focus setting as the preview.
  • Improved focus-range and hyperfocal-distance handling in CameraProperties, including more reliable behavior when camera metadata is incomplete or device-specific.
  • Updated AF state labels and related UI constants for clearer and more consistent focus-state reporting.

Result

AF and AE can now be controlled independently and positioned more accurately. Manual focus is preserved during still capture, focus-distance calculations are more robust, and the updated trigger logic reduces unnecessary focus restarts while improving compatibility across devices.

- Add separate draggable exposure indicator with a sun icon.
- Coordinate independent AF and AE metering points in `TouchFocus`.
- Refine AF/AE trigger logic in `CaptureController` to prevent redundant restarts and improve HAL compatibility.
- Update coordinate mapping to use `SENSOR_INFO_ACTIVE_ARRAY_SIZE` and fix viewfinder-to-sensor translation.
- Apply manual focus distance to still capture requests.
- Improve focus range and hyperfocal distance handling in `CameraProperties`.
- Update AF state labels and constants in the UI.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant