Chociaż rzeczywiste algorytmy 3A zależą od implementacji HAL, interfejs HAL definiuje opis maszyny stanu wysokiego poziomu, aby umożliwić urządzeniu HAL i strukturze komunikację na temat bieżącego stanu 3A i wyzwalanie zdarzeń 3A.
Kiedy urządzenie jest otwarte, wszystkie indywidualne stany 3A muszą być STATE_INACTIVE. Konfiguracja strumienia nie resetuje 3A. Na przykład zablokowane skupienie musi być utrzymywane w całym wywołaniu configure()
.
Wyzwolenie akcji 3A polega po prostu na ustawieniu odpowiedniego wpisu wyzwalacza w ustawieniach dla następnego żądania, aby wskazać początek wyzwalania. Na przykład wyzwalaczem rozpoczęcia skanowania autofokusa jest ustawienie wpisu ANDROID_Control_AF_TRIGGER na ANDROID_Control_AF_TRIGGER_START dla jednego żądania; a anulowanie skanowania autofokusa jest wyzwalane przez ustawienie ANDROID_Control_AF_TRIGGER na ANDROID_CONTRL_AF_TRIGGER_CANCEL. W przeciwnym razie wpis nie będzie istniał lub będzie ustawiony na ANDROID_Control_AF_TRIGGER_IDLE. Każde żądanie z wpisem wyzwalającym ustawionym na wartość inną niż IDLE będzie traktowane jako niezależne zdarzenie wyzwalające.
Na najwyższym poziomie 3A jest kontrolowane przez ustawienie ANDROID_Control_MODE. Wybiera pomiędzy brakiem 3A (ANDROID_Control_MODE_OFF), normalnym trybem AUTO (ANDROID_Control_MODE_AUTO) i użyciem ustawienia trybu sceny (ANDROID_Control_USE_SCENE_MODE):
- W trybie WYŁ. każdy z trybów automatycznego ustawiania ostrości (AF), automatycznej ekspozycji (AE) i automatycznego balansu bieli (AWB) jest faktycznie WYŁĄCZONY i żadna z kontroli przechwytywania nie może zostać zastąpiona przez procedury 3A.
- W trybie AUTO tryby AF, AE i AWB działają według własnych, niezależnych algorytmów i mają własne wpisy metadanych dotyczących trybu, stanu i wyzwalacza, jak opisano w następnej sekcji.
- W USE_SCENE_MODE wartość wpisu ANDROID_Control_SCENE_MODE musi zostać użyta do określenia zachowania procedur 3A. W trybach SCENE_MODE innych niż FACE_PRIORITY warstwa HAL musi zastąpić wartości ANDROID_Control_AE/AWB/AF_MODE, aby był to preferowany tryb dla wybranego SCENE_MODE. Na przykład warstwa HAL może preferować tryb SCENE_MODE_NIGHT, aby używać trybu AF CONTINUOUS_FOCUS. Każdy wybór użytkownika AE/AWB/AF_MODE w przypadku sceny musi zostać zignorowany w przypadku tych trybów sceny.
- W przypadku SCENE_MODE_FACE_PRIORITY elementy sterujące AE/AWB/AFMODE działają jak w ANDROID_Control_MODE_AUTO, ale procedury 3A muszą być nastawione na pomiar i skupianie się na wszelkich wykrytych twarzach w scenie.
Ustawienia automatycznego ustawiania ostrości i wpisy wyników
Główne wpisy metadanych | |
---|---|
ANDROID_Control_AF_MODE | Sterowanie wyborem bieżącego trybu autofokusa. Ustawiane przez strukturę w ustawieniach żądania. |
AF_MODE_OFF | AF jest wyłączony; framework/aplikacja bezpośrednio kontroluje położenie obiektywu. |
AF_MODE_AUTO | Pojedynczy autofokus. Brak ruchu obiektywu, chyba że zostanie uruchomiony AF. |
AF_MODE_MACRO | Pojedynczy autofokus z bliska. Brak ruchu obiektywu, chyba że zostanie uruchomiony AF |
AF_MODE_CONTINUOUS_VIDEO | Płynne, ciągłe ustawianie ostrości, do nagrywania wideo. Wyzwolenie natychmiast blokuje skupienie w bieżącej pozycji. Anulowanie powoduje wznowienie ciągłego ustawiania ostrości. |
AF_MODE_CONTINUOUS_PICTURE | Szybkie, ciągłe ustawianie ostrości umożliwiające robienie zdjęć bez opóźnienia migawki. Wyzwolenie blokuje ostrość po zakończeniu aktualnie aktywnego przemiatania. Anulowanie powoduje wznowienie ciągłego ustawiania ostrości. |
AF_MODE_EDOF | Zaawansowane ustawianie ostrości z rozszerzoną głębią ostrości. Nie ma skanowania autofokusa, więc jego włączenie lub anulowanie nie przynosi żadnego efektu. Obrazy są ustawiane automatycznie przez HAL. |
ANDROID_Control_AF_STATE | Dynamiczne metadane opisujące bieżący stan algorytmu AF, raportowane przez HAL w metadanych wynikowych. |
AF_STATE_INACTIVE | Nie ustawiono ostrości lub algorytm został zresetowany. Obiektyw nie porusza się. Zawsze stan MODE_OFF lub MODE_EDOF. Kiedy urządzenie jest otwarte, musi uruchomić się w tym stanie. |
AF_STATE_PASSIVE_SCAN | Algorytm ciągłego ustawiania ostrości skanuje obecnie dobrą ostrość. Obiektyw się porusza. |
AF_STATE_PASSIVE_FOCUSED | Algorytm ciągłego ustawiania ostrości uważa, że jest dobrze skupiony. Obiektyw się nie porusza. HAL może spontanicznie opuścić ten stan. |
AF_STATE_PASSIVE_UNFOCUSED | Algorytm ciągłego ustawiania ostrości uważa, że nie jest dobrze skupiony. Obiektyw się nie porusza. HAL może spontanicznie opuścić ten stan. |
AF_STATE_ACTIVE_SCAN | Trwa skanowanie inicjowane przez użytkownika. |
AF_STATE_FOCUSED_LOCKED | Algorytm AF uważa, że jest skupiony. Obiektyw się nie porusza. |
AF_STATE_NOT_FOCUSED_LOCKED | Algorytm AF nie mógł ustawić ostrości. Obiektyw się nie porusza. |
ANDROID_Control_AF_TRIGGER | Sterowanie uruchomieniem skanowania autofokusa, którego znaczenie zależy od trybu i stanu. Ustawiane przez strukturę w ustawieniach żądania. |
AF_TRIGGER_IDLE | Brak aktualnego wyzwalacza. |
AF_TRIGGER_START | Wyzwolenie rozpoczęcia skanowania AF. Efekt zależy od trybu i stanu. |
AF_TRIGGER_CANCEL | Anuluj bieżące skanowanie AF, jeśli takie istnieje, i zresetuj algorytm do ustawień domyślnych. |
Dodatkowe wpisy metadanych | |
---|---|
ANDROID_Control_AF_REGIONS | Sterowanie wyborem obszarów pola widzenia (FOV), które powinny być użyte do określenia dobrej ostrości. Dotyczy to wszystkich trybów AF, które skanują w celu uzyskania ostrości. Ustawiane przez strukturę w ustawieniach żądania. |
Ustawienia automatycznej ekspozycji i wpisy wyników
Główne wpisy metadanych | |
---|---|
ANDROID_Control_AE_MODE | Sterowanie wyborem bieżącego trybu automatycznej ekspozycji. Ustawiane przez strukturę w ustawieniach żądania. |
AE_MODE_OFF | Automatyczna ekspozycja jest wyłączona; użytkownik kontroluje ekspozycję, wzmocnienie, czas trwania klatki i lampę błyskową. |
AE_MODE_ON | Standardowa automatyczna ekspozycja z wyłączonym sterowaniem lampą błyskową. Użytkownik może ustawić lampę błyskową na tryb błysku lub latarki. |
AE_MODE_ON_AUTO_FLASH | Standardowa automatyczna ekspozycja z lampą błyskową włączoną według uznania HAL w celu wykonania wstępnego i nieruchomego zdjęcia. Kontrola użytkownika nad lampą błyskową wyłączona. |
AE_MODE_ON_ALWAYS_FLASH | Standardowa automatyczna ekspozycja z lampą błyskową zawsze uruchamianą w celu zrobienia zdjęcia i według uznania HAL w przypadku wstępnego zdjęcia. Kontrola użytkownika nad lampą błyskową wyłączona. |
AE_MODE_ON_AUTO_FLASH_REDEYE | Standardowa automatyczna ekspozycja z lampą błyskową włączoną według uznania HAL w celu wykonania wstępnego i nieruchomego zdjęcia. Użyj serii błysku na końcu sekwencji przed wykonaniem zdjęcia, aby zredukować efekt czerwonych oczu na ostatecznym zdjęciu. Kontrola użytkownika nad lampą błyskową wyłączona. |
ANDROID_Control_AE_STATE | Dynamiczne metadane opisujące bieżący stan algorytmu AE, raportowane przez HAL w metadanych wynikowych. |
AE_STATE_INACTIVE | Początkowy stan AE po przełączeniu trybu. Kiedy urządzenie jest otwarte, musi uruchomić się w tym stanie. |
AE_STATE_SEARCHING | AE nie jest zbieżna do dobrej wartości i dostosowuje parametry ekspozycji. |
AE_STATE_CONVERGED | AE znalazła dobre wartości ekspozycji dla bieżącej sceny, a parametry ekspozycji się nie zmieniają. HAL może spontanicznie opuścić ten stan w celu poszukiwania lepszego rozwiązania. |
AE_STATE_LOCKED | AE zostało zablokowane za pomocą kontrolki AE_LOCK. Wartości ekspozycji nie ulegają zmianie. |
AE_STATE_FLASH_REQUIRED | HAL ustalił ekspozycję zbieżną, ale uważa, że do uzyskania wystarczająco jasnego zdjęcia wymagana jest lampa błyskowa. Służy do określania, czy można zastosować ramkę o zerowym opóźnieniu migawki. |
AE_STATE_PRECAPTURE | HAL jest w trakcie sekwencji poprzedzającej przechwycenie. W zależności od trybu AE, tryb ten może obejmować wyzwolenie błysku w celu pomiaru światła lub serię impulsów błyskowych w celu redukcji efektu czerwonych oczu. |
ANDROID_Control_AE_PRECAPTURE_TRIGGER | Sterowanie umożliwiające rozpoczęcie sekwencji pomiaru przed wykonaniem zdjęcia wysokiej jakości. Ustawiane przez strukturę w ustawieniach żądania. |
PRECAPTURE_TRIGGER_IDLE | Brak aktualnego wyzwalacza. |
PRECAPTURE_TRIGGER_START | Rozpocznij sekwencję wstępnego przechwytywania. HAL powinien wykorzystać kolejne żądania do zmierzenia dobrej ekspozycji/balansu bieli przed zbliżającym się przechwytywaniem w wysokiej rozdzielczości. |
Dodatkowe wpisy metadanych | |
---|---|
ANDROID_Control_AE_LOCK | Sterowanie umożliwiające zablokowanie elementów sterujących AE na ich bieżących wartościach. |
ANDROID_Control_AE_EXPOSURE_COMPENSATION | Sterowanie regulacją docelowego punktu jasności algorytmu AE. |
ANDROID_Control_AE_TARGET_FPS_RANGE | Sterowanie wyborem docelowego zakresu liczby klatek na sekundę dla algorytmu AE. Procedura AE nie może zmienić szybkości klatek tak, aby znajdowała się poza tymi granicami. |
ANDROID_Control_AE_REGIONS | Kontrola wyboru obszarów FOV, które powinny być użyte do określenia dobrych poziomów ekspozycji. Dotyczy to wszystkich trybów AE oprócz WYŁ. |
Ustawienia automatycznego balansu bieli i wpisy wyników
Główne wpisy metadanych | |
---|---|
ANDROID_Control_AWB_MODE | Sterowanie wyborem bieżącego trybu balansu bieli. |
AWB_MODE_OFF | Automatyczny balans bieli jest wyłączony. Użytkownik kontroluje matrycę kolorów. |
AWB_MODE_AUTO | Włączony jest automatyczny balans bieli; 3A steruje transformacją koloru, prawdopodobnie wykorzystując bardziej złożone transformacje niż prosta macierz. |
AWB_MODE_INCANDESCENT | Naprawiono ustawienia balansu bieli dobre dla oświetlenia żarowego (wolframowego) w pomieszczeniach, około 2700 K. |
AWB_MODE_FLUORESCENT | Naprawiono ustawienia balansu bieli dobre dla oświetlenia fluorescencyjnego, około 5000 K. |
AWB_MODE_WARM_FLUORESCENT | Naprawiono ustawienia balansu bieli dobre dla oświetlenia fluorescencyjnego, około 3000 K. |
AWB_MODE_DAYLIGHT | Naprawiono ustawienia balansu bieli dobre dla światła dziennego, około 5500 K. |
AWB_MODE_CLOUDY_DAYLIGHT | Naprawiono ustawienia balansu bieli dobre dla pochmurnego światła dziennego, około 6500 K. |
AWB_MODE_TWILIGHT | Naprawiono ustawienia balansu bieli dobre dla blisko zachodu/wschodu słońca, około 15000 K. |
AWB_MODE_SHADE | Naprawiono ustawienia balansu bieli dobre dla obszarów pośrednio oświetlonych przez słońce, około 7500 K. |
ANDROID_Control_AWB_STATE | Dynamiczne metadane opisujące bieżący stan algorytmu AWB, raportowane przez HAL w metadanych wynikowych. |
AWB_STATE_INACTIVE | Początkowy stan AWB po przełączeniu trybu. Kiedy urządzenie jest otwarte, musi uruchomić się w tym stanie. |
AWB_STATE_SEARCHING | AWB nie jest zbieżny do dobrej wartości i zmienia parametry regulacji kolorów. |
AWB_STATE_CONVERGED | Program AWB znalazł dobre wartości regulacji kolorów dla bieżącej sceny, a parametry się nie zmieniają. HAL może spontanicznie opuścić ten stan w celu poszukiwania lepszego rozwiązania. |
AWB_STATE_LOCKED | AWB zostało zablokowane za pomocą elementu sterującego AWB_LOCK. Wartości regulacji kolorów nie zmieniają się. |
Dodatkowe wpisy metadanych | |
---|---|
ANDROID_Control_AWB_LOCK | Sterowanie blokowaniem regulacji kolorów AWB do ich bieżących wartości. |
ANDROID_Control_AWB_REGIONS | Kontrola wyboru obszarów FOV, które powinny zostać użyte do określenia dobrego balansu kolorów. Dotyczy to tylko trybu automatycznego balansu bieli. |
Ogólne uwagi dotyczące przejścia maszyny stanu
Przełączanie między trybami AF, AE lub AWB zawsze resetuje stan algorytmu do NIEAKTYWNEGO. Podobnie, przełączanie pomiędzy Control_MODE lub Control_SCENE_MODE, jeśli Control_MODE == USE_SCENE_MODE resetuje wszystkie stany algorytmu na NIEAKTYWNE.
Poniższe tabele dotyczą poszczególnych trybów.
Maszyny stanu AF
tryb = AF_MODE_OFF lub AF_MODE_EDOF | |||
---|---|---|---|
Państwo | Przyczyna transformacji | Nowy stan | Notatki |
NIEAKTYWNY | AF jest wyłączony |
tryb = AF_MODE_AUTO lub AF_MODE_MACRO | |||
---|---|---|---|
Państwo | Przyczyna transformacji | Nowy stan | Notatki |
NIEAKTYWNY | AF_TRIGGER | AKTYWNE_SKANOWANIE | Rozpocznij przemiatanie AF Obiektyw się teraz porusza |
AKTYWNE_SKANOWANIE | Przemiatanie AF zakończone | FOCUSED_LOCKED | Jeśli AF się powiedzie Obiektyw jest teraz zablokowany |
AKTYWNE_SKANOWANIE | Przemiatanie AF zakończone | NOT_FOCUSED_LOCKED | Jeśli AF się powiedzie Obiektyw jest teraz zablokowany |
AKTYWNE_SKANOWANIE | AF_ANULUJ | NIEAKTYWNY | Anuluj/zresetuj AF Obiektyw jest teraz zablokowany |
FOCUSED_LOCKED | AF_ANULUJ | NIEAKTYWNY | Anuluj/zresetuj AF |
FOCUSED_LOCKED | AF_TRIGGER | AKTYWNE_SKANOWANIE | Rozpocznij nowe przemiatanie Obiektyw się teraz porusza |
NOT_FOCUSED_LOCKED | AF_ANULUJ | NIEAKTYWNY | Anuluj/zresetuj AF |
NOT_FOCUSED_LOCKED | AF_TRIGGER | AKTYWNE_SKANOWANIE | Rozpocznij nowe przemiatanie Obiektyw się teraz porusza |
Wszystkie stany | Zmiana trybu | NIEAKTYWNY |
tryb = AF_MODE_CONTINUOUS_VIDEO | |||
---|---|---|---|
Państwo | Przyczyna transformacji | Nowy stan | Notatki |
NIEAKTYWNY | HAL inicjuje nowe skanowanie | PASSIVE_SCAN | Rozpocznij przemiatanie AF Obiektyw się teraz porusza |
NIEAKTYWNY | AF_TRIGGER | NOT_FOCUSED_LOCKED | Zapytanie o stan AF Obiektyw jest teraz zablokowany |
PASSIVE_SCAN | HAL kończy bieżące skanowanie | PASSIVE_FOCUSED | Zakończ skanowanie AF Obiektyw jest teraz zablokowany |
PASSIVE_SCAN | AF_TRIGGER | FOCUSED_LOCKED | Natychmiastowa przemiana, jeśli skupienie jest dobre Obiektyw jest teraz zablokowany |
PASSIVE_SCAN | AF_TRIGGER | NOT_FOCUSED_LOCKED | Natychmiastowa transformacja, jeśli ostrość jest zła Obiektyw jest teraz zablokowany |
PASSIVE_SCAN | AF_ANULUJ | NIEAKTYWNY | Zresetuj położenie obiektywu Obiektyw jest teraz zablokowany |
PASSIVE_FOCUSED | HAL inicjuje nowe skanowanie | PASSIVE_SCAN | Rozpocznij skanowanie AF Obiektyw się teraz porusza |
PASSIVE_FOCUSED | AF_TRIGGER | FOCUSED_LOCKED | Natychmiastowa przemiana, jeśli skupienie jest dobre Obiektyw jest teraz zablokowany |
PASSIVE_FOCUSED | AF_TRIGGER | NOT_FOCUSED_LOCKED | Natychmiastowa transformacja, jeśli ostrość jest zła Obiektyw jest teraz zablokowany |
FOCUSED_LOCKED | AF_TRIGGER | FOCUSED_LOCKED | Bez efektu |
FOCUSED_LOCKED | AF_ANULUJ | NIEAKTYWNY | Uruchom ponownie skanowanie AF |
NOT_FOCUSED_LOCKED | AF_TRIGGER | NOT_FOCUSED_LOCKED | Bez efektu |
NOT_FOCUSED_LOCKED | AF_ANULUJ | NIEAKTYWNY | Uruchom ponownie skanowanie AF |
tryb = AF_MODE_CONTINUOUS_PICTURE | |||
---|---|---|---|
Państwo | Przyczyna transformacji | Nowy stan | Notatki |
NIEAKTYWNY | HAL inicjuje nowe skanowanie | PASSIVE_SCAN | Rozpocznij skanowanie AF Obiektyw się teraz porusza |
NIEAKTYWNY | AF_TRIGGER | NOT_FOCUSED_LOCKED | Zapytanie o stan AF Obiektyw jest teraz zablokowany |
PASSIVE_SCAN | HAL kończy bieżące skanowanie | PASSIVE_FOCUSED | Zakończ skanowanie AF Obiektyw jest teraz zablokowany |
PASSIVE_SCAN | AF_TRIGGER | FOCUSED_LOCKED | Ewentualna transformacja po dobrym skupieniu Obiektyw jest teraz zablokowany |
PASSIVE_SCAN | AF_TRIGGER | NOT_FOCUSED_LOCKED | Ewentualna transformacja, jeśli nie można się skupić Obiektyw jest teraz zablokowany |
PASSIVE_SCAN | AF_ANULUJ | NIEAKTYWNY | Zresetuj położenie obiektywu Obiektyw jest teraz zablokowany |
PASSIVE_FOCUSED | HAL inicjuje nowe skanowanie | PASSIVE_SCAN | Rozpocznij skanowanie AF Obiektyw się teraz porusza |
PASSIVE_FOCUSED | AF_TRIGGER | FOCUSED_LOCKED | Natychmiastowa przemiana, jeśli skupienie jest dobre Obiektyw jest teraz zablokowany |
PASSIVE_FOCUSED | AF_TRIGGER | NOT_FOCUSED_LOCKED | Natychmiastowa transformacja, jeśli ostrość jest zła Obiektyw jest teraz zablokowany |
FOCUSED_LOCKED | AF_TRIGGER | FOCUSED_LOCKED | Bez efektu |
FOCUSED_LOCKED | AF_ANULUJ | NIEAKTYWNY | Uruchom ponownie skanowanie AF |
NOT_FOCUSED_LOCKED | AF_TRIGGER | NOT_FOCUSED_LOCKED | Bez efektu |
NOT_FOCUSED_LOCKED | AF_ANULUJ | NIEAKTYWNY | Uruchom ponownie skanowanie AF |
Maszyny stanu AE i AWB
Maszyny stanu AE i AWB są w większości identyczne. AE ma dodatkowe stany FLASH_REQUIRED i PRECAPTURE. Zatem wiersze poniżej odnoszące się do tych dwóch stanów powinny zostać zignorowane w przypadku maszyny stanu AWB.
mode = AE_MODE_OFF / tryb AWB nie AUTO | |||
---|---|---|---|
Państwo | Przyczyna transformacji | Nowy stan | Notatki |
NIEAKTYWNY | AE/AWB wyłączona |
tryb = AE_MODE_ON_* / AWB_MODE_AUTO | |||
---|---|---|---|
Państwo | Przyczyna transformacji | Nowy stan | Notatki |
NIEAKTYWNY | HAL inicjuje skanowanie AE/AWB | BADAWCZY | |
NIEAKTYWNY | AE/AWB_LOCK włączone | ZABLOKOWANY | Wartości zablokowane |
BADAWCZY | HAL kończy skanowanie AE/AWB | KONWERGIJNE | Dobre wartości, niezmienne |
BADAWCZY | HAL kończy skanowanie AE | FLASH_REQUIRED | Zbieżne, ale zbyt ciemne bez lampy błyskowej |
BADAWCZY | AE/AWB_LOCK włączone | ZABLOKOWANY | Wartości zablokowane |
KONWERGIJNE | HAL inicjuje skanowanie AE/AWB | BADAWCZY | Wartości zablokowane |
KONWERGIJNE | AE/AWB_LOCK włączone | ZABLOKOWANY | Wartości zablokowane |
FLASH_REQUIRED | HAL inicjuje skanowanie AE/AWB | BADAWCZY | Wartości zablokowane |
FLASH_REQUIRED | AE/AWB_LOCK włączone | ZABLOKOWANY | Wartości zablokowane |
ZABLOKOWANY | AE/AWB_LOCK wyłączone | BADAWCZY | Wartości nie są dobre po odblokowaniu |
ZABLOKOWANY | AE/AWB_LOCK wyłączone | KONWERGIJNE | Wartości dobre po odblokowaniu |
ZABLOKOWANY | AE_LOCK wyłączone | FLASH_REQUIRED | Ekspozycja dobra, ale za ciemna |
Wszystkie stany AE | PRECAPTURE_START | PRZYGOTOWANIE | Rozpocznij sekwencję wstępnego przechwytywania |
PRZYGOTOWANIE | Sekwencja zakończona, AE_LOCK wyłączone | KONWERGACYJNE | Gotowy do rejestrowania wysokiej jakości |
PRZYGOTOWANIE | Sekwencja zakończona, AE_LOCK włączone | ZABLOKOWANY | Gotowy do przechwytywania wysokiej jakości |
Włączenie sterowania ręcznego
Kilka elementów sterujących jest również zaangażowanych w konfigurowanie bloków urządzenia 3A, aby umożliwić bezpośrednie sterowanie aplikacją.
Model HAL dla sterowania 3A polega na tym, że dla każdego żądania HAL sprawdza stan pól kontrolnych 3A. Jeśli włączona jest jakakolwiek procedura 3A, wówczas ta procedura zastępuje zmienne sterujące powiązane z tą procedurą, a te wartości zastąpienia są następnie dostępne w metadanych wyników tego przechwytywania. Na przykład, jeśli w żądaniu włączona jest automatyczna ekspozycja, warstwa HAL powinna zastąpić pola ekspozycji, wzmocnienia i czasu trwania klatki (i potencjalnie pola flash, w zależności od trybu AE) żądania. Lista odpowiednich kontroli jest następująca:
Nazwa kontrolna | Jednostka | Notatki |
---|---|---|
tryb.kontroli Androida | wyliczenie: WYŁ., AUTO, USE_SCENE_MODE | Sterowanie wysokiego poziomu 3A. Po ustawieniu na OFF, całe sterowanie 3A przez HAL jest wyłączone. Aplikacja musi sama ustawić pola parametrów przechwytywania. Po ustawieniu na AUTO obowiązują indywidualne kontrolki algorytmów w android.control.*, takie jak android.control.afMode. Po ustawieniu na USE_SCENE_MODE poszczególne elementy sterujące w android.control.* są w większości wyłączone, a warstwa HAL implementuje jedno z ustawień trybu sceny (takie jak ACTION, SUNSET lub PARTY) według własnego uznania. |
android.control.afMode | wyliczenie | OFF oznacza ręczną kontrolę ostrości obiektywu poprzez android.lens.focusDistance. |
android.control.aeMode | wyliczenie | WYŁ. oznacza ręczną kontrolę ekspozycji/wzmocnienia/czasu trwania klatki za pomocą android.sensor.exposureTime / .sensitivity / .frameDuration |
android.control.awbMode | wyliczenie | OFF oznacza ręczną kontrolę balansu bieli. |