โหมด 3A และการเปลี่ยนสถานะ

แม้ว่าอัลกอริทึม 3A จริงจะขึ้นอยู่กับการใช้งาน HAL แต่ข้อมูลระดับสูง อินเทอร์เฟซ HAL กำหนดโดยคำอธิบายเครื่องสถานะเพื่ออนุญาตให้ HAL อุปกรณ์และเฟรมเวิร์กในการสื่อสารเกี่ยวกับสถานะปัจจุบันของ 3A และ เรียกเหตุการณ์ 3A

เมื่อเปิดอุปกรณ์ สถานะ 3A ทั้งหมดจะต้อง STATE_INACTIVE การกำหนดค่าสตรีมไม่รีเซ็ต 3A ตัวอย่างเช่น โฟกัสที่ล็อกจะต้อง ที่คงไว้ตลอดการโทร configure()

การทริกเกอร์การดำเนินการแบบ 3A คือการตั้งค่ารายการทริกเกอร์ที่เกี่ยวข้องใน การตั้งค่าสำหรับคำขอถัดไปเพื่อระบุการเริ่มต้นการทริกเกอร์ ตัวอย่างเช่น ทริกเกอร์สำหรับการเริ่มการสแกนโฟกัสอัตโนมัติคือการตั้งค่ารายการ ANDROID_CONTROL_AF_TRIGGER ไปยัง ANDROID_CONTROL_AF_TRIGGER_START สำหรับคำขอ 1 รายการ และการยกเลิกการสแกนระบบโฟกัสอัตโนมัติจะทริกเกอร์โดยการตั้งค่า ANDROID_CONTROL_AF_TRIGGER ไปยัง ANDROID_CONTRL_AF_TRIGGER_CANCEL มิเช่นนั้น แอตทริบิวต์ รายการนี้จะไม่มีอยู่ หรือถูกตั้งค่าเป็น ANDROID_CONTROL_AF_TRIGGER_IDLE ชิ้น คำขอที่มีการตั้งค่ารายการทริกเกอร์เป็นค่าที่ไม่ใช่ IDLE จะถือว่าเป็น เหตุการณ์ทริกเกอร์อิสระ

ที่ระดับบนสุด 3A จะควบคุมโดยการตั้งค่า ANDROID_CONTROL_MODE ทั้งนี้ เลือกระหว่างไม่ 3A (ANDROID_CONTROL_MODE_OFF), โหมดอัตโนมัติปกติ (ANDROID_CONTROL_MODE_AUTO) และกำลังใช้การตั้งค่าโหมดสำเร็จรูป (ANDROID_CONTROL_USE_SCENE_mode):

  • ในโหมดปิด โฟกัสอัตโนมัติแต่ละตัว (AF), การรับแสงอัตโนมัติ (AE) และโหมด autowhitebalance (AWB) จะปิดอยู่อย่างมีประสิทธิภาพ และไม่มี การควบคุมการจับภาพอาจถูกลบล้างโดยกิจวัตรของ 3A
  • ในโหมดอัตโนมัติ โหมด AF, AE และ AWB ทั้งหมดจะทำงานแยกกัน และมีโหมด สถานะ และทริกเกอร์รายการข้อมูลเมตาเป็นของตัวเอง ตามที่แสดงอยู่ในส่วนถัดไป
  • ใน USE_SCENE_mode ค่าของรายการ ANDROID_CONTROL_SCENE_mode ต้อง ใช้เพื่อระบุลักษณะการทำงานของกิจวัตร 3A ใน SCENE_modes นอกเหนือจาก FACE_PRIORITY โดย HAL ต้องลบล้างค่าของ ANDROID_CONTROL_AE/AWB/AF_MODE เป็นโหมดที่ต้องการสำหรับ SCENE_mode ตัวอย่างเช่น HAL อาจต้องการใช้ SCENE_MODE_NIGHT โหมด CONTINUOUS_FOCUS AF ผู้ใช้เลือก AE/AWB/AF_MODE เมื่อฉาก ต้องละเว้นสำหรับโหมดฉากเหล่านี้
  • สำหรับ SCENE_mode_FACE_PRIORITY การควบคุม AE/AWB/AFMode จะทำงานเหมือนกับใน ANDROID_CONTROL_MODE_AUTO แต่กิจวัตร 3A จะต้องมีความเอนเอียงในการจำกัดปริมาณเนื้อหา โฟกัสไปที่ใบหน้าที่ตรวจพบในฉาก

การตั้งค่าโฟกัสอัตโนมัติและรายการผลลัพธ์

รายการข้อมูลเมตาหลัก
โหมด ANDROID_CONTROL_AF_ ตัวควบคุมเพื่อเลือกโหมดโฟกัสอัตโนมัติปัจจุบัน กำหนดตามเฟรมเวิร์ก ในการตั้งค่าคำขอ
AF_MODE_OFF AF ปิดใช้อยู่ เฟรมเวิร์ก/แอปจะควบคุมตำแหน่งเลนส์โดยตรง
โหมด AF โฟกัสอัตโนมัติแบบกวาดเพียงครั้งเดียว ไม่มีการเคลื่อนไหวของเลนส์เว้นแต่จะทริกเกอร์ AF
มาโคร AF โฟกัสอัตโนมัติแบบกวาดจากด้านบนระยะใกล้ ไม่มีการเคลื่อนไหวของเลนส์เว้นแต่จะทริกเกอร์ AF
AF_MODE_CONTINUOUS_วิดีโอ การโฟกัสต่อเนื่องที่ราบรื่นสำหรับการบันทึกวิดีโอ การทริกเกอร์ทันที ล็อกโฟกัสในตำแหน่งปัจจุบัน การยกเลิกจะกลับสู่การโฟกัสอย่างต่อเนื่อง
AF_mode_CONTINUOUS_PICTURE การโฟกัสต่อเนื่องอย่างรวดเร็ว ยังคงจับภาพได้แบบไม่มีสะดุด การทริกเกอร์ ล็อกโฟกัสเมื่อการกวาดที่ใช้งานอยู่สิ้นสุดลง กำลังยกเลิกเรซูเม่ การโฟกัสต่อเนื่อง
AF_MODE_EDOF การโฟกัสภาคสนามแบบขยายขั้นสูง ไม่มีการสแกนโฟกัสอัตโนมัติ ดังนั้นการทริกเกอร์หรือการยกเลิกจึงไม่มีผล โฟกัสที่รูปภาพ โดยอัตโนมัติผ่าน HAL
ANDROID_CONTROL_AF_STATE รายงานข้อมูลเมตาแบบไดนามิกที่อธิบายสถานะของอัลกอริทึม AF ปัจจุบัน HAL ในข้อมูลเมตาของผลลัพธ์
สถานะไม่ทำงาน ยังไม่มีการโฟกัสหรือรีเซ็ตอัลกอริทึม Lens ไม่เคลื่อนไหว กำหนดสถานะเป็น mode_OFF หรือ MODE_EDOF เสมอ เมื่อเปิดอุปกรณ์ จะต้องเริ่มต้นในสถานะนี้
AF_STATE_PASSIVE_SCAN อัลกอริทึมการโฟกัสแบบต่อเนื่องกำลังสแกนการโฟกัสที่ดี เลนส์เคลื่อนไหว
AF_STATE_PASSIVE_FOCUSED อัลกอริทึมการโฟกัสอย่างต่อเนื่องจะเชื่อว่ามีการโฟกัสอย่างดี เลนส์ ไม่ได้เคลื่อนที่ โดย HAL อาจออกจากสถานะนี้ไปเอง
AF_STATE_PASSIVE_UNFOCused อัลกอริทึมการโฟกัสอย่างต่อเนื่องเชื่อว่าอัลกอริทึมไม่ได้โฟกัสมากนัก เลนส์ ไม่ได้เคลื่อนที่ โดย HAL อาจออกจากสถานะนี้ไปเอง
AF_STATE_ACTIVE_SCAN การสแกนโดยผู้ใช้อยู่ระหว่างดำเนินการ
AF_STATE_FOCUSED_LOCKED แต่อัลกอริทึม AF เชื่อว่ากล้องโฟกัสอยู่ เลนส์ไม่เคลื่อนไหว
AF_STATE_NOT_FOCUSED_LOCKED โฟกัสที่อัลกอริทึม AF ไม่ได้ เลนส์ไม่เคลื่อนไหว
ANDROID_CONTROL_AF_TRIGGER การควบคุมเพื่อเริ่มการสแกนระบบโฟกัสอัตโนมัติ ความหมายจะขึ้นอยู่กับ โหมดและสถานะ กำหนดตามเฟรมเวิร์กในการตั้งค่าคำขอ
AF_TRIGGER_IDLE ไม่มีทริกเกอร์ปัจจุบัน
AF_TRIGGER_START เริ่มการสแกน AF ผลลัพธ์ขึ้นอยู่กับโหมดและสถานะ
AF_TRIGGER_CANCEL ยกเลิกการสแกน AF ปัจจุบัน หากมี และรีเซ็ตอัลกอริทึมเป็นค่าเริ่มต้น
รายการข้อมูลเมตาเพิ่มเติม
ANDROID_CONTROL_AF_REGIONS ตัวควบคุมสำหรับการเลือกพื้นที่ขอบเขตการมองเห็น (FOV) ควร เพื่อใช้พิจารณาโฟกัสที่ดี การตั้งค่านี้มีผลกับ AF ทั้งหมด โหมดที่จะสแกนหาโฟกัส กำหนดตามเฟรมเวิร์กในการตั้งค่าคำขอ

การตั้งค่าการเปิดรับแสงอัตโนมัติและรายการผลลัพธ์

รายการข้อมูลเมตาหลัก
โหมด ANDROID_Control_AE_ Control สำหรับการเลือกโหมดการรับแสงอัตโนมัติปัจจุบัน ตั้งค่าตาม ในการตั้งค่าคำขอ
AE_mode_OFF การรับแสงอัตโนมัติปิดใช้อยู่ ผู้ใช้ควบคุมการรับแสง ค่าเกน การจัดเฟรม ระยะเวลา และ Flash
เปิดโหมด AE การรับแสงอัตโนมัติแบบมาตรฐาน ปิดใช้การควบคุมแฟลช ผู้ใช้อาจตั้งค่าแฟลช เพื่อเริ่มทำงานหรือใช้โหมดไฟฉาย
AE_MODE_ON_AUTO_FLASH การรับแสงอัตโนมัติแบบมาตรฐาน โดยจะเปิดแฟลชได้ตามที่เห็นสมควรสำหรับการเตรียมการล่วงหน้า และยังคงถ่ายภาพได้ ผู้ใช้ควบคุม Flash อยู่
AE_MODE_ON_ALWAYS_FLASH การรับแสงอัตโนมัติแบบมาตรฐาน โดยใช้แฟลชเพื่อจับภาพเสมอ และที่ HAL ตามที่เห็นสมควรสำหรับการเตรียมการไว้ ผู้ใช้ควบคุม Flash อยู่
AE_mode_ON_AUTO_FLASH_REDEYE การรับแสงอัตโนมัติแบบมาตรฐาน โดยจะเปิดแฟลชได้ตามที่เห็นสมควรสำหรับการเตรียมการล่วงหน้า และยังคงถ่ายภาพได้ ใช้การถ่ายภาพอัจฉริยะในช่วงท้ายลำดับก่อนจับภาพเพื่อ ลดตาแดงในภาพสุดท้าย ผู้ใช้ควบคุม Flash อยู่
สถานะ ANDROID_Control_AE_ ข้อมูลเมตาแบบไดนามิกที่อธิบายสถานะอัลกอริทึม AE ปัจจุบัน รายงานโดย HAL ในข้อมูลเมตาของผลลัพธ์
AE_STATE_ไม่ได้ใช้งาน สถานะ AE เริ่มต้นหลังจากเปลี่ยนโหมด เมื่อเปิดอุปกรณ์ ต้องดำเนินการต่อไปนี้ เริ่มต้นในสถานะนี้
การค้นหา_สถานะ AE ไม่เป็นค่าที่ดีนักและกำลังปรับการรับแสง พารามิเตอร์
สถานะ AE_STATE_CONVERGED AE พบค่าการรับแสงที่ดีในฉากปัจจุบัน และ พารามิเตอร์การรับแสงจะไม่เปลี่ยนแปลง HAL อาจออกจากหน้านี้ไปเอง เพื่อค้นหาโซลูชันที่ดีกว่า
สถานะถูกล็อก AE ถูกล็อกด้วยตัวควบคุม AE_LOCK ค่าการรับแสงไม่ใช่ค่า กำลังเปลี่ยนแปลง
ต้องมี AE_STATE_FLASH_ต้องระบุ HAL มีการรับแสงที่บรรจบกัน แต่เชื่อว่าจำเป็นต้องใช้แฟลช ภาพที่สว่างเพียงพอ ใช้เพื่อระบุว่ามีเวลาหน่วงที่ชัตเตอร์เป็น 0 หรือไม่ เฟรมนี้
AE_STATE_PRECAPTURE HAL อยู่ตรงกลางของลำดับก่อนการถ่ายภาพ ขึ้นอยู่กับโหมด AE โหมดนี้อาจต้องเริ่มการทำงานของ Flash เพื่อการตรวจสอบการใช้งานหรือการใช้แฟลชต่อเนื่อง สำหรับการลดตาแดง
ANDROID_Control_AE_PRECAPTURE_ทริกเกอร์ การควบคุมเพื่อเริ่มลำดับการตรวจสอบการใช้งานก่อนจับภาพคุณภาพสูง รูปภาพ กำหนดตามเฟรมเวิร์กในการตั้งค่าคำขอ
PRECAPTURE_TRIGGER_IDLE ไม่มีทริกเกอร์ปัจจุบัน
PRECAPTURE_TRIGGER_START เริ่มต้นลำดับก่อนการจับภาพ HAL ควรใช้คำขอที่ตามมา เพื่อตรวจวัดการรับแสง/สมดุลแสงขาวที่เหมาะสำหรับความละเอียดสูง การจับภาพ
รายการข้อมูลเมตาเพิ่มเติม
ANDROID_Control_AE_LOCK การควบคุมสำหรับการล็อกตัวควบคุม AE เป็นค่าปัจจุบัน
ANDROID_CONTROL_AE_EXPOSURE_COMPENSATION การควบคุมเพื่อปรับจุดความสว่างเป้าหมายของอัลกอริทึม AE
ANDROID_CONTROL_AE_TARGET_FPS_RANGE ตัวควบคุมสำหรับการเลือกช่วงอัตราเฟรมเป้าหมายสำหรับอัลกอริทึม AE กิจวัตร AE เปลี่ยนอัตราเฟรมให้อยู่นอกเฟรมเหล่านี้ไม่ได้ ขอบเขต
ภูมิภาค Android ตัวควบคุมสำหรับการเลือกพื้นที่ของ FOV ที่จะใช้ กำหนดระดับการสัมผัสที่ดีได้ ซึ่งมีผลกับโหมด AE ทั้งหมด นอกจาก "ปิด"

การตั้งค่า Autowhitebalance และรายการผลลัพธ์

รายการข้อมูลเมตาหลัก
โหมด ANDROID_CONTROL_AWB_ การควบคุมสำหรับการเลือกโหมดไวท์บาลานซ์ปัจจุบัน
AWB_mode_OFF ปิดใช้สมดุลแสงขาวอัตโนมัติอยู่ ผู้ใช้ควบคุมเมตริกซ์สี
AWB_mode_AUTO เปิดใช้ไวท์บาลานซ์อัตโนมัติอยู่ 3A ควบคุมการเปลี่ยนรูปแบบสี อาจใช้การแปลงที่ซับซ้อนกว่าเมทริกซ์ธรรมดา
AWB_MODE_INCANDESCENT การตั้งค่าไวท์บาลานซ์คงที่เหมาะสำหรับหลอดไส้ในร่ม (ทังสเตน) หลอดไฟประมาณ 2700K
AWB_mode_FLUORESCENT การตั้งค่าไวท์บาลานซ์คงที่เหมาะสำหรับแสงฟลูออเรสเซนต์โดยคร่าวๆ 5 แสน
AWB_mode_WARM_FLUORESCENT การตั้งค่าไวท์บาลานซ์คงที่เหมาะสำหรับแสงฟลูออเรสเซนต์โดยคร่าวๆ 3 แสน
AWB_mode_DAYLIGHT การตั้งค่าไวท์บาลานซ์คงที่ซึ่งเหมาะสำหรับกลางวันประมาณ 5, 500 K
AWB_MODE_CLOUDY_DAYLIGHT การตั้งค่าไวท์บาลานซ์คงที่เหมาะสำหรับเวลากลางวันที่เมฆมากราว 6, 500 K
AWB_MODE_TWILIGHT การตั้งค่าไวท์บาลานซ์คงที่เหมาะสำหรับเวลาใกล้พระอาทิตย์ตก/พระอาทิตย์ขึ้นโดยประมาณ 15,000,000
SHADE AWB การตั้งค่าไวท์บาลานซ์คงที่ซึ่งเหมาะสำหรับพื้นที่ที่โดนแสงแดดโดยอ้อม ประมาณ 7,500 K
สถานะ ANDROID_Control_AWB_ ข้อมูลเมตาแบบไดนามิกที่อธิบายสถานะอัลกอริทึม AWB ปัจจุบัน รายงานโดย HAL ในข้อมูลเมตาของผลลัพธ์
สถานะ AdWords ไม่ทำงาน สถานะ AWB เริ่มต้นหลังจากเปลี่ยนโหมด เมื่อเปิดอุปกรณ์ ต้องดำเนินการต่อไปนี้ เริ่มต้นในสถานะนี้
AWB_STATE_SEARCHING AWB ไม่ปรับเป็นค่าที่ดีและกำลังเปลี่ยนแปลงการปรับสี พารามิเตอร์
สถานะ AWB_CONVERGED AWB พบค่าการปรับสีที่ดีสำหรับฉากปัจจุบัน และ พารามิเตอร์ไม่เปลี่ยนแปลง HAL อาจออกจากสถานะนี้ไปเอง เพื่อค้นหาโซลูชันที่ดีกว่า
สถานะล็อกเป็น AWB AWB ถูกล็อกด้วยการควบคุม AWB_LOCK การปรับสี จะไม่มีการเปลี่ยนแปลง
รายการข้อมูลเมตาเพิ่มเติม
ANDROID_CONTROL_AWB_LOCK ควบคุมการล็อกการปรับสี AWB เป็นค่าปัจจุบัน
ภูมิภาค ANDROID_Control_AWB_ ตัวควบคุมสำหรับการเลือกพื้นที่ของ FOV ที่จะใช้ เพราะช่วยให้ปรับสมดุลของสีได้อย่างเหมาะสม ใช้ได้กับ Autowhitebalance เท่านั้น

หมายเหตุทั่วไปเกี่ยวกับการเปลี่ยนสถานะของเครื่องจักร

การสลับระหว่างโหมด AF, AE หรือ AWB จะรีเซ็ตสถานะของอัลกอริทึมเป็น ไม่ใช้งาน ในทำนองเดียวกัน สลับระหว่าง CONTROL_MODE หรือ CONTROL_SCENE_MODE หาก CONTROL_mode == USE_SCENE_mode รีเซ็ตสถานะของอัลกอริทึมทั้งหมดเป็น "ไม่มีการใช้งาน"

ตารางด้านล่างนี้แสดงตามโหมด

เครื่องสถานะ AF

โหมด = AF_MODE_OFF หรือ AF_MODE_EDOF
รัฐ สาเหตุของการเปลี่ยนรูปแบบ สถานะใหม่ หมายเหตุ
ไม่ทำงาน AF ปิดใช้อยู่
โหมด = AF_mode_AUTO หรือ AF_MODE_MACRO
รัฐ สาเหตุของการเปลี่ยนรูปแบบ สถานะใหม่ หมายเหตุ
ไม่ทำงาน AF_ทริกเกอร์ สแกน_ใช้งานอยู่

เริ่มการกวาด AF

Lens กำลังเคลื่อนที่

สแกน_ใช้งานอยู่ กวาด AF เสร็จแล้ว โฟกัส_ถูกล็อก

หาก AF สำเร็จ

Lens ล็อกอยู่

สแกน_ใช้งานอยู่ กวาด AF เสร็จแล้ว ไม่ได้ล็อก

หาก AF สำเร็จ

Lens ล็อกอยู่

สแกน_ใช้งานอยู่ AF_CANCEL ไม่ทำงาน

ยกเลิก/รีเซ็ต AF

Lens ล็อกอยู่

โฟกัส_ถูกล็อก AF_CANCEL ไม่ทำงาน ยกเลิก/รีเซ็ต AF
โฟกัส_ถูกล็อก AF_ทริกเกอร์ สแกน_ใช้งานอยู่

เริ่มเก็บกวาดใหม่

Lens กำลังเคลื่อนที่

ไม่ได้ล็อก AF_CANCEL ไม่ทำงาน ยกเลิก/รีเซ็ต AF
ไม่ได้ล็อก AF_ทริกเกอร์ สแกน_ใช้งานอยู่

เริ่มเก็บกวาดใหม่

Lens กำลังเคลื่อนที่

ทุกรัฐ เปลี่ยนโหมด ไม่ทำงาน
โหมด = AF_MODE_CONTINUOUS_VIDEO
รัฐ สาเหตุของการเปลี่ยนรูปแบบ สถานะใหม่ หมายเหตุ
ไม่ทำงาน HAL เริ่มการสแกนใหม่ การสแกนผ่าน

เริ่มการกวาด AF

Lens กำลังเคลื่อนที่

ไม่ทำงาน AF_ทริกเกอร์ ไม่ได้ล็อก

การค้นหาสถานะ AF

Lens ล็อกอยู่

การสแกนผ่าน HAL สแกนปัจจุบันเสร็จสมบูรณ์ การโฟกัส

สิ้นสุดการสแกน AF

Lens ล็อกอยู่

การสแกนผ่าน AF_ทริกเกอร์ โฟกัส_ถูกล็อก

เปลี่ยนแปลงได้ทันที ถ้าโฟกัสดี

Lens ล็อกอยู่

การสแกนผ่าน AF_ทริกเกอร์ ไม่ได้ล็อก

เปลี่ยนแปลงได้ทันที หากโฟกัสไม่ดี

Lens ล็อกอยู่

การสแกนผ่าน AF_CANCEL ไม่ทำงาน

รีเซ็ตตำแหน่งเลนส์

Lens ล็อกอยู่

การโฟกัส HAL เริ่มการสแกนใหม่ การสแกนผ่าน

เริ่มสแกน AF

Lens กำลังเคลื่อนที่

การโฟกัส AF_ทริกเกอร์ โฟกัส_ถูกล็อก

เปลี่ยนแปลงได้ทันที ถ้าโฟกัสดี

Lens ล็อกอยู่

การโฟกัส AF_ทริกเกอร์ ไม่ได้ล็อก เปลี่ยนแปลงได้ทันที หากโฟกัสไม่ดี

Lens ล็อกอยู่

โฟกัส_ถูกล็อก AF_ทริกเกอร์ โฟกัส_ถูกล็อก ไม่มีเอฟเฟกต์
โฟกัส_ถูกล็อก AF_CANCEL ไม่ทำงาน รีสตาร์ทการสแกน AF
ไม่ได้ล็อก AF_ทริกเกอร์ ไม่ได้ล็อก ไม่มีเอฟเฟกต์
ไม่ได้ล็อก AF_CANCEL ไม่ทำงาน รีสตาร์ทการสแกน AF
โหมด = AF_MODE_CONTINUOUS_PICTURE
รัฐ สาเหตุของการเปลี่ยนรูปแบบ สถานะใหม่ หมายเหตุ
ไม่ทำงาน HAL เริ่มการสแกนใหม่ การสแกนผ่าน

เริ่มสแกน AF

Lens กำลังเคลื่อนที่

ไม่ทำงาน AF_ทริกเกอร์ ไม่ได้ล็อก

การค้นหาสถานะ AF

Lens ล็อกอยู่

การสแกนผ่าน HAL สแกนปัจจุบันเสร็จสมบูรณ์ การโฟกัส สิ้นสุดการสแกน AF

Lens ล็อกอยู่

การสแกนผ่าน AF_ทริกเกอร์ โฟกัส_ถูกล็อก

การเปลี่ยนรูปแบบในท้ายที่สุดเมื่อโฟกัสได้ดี

Lens ล็อกอยู่

การสแกนผ่าน AF_ทริกเกอร์ ไม่ได้ล็อก

การเปลี่ยนรูปแบบในท้ายที่สุดหากโฟกัสไม่ได้

Lens ล็อกอยู่

การสแกนผ่าน AF_CANCEL ไม่ทำงาน

รีเซ็ตตำแหน่งเลนส์

Lens ล็อกอยู่

การโฟกัส HAL เริ่มการสแกนใหม่ การสแกนผ่าน

เริ่มสแกน AF

Lens กำลังเคลื่อนที่

การโฟกัส AF_ทริกเกอร์ โฟกัส_ถูกล็อก

เปลี่ยนแปลงได้ทันทีหากโฟกัสดี

Lens ล็อกอยู่

การโฟกัส AF_ทริกเกอร์ ไม่ได้ล็อก

เปลี่ยนรูปแบบทันทีหากโฟกัสไม่ดี

Lens ล็อกอยู่

โฟกัส_ถูกล็อก AF_ทริกเกอร์ โฟกัส_ถูกล็อก ไม่มีเอฟเฟกต์
โฟกัส_ถูกล็อก AF_CANCEL ไม่ทำงาน รีสตาร์ทการสแกน AF
ไม่ได้ล็อก AF_ทริกเกอร์ ไม่ได้ล็อก ไม่มีเอฟเฟกต์
ไม่ได้ล็อก AF_CANCEL ไม่ทำงาน รีสตาร์ทการสแกน AF

เครื่องสถานะ AE และ AWB

เครื่องสถานะ AE และ AWB ส่วนใหญ่จะเหมือนกัน AE มี สถานะ FLASH_REQUIRED และ PRECAPTURE ดังนั้น แถวด้านล่างที่อ้างถึง 2 แถวนั้น ควรละเว้นสถานะสำหรับเครื่องสถานะ AWB

โหมด = AE_mode_OFF / โหมด AWB ไม่ใช่ AUTO
รัฐ สาเหตุของการเปลี่ยนรูปแบบ สถานะใหม่ หมายเหตุ
ไม่ทำงาน ปิดใช้ AE/AWB แล้ว
โหมด = AE_MODE_ON_* / AWB_mode_AUTO
รัฐ สาเหตุของการเปลี่ยนรูปแบบ สถานะใหม่ หมายเหตุ
ไม่ทำงาน HAL เริ่มการสแกน AE/AWB กำลังค้นหา
ไม่ทำงาน AE/AWB_LOCK เปิดอยู่ ล็อกอยู่ ล็อกค่าแล้ว
กำลังค้นหา HAL สแกน AE/AWB เรียบร้อยแล้ว แปลงแล้ว ค่าที่ดีไม่มีการเปลี่ยนแปลง
กำลังค้นหา HAL สแกน AE เรียบร้อยแล้ว ต้องใช้ Flash สลับกันแต่มืดเกินไปโดยไม่ใช้แฟลช
กำลังค้นหา AE/AWB_LOCK เปิดอยู่ ล็อกอยู่ ล็อกค่าแล้ว
แปลงแล้ว HAL เริ่มการสแกน AE/AWB กำลังค้นหา ล็อกค่าแล้ว
แปลงแล้ว AE/AWB_LOCK เปิดอยู่ ล็อกอยู่ ล็อกค่าแล้ว
ต้องใช้ Flash HAL เริ่มการสแกน AE/AWB กำลังค้นหา ล็อกค่าแล้ว
ต้องใช้ Flash AE/AWB_LOCK เปิดอยู่ ล็อกอยู่ ล็อกค่าแล้ว
ล็อกอยู่ ปิด AE/AWB_LOCK กำลังค้นหา ค่าไม่ดีหลังจากปลดล็อก
ล็อกอยู่ ปิด AE/AWB_LOCK แปลงแล้ว ค่าที่ดีหลังจากปลดล็อก
ล็อกอยู่ ปิด AE_LOCK ต้องใช้ Flash รับแสงได้ดี แต่มืดเกินไป
สถานะ AE ทั้งหมด PRECAPTURE_START เตรียมพร้อม เริ่มต้นลำดับก่อนจับภาพ
เตรียมพร้อม ลำดับเสร็จสิ้น ปิด AE_LOCK แปลงแล้ว พร้อมสำหรับการจับภาพคุณภาพสูง
เตรียมพร้อม ลำดับเสร็จสิ้นแล้ว เปิด AE_LOCK ล็อกอยู่ พร้อมสำหรับการจับภาพคุณภาพสูง

เปิดใช้การควบคุมด้วยตนเอง

การควบคุมหลายอย่างยังเกี่ยวข้องกับการกำหนดค่าบล็อก 3A ของอุปกรณ์เพื่อ ทำให้ควบคุมแอปได้โดยตรง

โมเดล HAL สำหรับการควบคุม 3A คือสำหรับคำขอแต่ละรายการ HAL จะตรวจสอบ ของช่องควบคุม 3A ถ้าเปิดใช้กิจวัตร 3A ไว้ กิจวัตรจะลบล้างตัวแปรควบคุมที่เกี่ยวข้องกับกิจวัตรนั้น และ ค่าการลบล้างเหล่านี้ก็จะพร้อมใช้งานในข้อมูลเมตาของผลลัพธ์สำหรับ การจับภาพ เช่น หากเปิดใช้การแสดงอัตโนมัติในคำขอ พารามิเตอร์ HAL ควรเขียนทับฟิลด์การรับแสง ค่าเกน และระยะเวลาของเฟรม (และ อาจเป็นฟิลด์ Flash ขึ้นอยู่กับโหมด AE) ของคำขอ การควบคุมที่เกี่ยวข้องได้แก่

ชื่อการควบคุม หน่วย หมายเหตุ
android.control.mode enum: ปิด, อัตโนมัติ, USE_SCENE_mode การควบคุม 3A ระดับสูง เมื่อตั้งค่าเป็น "ปิด" การควบคุม 3A ทั้งหมดโดย HAL ปิดใช้อยู่ แอปต้องตั้งค่าช่องสำหรับพารามิเตอร์การจับภาพ โดยตรง เมื่อตั้งค่าเป็น "อัตโนมัติ" อัลกอริทึมแต่ละรายการจะควบคุมใน android.control.* กำลังใช้งานอยู่ เช่น android.control.afMode เมื่อตั้งค่าเป็น USE_SCENE_MODE การควบคุมแต่ละรายการใน android.control* ส่วนใหญ่แล้วจะถูกปิดใช้ และ HAL จะใช้โหมดฉากแบบใดแบบหนึ่ง (เช่น ACTION, SUNSET หรือ PARTY) ตามต้องการ
android.control.afMode Enum "ปิด" หมายถึงการควบคุมเลนส์ด้วยตนเอง กำลังโฟกัสผ่าน android.lens.FocusDistance
android.control.aeMode Enum "ปิด" หมายถึงการควบคุมระยะเวลาเปิดรับแสง/ช่วงขยาย/เฟรมด้วยตนเองผ่าน android.sensor.exposureTime / .sensitivity / .frameDuration
android.control.awbMode Enum "ปิด" หมายถึงควบคุมไวท์บาลานซ์ด้วยตนเอง