Mặc dù các thuật toán 3A thực tế đều áp dụng cách triển khai HAL, nhưng mô tả máy trạng thái được xác định bởi giao diện HAL để cho phép HAL thiết bị và khung để thông báo về trạng thái hiện tại của 3A và kích hoạt các sự kiện 3A.
Khi thiết bị mở, tất cả trạng thái 3A riêng lẻ phải
STATE_INACTIVE.
Cấu hình luồng không được đặt lại 3A. Ví dụ: tiêu điểm bị khoá phải
được duy trì trong lệnh gọi configure()
.
Để kích hoạt hành động 3A, bạn chỉ cần đặt mục nhập điều kiện kích hoạt có liên quan trong chế độ cài đặt cho yêu cầu tiếp theo để biểu thị thời điểm bắt đầu kích hoạt. Ví dụ: điều kiện kích hoạt để bắt đầu quét tự động lấy nét là đặt mục nhập ANDROID_CONTROL_AF_TRIGGER thành ANDROID_CONTROL_AF_TRIGGER_START cho một yêu cầu; và thao tác huỷ quá trình quét tự động lấy nét được kích hoạt bằng cách cài đặt ANDROID_CONTROL_AF_TRIGGER thành ANDROID_CONTrl_AF_TRIGGER_CANCEL. Nếu không, giá trị mục nhập sẽ không tồn tại hoặc được đặt thành ANDROID_CONTROL_AF_TRIGGER_IDLE. Một có mục nhập kích hoạt được đặt thành giá trị không IDLE sẽ được coi là sự kiện kích hoạt độc lập.
Ở cấp cao nhất, 3A được kiểm soát bởi cài đặt ANDROID_CONTROL_MODE. Nó chọn giữa không có 3A (ANDROID_CONTROL_MODE_OFF), chế độ TỰ ĐỘNG thông thường (ANDROID_CONTROL_MODE_auto) và sử dụng cài đặt chế độ cảnh (ANDROID_CONTROL_USE_SCENE_MODE):
- Ở chế độ TẮT, từng chế độ lấy nét tự động (AF), tự động phơi sáng (AE), và tự động cân bằng trắng (AWB) được TẮT hoàn toàn và không có các chế độ kiểm soát chụp ảnh có thể bị quy trình 3A ghi đè.
- Ở chế độ TỰ ĐỘNG, các chế độ AF, AE và AWB đều chạy độc lập các thuật toán đồng thời có chế độ, trạng thái và mục nhập siêu dữ liệu kích hoạt riêng, như được nêu trong phần tiếp theo.
- Trong USE_SCENE_MODE, giá trị của mục nhập ANDROID_CONTROL_SCENE_MODE phải được dùng để xác định hành vi của các quy trình 3A. Trong các SCENE_MODE khác với FACE_PRIORITY, HAL phải ghi đè các giá trị của ANDROID_CONTROL_AE/AWB/AF_MODE là chế độ ưu tiên cho chế độ đã chọn CHẾ ĐỘ SCENE_MODE. Ví dụ: HAL có thể ưu tiên sử dụng SCENE_MODE_NIGHT Chế độ CONTINUOUS_FOCUS AF. Mọi lựa chọn của người dùng về AE/AWB/AF_MODE khi cảnh phải bỏ qua đối với các chế độ cảnh này.
- Đối với SCENE_MODE_FACE_PRIORITY, các chế độ kiểm soát AE/AWB/AFMODE sẽ hoạt động như trong ANDROID_CONTROL_MODE_auto, nhưng các quy trình 3A phải thiên về định mức và tập trung vào bất kỳ khuôn mặt nào được phát hiện trong cảnh.
Chế độ cài đặt tự động lấy nét và mục nhập kết quả
Các mục siêu dữ liệu chính | |
---|---|
ANDROID_CONTROL_AF_MODE | Kiểm soát để chọn chế độ tự động lấy nét hiện tại. Thiết lập theo khung trong phần cài đặt yêu cầu. |
TẮT_AF_MODE_OFF | Tính năng tự động lấy nét bị tắt; khung/ứng dụng trực tiếp điều khiển vị trí ống kính. |
AF_MODE_TỰ ĐỘNG | Tự động lấy nét một lần quét. Không có chuyển động nào của ống kính trừ phi kích hoạt tự động lấy nét. |
AF_MODE_MACRO | Tự động lấy nét cận cảnh một lần bằng cách quét một lần. Không chuyển động ống kính trừ phi kích hoạt tính năng tự động lấy nét |
AF_MODE_CONTINUOUS_VIDEO | Lấy nét liên tục mượt mà để quay video. Kích hoạt ngay lập tức khoá tiêu điểm ở vị trí hiện tại. Khi bạn huỷ thao tác, ứng dụng sẽ tiếp tục tập trung liên tục. |
AF_MODE_CONTINUOUS_PICTURE | Lấy nét nhanh liên tục, chụp ảnh không có độ trễ màn trập. Kích hoạt khoá sẽ tiêu điểm sau khi quá trình quét đang hoạt động kết thúc. Đang huỷ sơ yếu lý lịch khả năng tập trung liên tục. |
AF_MODE_EDOF | Lấy nét trường ảnh theo chiều sâu mở rộng nâng cao. Không có tính năng quét tự động lấy nét, nên việc kích hoạt một mã hoặc huỷ một đường liên kết đều không có tác dụng. Hình ảnh được lấy tiêu điểm tự động bằng HAL (Lớp trừu tượng phần cứng). |
ANDROID_CONTROL_AF_STATE | Siêu dữ liệu động mô tả trạng thái thuật toán AF hiện tại, được báo cáo bởi HAL trong siêu dữ liệu kết quả. |
TRẠNG_THÁI_AF_HOẠT ĐỘNG | Chưa lấy nét được hoặc thuật toán đã được đặt lại. Ống kính hiện không di chuyển. Luôn ở trạng thái cho MODE_OFF hoặc MODE_EDOF. Khi thiết bị mở ra, thì thiết bị phải bắt đầu ở trạng thái này. |
Hàm AF_STATE_PASSIVE_SCAN | Thuật toán lấy nét liên tục hiện đang quét để lấy nét tốt. Ống kính đang di chuyển. |
AF_STATE_PASSIVE_FOC | Thuật toán lấy nét liên tục cho rằng hình ảnh đó có tiêu điểm tốt. Ống kính không di chuyển. HAL có thể tự thoát khỏi trạng thái này. |
AF_STATE_PASSIVE_UNFOCUSE | Thuật toán lấy nét liên tục cho rằng hình ảnh đó không có tiêu điểm tốt. Ống kính không di chuyển. HAL có thể tự thoát khỏi trạng thái này. |
AF_STATE_ACTIVE_SCAN | Quá trình quét do người dùng kích hoạt đang diễn ra. |
AF_STATE_FOC Mỗi_LOCKED | Thuật toán AF cho rằng nó được lấy nét. Ống kính không di chuyển. |
AF_STATE_NOT_FOCUSE_LOCKED | Thuật toán lấy nét tự động không lấy nét được. Ống kính không di chuyển. |
ANDROID_CONTROL_AF_TRIGGER | Kiểm soát việc bắt đầu quét tự động lấy nét, ý nghĩa của quá trình này phụ thuộc chế độ và trạng thái. Do khung này thiết lập trong phần cài đặt yêu cầu. |
AF_TRIGGER_IDLE | Hiện không có điều kiện kích hoạt nào. |
KÍCH HOẠT KÍCH HOẠT | Kích hoạt thời gian bắt đầu quét AF. Hiệu ứng phụ thuộc vào chế độ và trạng thái. |
AF_TRIGGER_CANCEL | Huỷ quá trình quét lấy nét tự động hiện tại (nếu có) và đặt lại thuật toán về mặc định. |
Mục nhập siêu dữ liệu bổ sung | |
---|---|
ANDROID_CONTROL_AF_KHU VỰC | Kiểm soát việc chọn các vùng của trường nhìn (FOV) cần được dùng để xác định tiêu điểm tốt. Chế độ này áp dụng cho tất cả chế độ lấy nét tự động chế độ quét lấy nét. Do khung này thiết lập trong phần cài đặt yêu cầu. |
Chế độ cài đặt tự động phơi sáng và mục nhập kết quả
Các mục siêu dữ liệu chính | |
---|---|
ANDROID_CONTROL_AE_MODE | Kiểm soát việc chọn chế độ phơi sáng tự động hiện tại. Đặt bởi khung trong phần cài đặt yêu cầu. |
Chế độ AE_MODE_OFF | Tính năng tự động phơi sáng bị tắt; người dùng kiểm soát độ phơi sáng, mức tăng, khung hình và flash. |
AE_MODE_ON | Tự động phơi sáng chuẩn, khi tắt tính năng điều khiển đèn flash. Người dùng có thể đặt đèn flash để bật hoặc tắt chế độ đèn pin. |
AE_MODE_ON_TỰ ĐỘNG_FLASH | Tự động phơi sáng tiêu chuẩn, có đèn flash theo quyết định của HAL để chụp ảnh trước mà vẫn chụp được ảnh. Đã tắt chế độ điều khiển của người dùng flash. |
AE_MODE_ON_ALWAYS_FLASH | Phơi sáng tiêu chuẩn, với đèn flash luôn được kích hoạt để chụp và ở tuỳ ý khi thu thập trước. Đã tắt chế độ điều khiển của người dùng flash. |
AE_MODE_ON_TỰ ĐỘNG_FLASH_REDEYE | Tự động phơi sáng tiêu chuẩn, có đèn flash theo quyết định của HAL để chụp ảnh trước mà vẫn chụp được ảnh. Sử dụng một loạt đèn flash ở cuối trình tự chụp trước để giảm hiệu ứng mắt đỏ trong hình ảnh cuối cùng. Đã tắt chế độ điều khiển của người dùng flash. |
ANDROID_CONTROL_AE_STATE | Siêu dữ liệu động mô tả trạng thái thuật toán AE hiện tại, được báo cáo bởi HAL trong siêu dữ liệu kết quả. |
AE_STATE_KHÔNG HOẠT ĐỘNG | Trạng thái AE ban đầu sau khi chuyển đổi chế độ. Khi mở thiết bị, thiết bị phải bắt đầu ở trạng thái này. |
TÌM KIẾM TĂNG NGỐC | AE không được hội tụ thành giá trị tốt và đang điều chỉnh mức độ hiển thị quảng cáo tham số. |
Hàm AE_STATE_CONVERGED | AE đã tìm thấy giá trị phơi sáng tốt cho cảnh hiện tại và các thông số phơi sáng sẽ không thay đổi. HAL có thể tự động rời khỏi quy trình này trạng thái để tìm kiếm giải pháp tốt hơn. |
Hàm AE_STATE_LOCKED | AE đã được khoá bằng chế độ kiểm soát AE_LOCK. Giá trị phơi sáng không đang thay đổi. |
AE_STATE_FLASH_REQUIRED | HAL có phơi sáng hội tụ nhưng cho rằng cần có đèn flash để ảnh đủ sáng. Dùng để xác định xem độ trễ màn trập bằng 0 khung có thể sử dụng. |
AE_STATE_PRECAPTURE | HAL nằm ở giữa trình tự chụp trước. Tuỳ thuộc vào chế độ AE, chế độ này có thể liên quan đến việc kích hoạt đèn flash để đo sáng hoặc một loạt ánh sáng flash xung để giảm hiệu ứng mắt đỏ. |
ANDROID_CONTROL_AE_PRECAPTURE_TRIGGER | Kiểm soát việc bắt đầu trình tự đo sáng trước khi chụp ảnh chất lượng cao hình ảnh. Do khung này thiết lập trong phần cài đặt yêu cầu. |
Hàm PRECAPTURE_TRIGGER_IDLE | Hiện không có điều kiện kích hoạt nào. |
PRECAPTURE_TRIGGER_START | Bắt đầu một trình tự chụp trước. HAL nên sử dụng các yêu cầu tiếp theo để đo độ phơi sáng tốt/cân bằng trắng cho độ phân giải cao sắp tới chụp. |
Mục nhập siêu dữ liệu bổ sung | |
---|---|
ANDROID_CONTROL_AE_LOCK | Kiểm soát để khoá các chế độ kiểm soát AE với giá trị hiện tại. |
ANDROID_CONTROL_AE_EXPOSURE_COMPENSATION | Chế độ kiểm soát để điều chỉnh điểm độ sáng mục tiêu trong thuật toán AE. |
ANDROID_CONTROL_AE_TARGET_FPS_RANGE | Kiểm soát việc chọn phạm vi tốc độ khung hình mục tiêu cho thuật toán AE. Quy trình AE không thể thay đổi tốc độ khung hình thành nằm ngoài những ranh giới. |
ANDROID_CONTROL_AE_KHU VỰC | Kiểm soát việc chọn các vùng của FOV xác định mức phơi sáng tốt. Chế độ này áp dụng cho tất cả các chế độ AE bên cạnh TẮT. |
Chế độ cài đặt tự động cân bằng trắng và mục kết quả
Các mục siêu dữ liệu chính | |
---|---|
ANDROID_CONTROL_AWB_MODE | Kiểm soát việc chọn chế độ cân bằng trắng hiện tại. |
TẮT_AWB_MODE_OFF | Tính năng tự động cân bằng trắng đã tắt. Người dùng kiểm soát ma trận màu. |
AWB_MODE_TỰ ĐỘNG | Đã bật tính năng tự động cân bằng trắng; 3A kiểm soát việc biến đổi màu, có thể sử dụng các phép biến đổi phức tạp hơn là một ma trận đơn giản. |
Hàm AWB_MODE_INCANDESCENT | Cố định các chế độ cài đặt cân bằng trắng phù hợp với đèn sợi đốt trong nhà (vonfram) ánh sáng, khoảng 2700K. |
Hàm AWB_MODE_FLUORESCENT | Cố định các chế độ cài đặt cân bằng trắng phù hợp với ánh sáng huỳnh quang, ở mức xấp xỉ 5000 nghìn. |
Hàm AWB_MODE_WARM_FLUORESCENT | Cố định các chế độ cài đặt cân bằng trắng phù hợp với ánh sáng huỳnh quang, ở mức xấp xỉ 3000 nghìn. |
AWB_MODE_DAYLIGHT | Cố định chế độ cân bằng trắng tốt cho ánh sáng ban ngày, khoảng 5500K. |
AWB_MODE_CLOUDY_DAYLIGHT | Sửa chế độ cân bằng trắng ở mức tốt trong ánh sáng ban ngày nhiều mây, khoảng 6500K. |
AWB_MODE_TWILIGHT | Đã khắc phục các cài đặt cân bằng trắng tốt khi gần như mặt trời lặn/mặt trời mọc, khoảng 15000 nghìn. |
Hàm AWB_MODE_SHADE | Cố định cài đặt cân bằng trắng tốt cho những khu vực ánh sáng mặt trời gián tiếp, khoảng 7500 nghìn. |
ANDROID_CONTROL_AWB_STATE | Siêu dữ liệu động mô tả trạng thái thuật toán AWB hiện tại, được báo cáo bởi HAL trong siêu dữ liệu kết quả. |
AWB_STATE_INACTIVE | Trạng thái AWB ban đầu sau khi chuyển đổi chế độ. Khi mở thiết bị, thiết bị phải bắt đầu ở trạng thái này. |
Hàm AWB_STATE_SEARCHING | AWB không hội tụ thành giá trị tốt và sẽ thay đổi hệ số điều chỉnh màu sắc tham số. |
Hàm AWB_STATE_CONVERGED | AWB đã tìm thấy các giá trị điều chỉnh màu phù hợp cho cảnh hiện tại và các tham số không thay đổi. HAL có thể tự thoát khỏi trạng thái này nhằm tìm ra giải pháp tốt hơn. |
Hàm AWB_STATE_LOCKED | AWB đã được khoá bằng chế độ kiểm soát AWB_LOCK. Điều chỉnh màu sắc không thay đổi. |
Mục nhập siêu dữ liệu bổ sung | |
---|---|
ANDROID_CONTROL_AWB_LOCK | Kiểm soát để khoá các chế độ điều chỉnh màu AWB với các giá trị hiện tại. |
ANDROID_CONTROL_AWB_REGIONS | Kiểm soát việc chọn các vùng của FOV xác định cân bằng màu sắc phù hợp. Chế độ này chỉ áp dụng cho tính năng tự động cân bằng trắng . |
Ghi chú chuyển đổi máy ở trạng thái chung
Việc chuyển đổi giữa chế độ AF, AE hoặc AWB luôn đặt lại trạng thái của thuật toán thành KHÔNG HOẠT ĐỘNG. Tương tự, chuyển đổi giữa CONTROL_MODE hoặc CONTROL_SCENE_MODE nếu CONTROL_MODE == USE_SCENE_MODE đặt lại tất cả trạng thái thuật toán thành KHÔNG HOẠT ĐỘNG.
Các bảng dưới đây là cho từng chế độ.
Máy ở trạng thái tự động lấy nét
chế độ = AF_MODE_OFF hoặc AF_MODE_EDOF | |||
---|---|---|---|
Trạng thái | Nguyên nhân biến đổi | Trạng thái mới | Ghi chú |
CHƯA KÍCH HOẠT | Chế độ lấy nét tự động bị tắt |
chế độ = AF_MODE_auto hoặc AF_MODE_MACRO | |||
---|---|---|---|
Trạng thái | Nguyên nhân biến đổi | Trạng thái mới | Ghi chú |
CHƯA KÍCH HOẠT | KÍCH HOẠT KÍCH HOẠT | ACTIVE_SCAN | Bắt đầu quét lấy nét tự động Ống kính hiện đang di chuyển |
ACTIVE_SCAN | Đã quét AF | TẬP TRƯỚC_KHOÁ | Nếu AF thành công Ống kính hiện đã khoá |
ACTIVE_SCAN | Đã quét AF | NOT_FOC bắn_LOCKED | Nếu AF thành công Ống kính hiện đã khoá |
ACTIVE_SCAN | AF_CANCEL | CHƯA KÍCH HOẠT | Huỷ/đặt lại tính năng lấy nét tự động Ống kính hiện đã khoá |
TẬP TRƯỚC_KHOÁ | AF_CANCEL | CHƯA KÍCH HOẠT | Huỷ/đặt lại tính năng lấy nét tự động |
TẬP TRƯỚC_KHOÁ | KÍCH HOẠT KÍCH HOẠT | ACTIVE_SCAN | Bắt đầu lượt quét mới Ống kính hiện đang di chuyển |
NOT_FOC bắn_LOCKED | AF_CANCEL | CHƯA KÍCH HOẠT | Huỷ/đặt lại tính năng lấy nét tự động |
NOT_FOC bắn_LOCKED | KÍCH HOẠT KÍCH HOẠT | ACTIVE_SCAN | Bắt đầu lượt quét mới Ống kính hiện đang di chuyển |
Tất cả các tiểu bang | Thay đổi chế độ | CHƯA KÍCH HOẠT |
chế độ = AF_MODE_CONTINUOUS_VIDEO | |||
---|---|---|---|
Trạng thái | Nguyên nhân biến đổi | Trạng thái mới | Ghi chú |
CHƯA KÍCH HOẠT | HAL bắt đầu lượt quét mới | PASSIVE_SCAN | Bắt đầu quét lấy nét tự động Ống kính hiện đang di chuyển |
CHƯA KÍCH HOẠT | KÍCH HOẠT KÍCH HOẠT | NOT_FOC bắn_LOCKED | Truy vấn trạng thái AF Ống kính hiện đã khoá |
PASSIVE_SCAN | HAL hoàn tất quá trình quét hiện tại | PASSIVE_FOCUSE (ĐÓNG CẢNH) | Kết thúc quét lấy nét tự động Ống kính hiện đã khoá |
PASSIVE_SCAN | KÍCH HOẠT KÍCH HOẠT | TẬP TRƯỚC_KHOÁ | Chuyển đổi tức thì nếu tiêu điểm tốt Ống kính hiện đã khoá |
PASSIVE_SCAN | KÍCH HOẠT KÍCH HOẠT | NOT_FOC bắn_LOCKED | Chuyển đổi tức thì nếu tiêu điểm kém Ống kính hiện đã khoá |
PASSIVE_SCAN | AF_CANCEL | CHƯA KÍCH HOẠT | Đặt lại vị trí ống kính Ống kính hiện đã khoá |
PASSIVE_FOCUSE (ĐÓNG CẢNH) | HAL bắt đầu lượt quét mới | PASSIVE_SCAN | Bắt đầu quét tự động Ống kính hiện đang di chuyển |
PASSIVE_FOCUSE (ĐÓNG CẢNH) | KÍCH HOẠT KÍCH HOẠT | TẬP TRƯỚC_KHOÁ | Chuyển đổi tức thì nếu tiêu điểm tốt Ống kính hiện đã khoá |
PASSIVE_FOCUSE (ĐÓNG CẢNH) | KÍCH HOẠT KÍCH HOẠT | NOT_FOC bắn_LOCKED | Chuyển đổi tức thì
nếu tiêu điểm kém
Ống kính hiện đã khoá |
TẬP TRƯỚC_KHOÁ | KÍCH HOẠT KÍCH HOẠT | TẬP TRƯỚC_KHOÁ | Không có hiệu ứng nào |
TẬP TRƯỚC_KHOÁ | AF_CANCEL | CHƯA KÍCH HOẠT | Khởi động lại quá trình quét AF |
NOT_FOC bắn_LOCKED | KÍCH HOẠT KÍCH HOẠT | NOT_FOC bắn_LOCKED | Không có hiệu ứng nào |
NOT_FOC bắn_LOCKED | AF_CANCEL | CHƯA KÍCH HOẠT | Khởi động lại quá trình quét AF |
chế độ = AF_MODE_CONTINUOUS_PICTURE | |||
---|---|---|---|
Trạng thái | Nguyên nhân biến đổi | Trạng thái mới | Ghi chú |
CHƯA KÍCH HOẠT | HAL bắt đầu lượt quét mới | PASSIVE_SCAN | Bắt đầu quét tự động Ống kính hiện đang di chuyển |
CHƯA KÍCH HOẠT | KÍCH HOẠT KÍCH HOẠT | NOT_FOC bắn_LOCKED | Truy vấn trạng thái AF Ống kính hiện đã khoá |
PASSIVE_SCAN | HAL hoàn tất quá trình quét hiện tại | PASSIVE_FOCUSE (ĐÓNG CẢNH) | Kết thúc quét lấy nét tự động
Ống kính hiện đã khoá |
PASSIVE_SCAN | KÍCH HOẠT KÍCH HOẠT | TẬP TRƯỚC_KHOÁ | Biến đổi cuối cùng khi tập trung tốt Ống kính hiện đã khoá |
PASSIVE_SCAN | KÍCH HOẠT KÍCH HOẠT | NOT_FOC bắn_LOCKED | Phép biến đổi cuối cùng nếu không thể lấy tiêu điểm Ống kính hiện đã khoá |
PASSIVE_SCAN | AF_CANCEL | CHƯA KÍCH HOẠT | Đặt lại vị trí ống kính Ống kính hiện đã khoá |
PASSIVE_FOCUSE (ĐÓNG CẢNH) | HAL bắt đầu lượt quét mới | PASSIVE_SCAN | Bắt đầu quét tự động Ống kính hiện đang di chuyển |
PASSIVE_FOCUSE (ĐÓNG CẢNH) | KÍCH HOẠT KÍCH HOẠT | FOCUSE_LOCKED (TỐT LỰC) | Chuyển đổi ngay lập tức nếu lấy tiêu điểm tốt Ống kính hiện đã khoá |
PASSIVE_FOCUSE (ĐÓNG CẢNH) | KÍCH HOẠT KÍCH HOẠT | NOT_FOC bắn_LOCKED | Chuyển đổi ngay lập tức nếu tiêu điểm không tốt Ống kính hiện đã khoá |
TẬP TRƯỚC_KHOÁ | KÍCH HOẠT KÍCH HOẠT | TẬP TRƯỚC_KHOÁ | Không có hiệu ứng nào |
TẬP TRƯỚC_KHOÁ | AF_CANCEL | CHƯA KÍCH HOẠT | Khởi động lại quá trình quét AF |
NOT_FOC bắn_LOCKED | KÍCH HOẠT KÍCH HOẠT | NOT_FOC bắn_LOCKED | Không có hiệu ứng nào |
NOT_FOC bắn_LOCKED | AF_CANCEL | CHƯA KÍCH HOẠT | Khởi động lại quá trình quét AF |
Máy trạng thái AE và AWB
Các máy trạng thái AE và AWB hầu như giống hệt nhau. AE có thêm Các trạng thái FLASH_REQUIRED và PRECAPTURE. Vì vậy, các hàng bên dưới đề cập đến hai điều đó nên bỏ qua các trạng thái đối với máy trạng thái AWB.
chế độ = AE_MODE_OFF / chế độ AWB không TỰ ĐỘNG | |||
---|---|---|---|
Trạng thái | Nguyên nhân biến đổi | Trạng thái mới | Ghi chú |
CHƯA KÍCH HOẠT | Đã tắt AE/AWB |
chế độ = AE_MODE_ON_* / AWB_MODE_auto | |||
---|---|---|---|
Trạng thái | Nguyên nhân biến đổi | Trạng thái mới | Ghi chú |
CHƯA KÍCH HOẠT | HAL bắt đầu quét AE/AWB | ĐANG TÌM KIẾM | |
CHƯA KÍCH HOẠT | AE/AWB_LOCK bật | ĐÃ KHOÁ | Đã khoá các giá trị |
ĐANG TÌM KIẾM | HAL hoàn tất quét AE/AWB | ĐÃ CHUYỂN ĐỔI | Giá trị tốt, không thay đổi |
ĐANG TÌM KIẾM | HAL hoàn tất quá trình quét AE | Hàm FLASH_REQUIRED | Hội tụ nhưng quá tối không có đèn flash |
ĐANG TÌM KIẾM | AE/AWB_LOCK bật | ĐÃ KHOÁ | Đã khoá các giá trị |
ĐÃ CHUYỂN ĐỔI | HAL bắt đầu quét AE/AWB | ĐANG TÌM KIẾM | Đã khoá các giá trị |
ĐÃ CHUYỂN ĐỔI | AE/AWB_LOCK bật | ĐÃ KHOÁ | Đã khoá các giá trị |
Hàm FLASH_REQUIRED | HAL bắt đầu quét AE/AWB | ĐANG TÌM KIẾM | Đã khoá các giá trị |
Hàm FLASH_REQUIRED | AE/AWB_LOCK bật | ĐÃ KHOÁ | Đã khoá các giá trị |
ĐÃ KHOÁ | Tắt AE/AWB_LOCK | ĐANG TÌM KIẾM | Giá trị không dùng được sau khi mở khoá |
ĐÃ KHOÁ | Tắt AE/AWB_LOCK | ĐÃ CHUYỂN ĐỔI | Có giá trị sau khi mở khoá |
ĐÃ KHOÁ | Tắt AE_LOCK | Hàm FLASH_REQUIRED | Phơi sáng tốt, nhưng quá tối |
Tất cả các trạng thái AE | PRECAPTURE_START | TRƯỚC | Bắt đầu trình tự chụp trước |
TRƯỚC | Đã hoàn tất trình tự, tắt AE_LOCK | ĐÃ CHUYỂN ĐỔI | Sẵn sàng để chụp ảnh chất lượng cao |
TRƯỚC | Trình tự đã hoàn tất, AE_LOCK bật | ĐÃ KHOÁ | Sẵn sàng để chụp ảnh chất lượng cao |
Bật chế độ kiểm soát thủ công
Một số chế độ điều khiển cũng tham gia định cấu hình các khối 3A của thiết bị để cho phép kiểm soát ứng dụng trực tiếp.
Mô hình HAL cho điều khiển 3A là đối với mỗi yêu cầu, HAL sẽ kiểm tra trạng thái của các trường điều khiển 3A. Nếu có bất kỳ quy trình 3A nào được bật, thì quy trình đó quy trình sẽ ghi đè các biến điều khiển có liên quan đến quy trình đó, và những giá trị ghi đè này sau đó có sẵn trong siêu dữ liệu kết quả cho chụp. Ví dụ: nếu tính năng tự động phơi sáng được bật trong một yêu cầu, HAL phải ghi đè các trường độ phơi sáng, mức tăng và thời lượng khung hình (và có thể là các trường flash, tuỳ thuộc vào chế độ AE) của yêu cầu. Chiến lược phát hành đĩa đơn danh sách các chế độ kiểm soát có liên quan là:
Tên chế độ kiểm soát | Đơn vị | Ghi chú |
---|---|---|
android.control.mode | enum: TẮT, TỰ ĐỘNG, USE_SCENE_MODE | Bộ điều khiển 3A cấp cao. Khi được đặt thành TẮT, tất cả 3A do HAL điều khiển tắt. Ứng dụng phải đặt các trường cho tham số thu thập . Khi bạn đặt thành TỰ ĐỘNG, từng thuật toán sẽ điều khiển trong android.control.* có hiệu lực, chẳng hạn như android.control.afMode. Khi bạn đặt thành USE_SCENE_MODE, các chế độ điều khiển riêng lẻ trong android.control.* hầu hết đều bị tắt và HAL (Lớp trừu tượng phần cứng) triển khai một trong các chế độ cảnh cài đặt (chẳng hạn như ACTION, SUNSET hoặc PARTY) theo ý muốn. |
android.control.afMode | enum | TẮT có nghĩa là điều khiển ống kính thủ công lấy nét thông qua android.lens.focusDistance. |
android.control.aeMode | enum | TẮT nghĩa là tự kiểm soát độ phơi sáng/tăng/thời lượng khung hình thông qua android.sensor.exposurTime / .sensitivity / .frameDuration |
android.control.awbMode | enum | TẮT nghĩa là kiểm soát cân bằng trắng theo cách thủ công. |