Mặc dù các thuật toán 3A thực tế tùy thuộc vào việc triển khai HAL, nhưng mô tả máy trạng thái cấp cao được xác định bởi giao diện HAL để cho phép thiết bị HAL và khung giao tiếp 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ị được mở, tất cả các trạng thái 3A riêng lẻ phải là STATE_INACTIVE. Cấu hình luồng không đặt lại 3A. Ví dụ: tiêu điểm bị khóa phải được duy trì trong lệnh gọi configure()
.
Kích hoạt hành động 3A chỉ cần đặt mục nhập kích hoạt có liên quan trong cài đặt cho yêu cầu tiếp theo để cho biết thời điểm bắt đầu kích hoạt. Ví dụ: trình kích hoạt để bắt đầu quét lấy nét tự động 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à việc hủy quét lấy nét tự động được kích hoạt bằng cách đặt ANDROID_Control_AF_TRIGGER thành ANDROID_CONTRL_AF_TRIGGER_CANCEL. Nếu không, mục nhập sẽ không tồn tại hoặc được đặt thành ANDROID_Control_AF_TRIGGER_IDLE. Mỗi yêu cầu có mục nhập kích hoạt được đặt thành giá trị không IDLE sẽ được coi là một sự kiện kích hoạt độc lập.
Ở cấp cao nhất, 3A được điều khiển bởi cài đặt ANDROID_Control_MODE. Nó chọn giữa không có 3A (ANDROID_Control_MODE_OFF), chế độ AUTO bình thường (ANDROID_Control_MODE_AUTO) và sử dụng cài đặt chế độ cảnh (ANDROID_Control_USE_SCENE_MODE):
- Ở chế độ TẮT, mỗi chế độ tự động lấy nét (AF), phơi sáng tự động (AE) và cân bằng trắng tự động (AWB) riêng lẻ đều TẮT một cách hiệu quả và không có điều khiển chụp nào có thể bị ghi đè bởi quy trình 3A.
- Ở chế độ TỰ ĐỘNG, các chế độ AF, AE và AWB đều chạy các thuật toán độc lập của riêng chúng và có các mục nhập siêu dữ liệu chế độ, trạng thái và kích hoạt riêng, như được liệt kê 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 sử dụng để xác định hành vi của quy trình 3A. Trong các SCENE_MODE không phải FACE_PRIORITY, HAL phải ghi đè các giá trị ANDROID_Control_AE/AWB/AF_MODE để trở thành chế độ mà nó ưu tiên cho SCENE_MODE đã chọn. Ví dụ: HAL có thể ưu tiên SCENE_MODE_NIGHT sử dụng chế độ CONTINUOUS_FOCUS AF. Bất kỳ lựa chọn nào của người dùng về AE/AWB/AF_MODE khi cảnh phải được bỏ qua đối với các chế độ cảnh này.
- Đối với SCENE_MODE_FACE_PRIORITY, các điều khiển AE/AWB/AFMODE hoạt động như trong ANDROID_Control_MODE_AUTO, nhưng quy trình 3A phải thiên về đo sáng và lấy nét vào bất kỳ khuôn mặt nào được phát hiện trong cảnh.
Cài đặt lấy nét tự động và mục kết quả
Các mục siêu dữ liệu chính | |
---|---|
ANDROID_Control_AF_MODE | Điều khiển để chọn chế độ lấy nét tự động hiện tại. Đặt theo khung trong cài đặt yêu cầu. |
AF_MODE_OFF | AF bị tắt; khung/ứng dụng trực tiếp điều khiển vị trí ống kính. |
AF_MODE_AUTO | Lấy nét tự động quét đơn. Không có chuyển động của ống kính trừ khi AF được kích hoạt. |
AF_MODE_MACRO | Lấy nét tự động quét cận cảnh một lần. Không có chuyển động của ống kính trừ khi AF được kích hoạ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 sẽ khóa tiêu điểm ở vị trí hiện tại. Việc hủy sẽ tiếp tục lấy nét liên tục. |
AF_MODE_CONTINUOUS_PICTURE | Lấy nét liên tục nhanh, để chụp ảnh không có độ trễ màn trập. Kích hoạt khóa tiêu điểm sau khi quá trình quét hiện đang hoạt động kết thúc. Việc hủy sẽ tiếp tục lấy nét liên tục. |
AF_MODE_EDOF | Lấy nét độ sâu trường mở rộng nâng cao. Không có tính năng quét lấy nét tự động nên việc kích hoạt hoặc hủy một tính năng không có tác dụng. Hình ảnh được lấy nét tự động bởi HAL. |
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 HAL báo cáo trong siêu dữ liệu kết quả. |
AF_STATE_INACTIVE | Chưa lấy nét được hoặc thuật toán đã được đặt lại. Ống kính không di chuyển. Luôn là trạng thái cho MODE_OFF hoặc MODE_EDOF. Khi thiết bị được mở, nó phải khởi động ở trạng thái này. |
AF_STATE_PASSIVE_SCAN | Một 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 chuyển động. |
AF_STATE_PASSIVE_FOCUSED | Thuật toán lấy nét liên tục tin rằng nó được lấy nét tốt. Ống kính không chuyển động. HAL có thể tự động rời khỏi trạng thái này. |
AF_STATE_PASSIVE_UNFOCUSED | Thuật toán lấy nét liên tục cho rằng nó không được lấy nét tốt. Ống kính không chuyển động. HAL có thể tự động rời 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 được tiến hành. |
AF_STATE_FOCUSED_LOCKED | Thuật toán AF tin rằng nó đã được lấy nét. Ống kính không chuyển động. |
AF_STATE_NOT_FOCUSED_LOCKED | Thuật toán AF không thể lấy nét. Ống kính không chuyển động. |
ANDROID_Control_AF_TRIGGER | Kiểm soát để bắt đầu quét lấy nét tự động, ý nghĩa của việc này phụ thuộc vào chế độ và trạng thái. Đặt theo khung trong cài đặt yêu cầu. |
AF_TRIGGER_IDLE | Không có kích hoạt hiện tại. |
AF_TRIGGER_START | Kích hoạt bắt đầu quét AF. Hiệu ứng phụ thuộc vào chế độ và trạng thái. |
AF_TRIGGER_CANCEL | Hủy quá trình quét AF hiện tại nếu có và đặt lại thuật toán về mặc định. |
Các mục siêu dữ liệu bổ sung | |
---|---|
ANDROID_Control_AF_REGIONS | Kiểm soát việc chọn các vùng của trường nhìn (FOV) cần được sử dụng để xác định tiêu điểm tốt. Điều này áp dụng cho tất cả các chế độ AF quét lấy nét. Đặt theo khung trong cài đặt yêu cầu. |
Cài đặt phơi sáng tự động và mục kết quả
Các mục siêu dữ liệu chính | |
---|---|
ANDROID_Control_AE_MODE | Điều khiển để chọn chế độ phơi sáng tự động hiện tại. Đặt theo khung trong cài đặt yêu cầu. |
AE_MODE_OFF | 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, thời lượng khung hình và đèn flash. |
AE_MODE_ON | Tự động phơi sáng tiêu chuẩn, tắt điều khiển đèn flash. Người dùng có thể đặt đèn flash ở chế độ bật sáng hoặc ở chế độ đèn pin. |
AE_MODE_ON_AUTO_FLASH | Phơi sáng tự động tiêu chuẩn, có bật đèn flash theo quyết định của HAL để chụp trước và chụp ảnh tĩnh. Kiểm soát người dùng của đèn flash bị vô hiệu hóa. |
AE_MODE_ON_ALWAYS_FLASH | Phơi sáng tự động tiêu chuẩn, với đèn flash luôn bật để chụp và theo quyết định của HAL để chụp trước. Kiểm soát người dùng của đèn flash bị vô hiệu hóa. |
AE_MODE_ON_AUTO_FLASH_REDEYE | Phơi sáng tự động tiêu chuẩn, có bật đèn flash theo quyết định của HAL để chụp trước và chụp ảnh tĩnh. Sử dụng đèn nháy liên tục ở cuối chuỗi chụp trước để giảm hiện tượng mắt đỏ trong bức ảnh cuối cùng. Kiểm soát người dùng của đèn flash bị vô hiệu hóa. |
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 HAL báo cáo trong siêu dữ liệu kết quả. |
AE_STATE_INACTIVE | Trạng thái AE ban đầu sau khi chuyển đổi chế độ. Khi thiết bị được mở, nó phải khởi động ở trạng thái này. |
AE_STATE_SEARCHING | AE chưa hội tụ về giá trị tốt và đang điều chỉnh các thông số phơi sáng. |
AE_STATE_CONVERGED | AE đã tìm thấy các 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 không thay đổi. HAL có thể tự động rời khỏi trạng thái này để tìm kiếm giải pháp tốt hơn. |
AE_STATE_LOCKED | AE đã bị khóa bằng điều khiển AE_LOCK. Giá trị phơi sáng không thay đổi. |
AE_STATE_FLASH_REQUIRED | HAL có độ phơi sáng hội tụ nhưng tin rằng cần có đèn flash để có được bức ảnh đủ sáng. Được sử dụng để xác định xem có thể sử dụng khung có độ trễ màn trập bằng 0 hay không. |
AE_STATE_PRECAPTURE | HAL đang ở giữa trình tự bắt trước. Tùy thuộc vào chế độ AE, chế độ này có thể liên quan đến việc đánh đèn flash để đo sáng hoặc phát xung đèn flash để giảm mắt đỏ. |
ANDROID_Control_AE_PRECAPTURE_TRIGGER | Điều khiển để bắt đầu trình tự đo sáng trước khi chụp ảnh chất lượng cao. Đặt theo khung trong cài đặt yêu cầu. |
PRECAPTURE_TRIGGER_IDLE | Không có kích hoạt hiện tại. |
PRECAPTURE_TRIGGER_START | Bắt đầu trình tự bắt trước. HAL nên sử dụng các yêu cầu tiếp theo để đo độ phơi sáng/cân bằng trắng tốt cho lần chụp có độ phân giải cao sắp tới. |
Các mục siêu dữ liệu bổ sung | |
---|---|
ANDROID_Control_AE_LOCK | Điều khiển để khóa các điều khiển AE theo giá trị hiện tại của chúng. |
ANDROID_Control_AE_EXPOSURE_COMPENSATION | Kiểm soát để điều chỉnh điểm sáng mục tiêu của 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 nằm ngoài các giới hạn này. |
ANDROID_Control_AE_REGIONS | Kiểm soát việc chọn các vùng của FOV cần được sử dụng để xác định mức độ phơi sáng tốt. Điều này áp dụng cho tất cả các chế độ AE ngoại trừ TẮT. |
Cài đặt cân bằng trắng tự động và mục nhập kết quả
Các mục siêu dữ liệu chính | |
---|---|
ANDROID_Control_AWB_MODE | Điều khiển để chọn chế độ cân bằng trắng hiện tại. |
AWB_MODE_OFF | Tự động cân bằng trắng bị tắt. Người dùng điều khiển ma trận màu. |
AWB_MODE_AUTO | Cân bằng trắng tự động được bật; 3A điều khiển việc biến đổi màu sắc, có thể sử dụng các phép biến đổi phức tạp hơn ma trận đơn giản. |
AWB_MODE_INCANDESCENT | Đã sửa lỗi cài đặt cân bằng trắng phù hợp với ánh sáng sợi đốt (vonfram) trong nhà, khoảng 2700K. |
AWB_MODE_FLUORESCENT | Đã sửa lỗi cài đặt cân bằng trắng phù hợp với ánh sáng huỳnh quang, khoảng 5000K. |
AWB_MODE_WARM_FLUORESCENT | Đã sửa lỗi cài đặt cân bằng trắng phù hợp với ánh sáng huỳnh quang, khoảng 3000K. |
AWB_MODE_DAYLIGHT | Đã sửa lỗi cài đặt cân bằng trắng phù hợp với ánh sáng ban ngày, khoảng 5500K. |
AWB_MODE_CLOUDY_DAYLIGHT | Đã sửa lỗi cài đặt cân bằng trắng phù hợp với ánh sáng ban ngày có mây, khoảng 6500K. |
AWB_MODE_TWILIGHT | Đã sửa lỗi cài đặt cân bằng trắng phù hợp cho lúc gần hoàng hôn/bình minh, khoảng 15000K. |
AWB_MODE_SHADE | Đã sửa lỗi cài đặt cân bằng trắng tốt cho các khu vực được chiếu sáng gián tiếp bởi mặt trời, khoảng 7500K. |
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 HAL báo cáo 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 thiết bị được mở, nó phải khởi động ở trạng thái này. |
AWB_STATE_SEARCHING | AWB không được hội tụ về giá trị tốt và đang thay đổi các thông số điều chỉnh màu sắc. |
AWB_STATE_CONVERGED | AWB đã tìm thấy các giá trị điều chỉnh màu sắc phù hợp cho cảnh hiện tại và các thông số không thay đổi. HAL có thể tự động rời khỏi trạng thái này để tìm kiếm giải pháp tốt hơn. |
AWB_STATE_LOCKED | AWB đã bị khóa bằng điều khiển AWB_LOCK. Giá trị điều chỉnh màu không thay đổi. |
Các mục siêu dữ liệu bổ sung | |
---|---|
ANDROID_Control_AWB_LOCK | Kiểm soát việc khóa điều chỉnh màu AWB theo giá trị hiện tại của chúng. |
ANDROID_Control_AWB_REGIONS | Kiểm soát việc chọn các vùng của FOV cần được sử dụng để xác định độ cân bằng màu tốt. Điều này chỉ áp dụng cho chế độ cân bằng trắng tự động. |
Ghi chú chuyển đổi máy trạng thái chung
Việc chuyển đổi giữa các 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ự, việc chuyển đổi giữa Control_MODE hoặc Control_SCENE_MODE nếu Control_MODE == USE_SCENE_MODE sẽ đặ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 mỗi chế độ.
Máy trạng thái AF
chế độ = AF_MODE_OFF hoặc AF_MODE_EDOF | |||
---|---|---|---|
Tình trạng | Nguyên nhân chuyển hóa | Tiểu bang mới | Ghi chú |
KHÔNG HOẠT ĐỘNG | AF bị tắt |
chế độ = AF_MODE_AUTO hoặc AF_MODE_MACRO | |||
---|---|---|---|
Tình trạng | Nguyên nhân chuyển hóa | Tiểu bang mới | Ghi chú |
KHÔNG HOẠT ĐỘNG | AF_TRIGGER | ACTIVE_SCAN | Bắt đầu quét AF Ống kính đang di chuyển |
ACTIVE_SCAN | Đã quét AF xong | FOCUSED_LOCKED | Nếu AF thành công Ống kính hiện đã bị khóa |
ACTIVE_SCAN | Đã quét AF xong | KHÔNG_FOCUSED_LOCKED | Nếu AF thành công Ống kính hiện đã bị khóa |
ACTIVE_SCAN | AF_CANCEL | KHÔNG HOẠT ĐỘNG | Hủy/đặt lại AF Ống kính hiện đã bị khóa |
FOCUSED_LOCKED | AF_CANCEL | KHÔNG HOẠT ĐỘNG | Hủy/đặt lại AF |
FOCUSED_LOCKED | AF_TRIGGER | ACTIVE_SCAN | Bắt đầu đợt quét mới Ống kính đang di chuyển |
KHÔNG_FOCUSED_LOCKED | AF_CANCEL | KHÔNG HOẠT ĐỘNG | Hủy/đặt lại AF |
KHÔNG_FOCUSED_LOCKED | AF_TRIGGER | ACTIVE_SCAN | Bắt đầu đợt quét mới Ống kính đang di chuyển |
Tất cả các tiểu bang | Thay đổi chế độ | KHÔNG HOẠT ĐỘNG |
chế độ = AF_MODE_CONTINUOUS_VIDEO | |||
---|---|---|---|
Tình trạng | Nguyên nhân chuyển hóa | Tiểu bang mới | Ghi chú |
KHÔNG HOẠT ĐỘNG | HAL bắt đầu quá trình quét mới | THỤ ĐỘNG_QUÉT | Bắt đầu quét AF Ống kính đang di chuyển |
KHÔNG HOẠT ĐỘNG | AF_TRIGGER | KHÔNG_FOCUSED_LOCKED | Truy vấn trạng thái AF Ống kính hiện đã bị khóa |
THỤ ĐỘNG_QUÉT | HAL hoàn tất quá trình quét hiện tại | THỤ ĐỘNG_FOCUSED | Kết thúc quét AF Ống kính hiện đã bị khóa |
THỤ ĐỘNG_QUÉT | AF_TRIGGER | FOCUSED_LOCKED | Chuyển đổi ngay lập tức nếu lấy nét tốt Ống kính hiện đã bị khóa |
THỤ ĐỘNG_QUÉT | AF_TRIGGER | KHÔNG_FOCUSED_LOCKED | Chuyển đổi ngay lập tức nếu lấy nét kém Ống kính hiện đã bị khóa |
THỤ ĐỘNG_QUÉT | AF_CANCEL | KHÔNG HOẠT ĐỘNG | Đặt lại vị trí ống kính Ống kính hiện đã bị khóa |
THỤ ĐỘNG_FOCUSED | HAL bắt đầu quá trình quét mới | THỤ ĐỘNG_QUÉT | Bắt đầu quét AF Ống kính đang di chuyển |
THỤ ĐỘNG_FOCUSED | AF_TRIGGER | FOCUSED_LOCKED | Chuyển đổi ngay lập tức nếu lấy nét tốt Ống kính hiện đã bị khóa |
THỤ ĐỘNG_FOCUSED | AF_TRIGGER | KHÔNG_FOCUSED_LOCKED | Chuyển đổi ngay lập tức nếu lấy nét kém Ống kính hiện đã bị khóa |
FOCUSED_LOCKED | AF_TRIGGER | FOCUSED_LOCKED | Không có hiệu lực |
FOCUSED_LOCKED | AF_CANCEL | KHÔNG HOẠT ĐỘNG | Khởi động lại quá trình quét AF |
KHÔNG_FOCUSED_LOCKED | AF_TRIGGER | KHÔNG_FOCUSED_LOCKED | Không có hiệu lực |
KHÔNG_FOCUSED_LOCKED | AF_CANCEL | KHÔNG HOẠT ĐỘNG | Khởi động lại quá trình quét AF |
chế độ = AF_MODE_CONTINUOUS_PICTURE | |||
---|---|---|---|
Tình trạng | Nguyên nhân chuyển hóa | Tiểu bang mới | Ghi chú |
KHÔNG HOẠT ĐỘNG | HAL bắt đầu quá trình quét mới | THỤ ĐỘNG_QUÉT | Bắt đầu quét AF Ống kính đang di chuyển |
KHÔNG HOẠT ĐỘNG | AF_TRIGGER | KHÔNG_FOCUSED_LOCKED | Truy vấn trạng thái AF Ống kính hiện đã bị khóa |
THỤ ĐỘNG_QUÉT | HAL hoàn tất quá trình quét hiện tại | THỤ ĐỘNG_FOCUSED | Kết thúc quét AF Ống kính hiện đã bị khóa |
THỤ ĐỘNG_QUÉT | AF_TRIGGER | FOCUSED_LOCKED | Chuyển đổi cuối cùng một khi tập trung tốt Ống kính hiện đã bị khóa |
THỤ ĐỘNG_QUÉT | AF_TRIGGER | KHÔNG_FOCUSED_LOCKED | Chuyển đổi cuối cùng nếu không thể tập trung Ống kính hiện đã bị khóa |
THỤ ĐỘNG_QUÉT | AF_CANCEL | KHÔNG HOẠT ĐỘNG | Đặt lại vị trí ống kính Ống kính hiện đã bị khóa |
THỤ ĐỘNG_FOCUSED | HAL bắt đầu quá trình quét mới | THỤ ĐỘNG_QUÉT | Bắt đầu quét AF Ống kính đang di chuyển |
THỤ ĐỘNG_FOCUSED | AF_TRIGGER | FOCUSED_LOCKED | Chuyển đổi ngay lập tức nếu lấy nét tốt Ống kính hiện đã bị khóa |
THỤ ĐỘNG_FOCUSED | AF_TRIGGER | KHÔNG_FOCUSED_LOCKED | Chuyển đổi ngay lập tức nếu lấy nét kém Ống kính hiện đã bị khóa |
FOCUSED_LOCKED | AF_TRIGGER | FOCUSED_LOCKED | Không có hiệu lực |
FOCUSED_LOCKED | AF_CANCEL | KHÔNG HOẠT ĐỘNG | Khởi động lại quá trình quét AF |
KHÔNG_FOCUSED_LOCKED | AF_TRIGGER | KHÔNG_FOCUSED_LOCKED | Không có hiệu lực |
KHÔNG_FOCUSED_LOCKED | AF_CANCEL | KHÔNG HOẠT ĐỘNG | Khởi động lại quá trình quét AF |
Máy trạng thái AE và AWB
Máy trạng thái AE và AWB hầu hết giống hệt nhau. AE có thêm trạng thái FLASH_REQUIRED và PRECAPTURE. Vì vậy, các hàng bên dưới đề cập đến hai trạng thái đó sẽ bị bỏ qua đối với máy trạng thái AWB.
chế độ = AE_MODE_OFF / Chế độ AWB không TỰ ĐỘNG | |||
---|---|---|---|
Tình trạng | Nguyên nhân chuyển hóa | Tiểu bang mới | Ghi chú |
KHÔNG HOẠT ĐỘNG | Đã tắt AE/AWB |
chế độ = AE_MODE_ON_* / AWB_MODE_AUTO | |||
---|---|---|---|
Tình trạng | Nguyên nhân chuyển hóa | Tiểu bang mới | Ghi chú |
KHÔNG HOẠT ĐỘNG | HAL bắt đầu quét AE/AWB | ĐANG TÌM KIẾM | |
KHÔNG HOẠT ĐỘNG | Bật AE/AWB_LOCK | ĐÃ KHÓA | Giá trị bị khóa |
ĐANG TÌM KIẾM | HAL hoàn tất quá trình quét AE/AWB | ĐÃ HỘI TỤC | Giá trị tốt, không thay đổi |
ĐANG TÌM KIẾM | HAL kết thúc quá trình quét AE | FLASH_REQUIRED | Hội tụ nhưng quá tối vì không có đèn flash |
ĐANG TÌM KIẾM | Bật AE/AWB_LOCK | ĐÃ KHÓA | Giá trị bị khóa |
ĐÃ HỘI TỤC | HAL bắt đầu quét AE/AWB | ĐANG TÌM KIẾM | Giá trị bị khóa |
ĐÃ HỘI TỤC | Bật AE/AWB_LOCK | ĐÃ KHÓA | Giá trị bị khóa |
FLASH_REQUIRED | HAL bắt đầu quét AE/AWB | ĐANG TÌM KIẾM | Giá trị bị khóa |
FLASH_REQUIRED | Bật AE/AWB_LOCK | ĐÃ KHÓA | Giá trị bị khóa |
ĐÃ KHÓA | Tắt AE/AWB_LOCK | ĐANG TÌM KIẾM | Giá trị không tốt sau khi mở khóa |
ĐÃ KHÓA | Tắt AE/AWB_LOCK | ĐÃ HỘI TỤC | Giá trị tốt sau khi mở khóa |
ĐÃ KHÓA | Tắt AE_LOCK | 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 | CHỤP TRƯỚC | Bắt đầu trình tự chụp trước |
CHỤP TRƯỚC | Trình tự đã hoàn tất, tắt AE_LOCK | ĐÃ HỘI TỤC | Sẵn sàng để chụp ảnh chất lượng cao |
CHỤP TRƯỚC | Trình tự đã hoàn tất, bật AE_LOCK | ĐÃ KHÓA | Sẵn sàng để chụp ảnh chất lượng cao |
Kích hoạt điều khiển thủ công
Một số điều khiển cũng liên quan đến việc định cấu hình khối 3A của thiết bị để cho phép điều khiển ứ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 bất kỳ quy trình 3A nào được bật thì quy trình đó sẽ ghi đè các biến kiểm soát liên quan đến quy trình đó và khi đó các giá trị ghi đè này sẽ có sẵn trong siêu dữ liệu kết quả cho bản ghi đó. Vì vậy, ví dụ: nếu bật tự động phơi sáng trong một yêu cầu, HAL sẽ ghi đè các trường phơi sáng, mức tăng và thời lượng khung hình (và có thể cả các trường flash, tùy thuộc vào chế độ AE) của yêu cầu. Danh sách các biện pháp kiểm soát có liên quan là:
Tên điều khiển | Đơn vị | Ghi chú |
---|---|---|
android.control.mode | enum: TẮT, TỰ ĐỘNG, USE_SCENE_MODE | Kiểm soát 3A cấp cao. Khi được đặt thành TẮT, tất cả điều khiển 3A của HAL sẽ bị tắt. Ứng dụng phải đặt các trường cho chính các tham số chụp. Khi được đặt thành AUTO, các điều khiển thuật toán riêng lẻ trong android.control.* sẽ có hiệu lực, chẳng hạn như android.control.afMode. Khi được đặt thành USE_SCENE_MODE, các điều khiển riêng lẻ trong android.control.* hầu hết bị tắt và HAL thực hiện một trong các cài đặt chế độ cảnh (chẳng hạn như HÀNH ĐỘNG, SUNSET hoặc BÊN) theo ý muốn. |
android.control.afMode | liệt kê | TẮT nghĩa là điều khiển lấy nét ống kính theo cách thủ công thông qua android.lens.focusDistance. |
android.control.aeMode | liệt kê | TẮT có nghĩa là điều khiển thủ công độ phơi sáng/tăng/thời lượng khung hình thông qua android.sensor.exposureTime / .sensitiveness / .frameDuration |
android.control.awbMode | liệt kê | TẮT có nghĩa là điều khiển cân bằng trắng bằng tay. |