ข้อมูลเมตาและการควบคุม

หน้านี้อธิบายการรองรับข้อมูลเมตา การควบคุมการตั้งค่าแต่ละรายการ และการรองรับข้อมูลเซ็นเซอร์ดิบ

การรองรับข้อมูลเมตา

เฟรมเวิร์ก Android จำเป็นต้องมีข้อมูลเมตาจำนวนมากเกี่ยวกับลักษณะของเซ็นเซอร์เพื่อรองรับการบันทึกไฟล์รูปภาพดิบ ซึ่งรวมถึง ข้อมูล เช่น พื้นที่สีและฟังก์ชันการแรเงาเลนส์

ข้อมูลส่วนใหญ่เป็นพร็อพเพอร์ตี้แบบคงที่ของระบบย่อยของกล้อง จึงสามารถค้นหาได้ก่อนที่จะกำหนดค่าไปป์ไลน์เอาต์พุตหรือส่งคำขอ API กล้องใหม่จะขยายข้อมูลที่เมธอด getCameraInfo ให้ไว้เป็นอย่างมากเพื่อส่งข้อมูลนี้ไปยังแอป

นอกจากนี้ การควบคุมระบบย่อยของกล้องด้วยตนเองยังต้องใช้ความคิดเห็นจาก อุปกรณ์ต่างๆ เกี่ยวกับสถานะปัจจุบัน รวมถึงพารามิเตอร์จริงที่ใช้ใน การจับภาพเฟรมที่กำหนด ค่าจริงของการควบคุม (เวลาเปิดรับแสง ระยะเวลาเฟรม ระยะเวลา และความไวแสง) ที่ฮาร์ดแวร์ใช้จริงต้องรวมอยู่ใน ข้อมูลเมตาเอาต์พุต ซึ่งเป็นสิ่งสำคัญเพื่อให้แอปทราบว่ามีการ หนีบหรือปัดเศษเกิดขึ้นเมื่อใด และเพื่อให้แอปชดเชย การตั้งค่าจริงที่ใช้ในการจับภาพได้

ตัวอย่างเช่น หากแอปตั้งค่าระยะเวลาเฟรมเป็น 0 ในคำขอ HAL จะต้องหนีบระยะเวลาเฟรมเป็นระยะเวลาเฟรมต่ำสุดจริงสำหรับคำขอ นั้น และรายงานระยะเวลาต่ำสุดที่หนีบไว้ในข้อมูลเมตาของผลลัพธ์เอาต์พุต

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

การควบคุมต่อการตั้งค่า

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

การรองรับข้อมูลเซ็นเซอร์ดิบ

นอกเหนือจากรูปแบบพิกเซลที่ API เก่ารองรับแล้ว API ใหม่ยังกำหนดให้ต้องรองรับข้อมูลเซ็นเซอร์ดิบ (Bayer RAW) ทั้งสำหรับแอปกล้องขั้นสูงและเพื่อรองรับไฟล์รูปภาพดิบ