เอาต์พุตกล้อง 10 บิต

สำหรับอุปกรณ์ที่ใช้ Android 13 ขึ้นไป Android จะรองรับเอาต์พุตกล้อง 10 บิตผ่านโปรไฟล์ช่วงไดนามิกที่ไคลเอ็นต์กล้องสามารถกําหนดค่าได้เป็นส่วนหนึ่งของการกำหนดค่าสตรีม ผู้ผลิตอุปกรณ์สามารถเพิ่มการรองรับโปรไฟล์ช่วงไดนามิก 10 บิต เช่น HLG10, HDR 10, HDR 10+ และ Dolby Vision

การรองรับเอาต์พุตกล้อง 10 บิตช่วยให้ไคลเอ็นต์กล้องค้นพบโปรไฟล์ช่วงไดนามิก 10 บิตที่รองรับของอุปกรณ์โดยการเรียกใช้ getSupportedProfiles จากนั้นเฟรมเวิร์กจะแสดงอินสแตนซ์ของ DynamicRangeProfiles ซึ่งประกอบด้วยข้อมูลเกี่ยวกับโปรไฟล์ช่วงไดนามิกที่รองรับและข้อจำกัดของคำขอบันทึก (หากมี) อุปกรณ์ต้องรองรับโปรไฟล์ HLG10 โปรไฟล์ช่วงไดนามิกที่แนะนำจะแสดงอยู่ในช่องREQUEST_RECOMMENDED_TEN_BIT_DYNAMIC_RANGE_PROFILE

โปรแกรมรับส่งข้อมูลของกล้องสามารถกำหนดค่าการผสมผสานสตรีมได้โดยเรียกใช้ setDynamicRangeProfile ดูข้อมูลเพิ่มเติมเกี่ยวกับชุดค่าผสมสตรีมเอาต์พุตที่ต้องระบุได้ที่ตารางการกำหนดค่าเพิ่มเติมที่รับประกันสำหรับเอาต์พุต 10 บิตในการบันทึกปกติ

ข้อกำหนด

หากต้องการรองรับเอาต์พุตกล้อง 10 บิต อุปกรณ์ต้องมีเซ็นเซอร์กล้องที่รองรับ 10 บิตขึ้นไปและรองรับ ISP ที่เกี่ยวข้อง โปรดดูรายละเอียดเกี่ยวกับข้อกำหนดความเข้ากันได้ที่เกี่ยวข้องสำหรับการรองรับ 10 บิตที่ส่วน 7.5 กล้องใน CDD

การใช้งาน

หากต้องการรองรับเอาต์พุตกล้อง 10 บิต ผู้ผลิตอุปกรณ์ต้องทำการผสานรวม Camera AIDL HAL ต่อไปนี้

  • ใส่ ANDROID_REQUEST_AVAILABLE_CAPABILITIES_DYNAMIC_RANGE_TEN_BIT ในความสามารถของกล้อง
  • ป้อนข้อมูล ANDROID_REQUEST_AVAILABLE_DYNAMIC_RANGE_PROFILES_MAP ด้วยโปรไฟล์ช่วงไดนามิกที่รองรับทั้งหมดและบิตแมปของข้อจำกัด อุปกรณ์ต้องรองรับโปรไฟล์ HLG10 นอกจากนี้ คุณยังต้องใส่โปรไฟล์ช่วงไดนามิกที่แนะนำเพื่อแจ้งให้โปรแกรมรับส่งอีเมลของกล้องทราบถึงรูปแบบที่รองรับซึ่งดีที่สุด
  • ตรวจสอบว่ารองรับค่าโปรไฟล์ช่วงไดนามิกระหว่างการกำหนดค่าสตรีมสำหรับสตรีมที่ใช้รูปแบบ P010 หรือรองรับรูปแบบที่กําหนดโดยการใช้งาน (ImageFormat.PRIVATE)
  • ตั้งค่าบัฟเฟอร์ข้อมูลเมตาแบบคงที่หรือแบบไดนามิกของบัฟเฟอร์ Gralloc 4 ที่ประมวลผลแล้วก่อนแจ้งบริการกล้อง โดยขึ้นอยู่กับโปรไฟล์ช่วงไดนามิก

ดูรายละเอียดเพิ่มเติมเกี่ยวกับเอาต์พุตกล้อง 10 บิตใน HAL ของกล้องได้ที่หัวข้อต่อไปนี้ใน metadata_definitions.xml

ดูข้อมูลอ้างอิงเกี่ยวกับการใช้งาน Camera HAL ที่รองรับเอาต์พุตกล้อง 10 บิตได้ที่ /hardware/google/camera/devices/EmulatedCamera/hwl

การตรวจสอบความถูกต้อง

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

สำหรับการยืนยันภาพเอาต์พุตของกล้อง 10 บิต ระบบจะถือว่าอุปกรณ์รองรับการแสดงผล HDR (จอแสดงผลที่ความสว่างมากกว่า 1,000 นิต) และแอปดูวิดีโอ (เช่น Google Photos) รองรับการเล่นวิดีโอ HDR

ทดสอบความถูกต้องของฟังก์ชันการทํางานของ API

หากต้องการทดสอบความถูกต้องของฟังก์ชัน API สำหรับเอาต์พุตกล้อง 10 บิต ให้ทำการทดสอบ CTS, ITS ของกล้อง และ VTS ต่อไปนี้

เปรียบเทียบกล้องในตัวกับแอปของบุคคลที่สาม

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

ฉากที่แนะนําสําหรับการเปรียบเทียบ

หากต้องการเปรียบเทียบระหว่างแอปกล้องในตัวกับแอปของบุคคลที่สาม ให้บันทึกวิดีโอโดยใช้ฉากต่างๆ หลายฉากด้วยทั้งแอปกล้องในตัวและแอปตัวอย่าง Camera2Video ฉากที่แนะนําให้ใช้เปรียบเทียบมีดังนี้

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

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

เปรียบเทียบช่วงไดนามิกมาตรฐานกับช่วงไดนามิกสูง

โปรดตรวจสอบว่าการใช้โปรไฟล์ช่วงไดนามิก 10 บิตให้ประโยชน์มากกว่าโปรไฟล์ช่วงไดนามิกมาตรฐานหรือไม่ โดยเปรียบเทียบวิดีโอที่บันทึกโดยใช้ SDR (ไม่มีโปรไฟล์ HDR) กับวิดีโอ HDR เพื่อยืนยันว่าแง่มุมหลักของ HDR ปรากฏในวิดีโอที่บันทึก หากต้องการเปรียบเทียบ SDR กับ HDR ให้ใช้แอปตัวอย่าง Camera2Video และฉากที่แนะนำเพื่อเปรียบเทียบแอปกล้องในตัวกับแอปของบุคคลที่สาม

ต่อไปนี้คือแง่มุมสำคัญที่ต้องยืนยันในฉากที่แนะนำ แผงแสดงผลที่รองรับ HDR มีความสว่างแตกต่างกันไป (วัดเป็นนิตหรือลูเมน) ดังนั้นตัวเลขต่อไปนี้เป็นเพียงตัวอย่าง

  • ในฉากที่มีแสงปานกลางถึงแสงน้อย ระบบจะแสดงผลไฮไลต์ที่สว่างของเทียนหรือแสงขนาดเล็กที่ความสว่างสูงสุดสำหรับจอแสดงผล (อาจสูงถึง 1,000 นิต) ในคลิป HDR และแสดงผลที่ความสว่างสูงสุดสำหรับ SDR (ประมาณ 100 นิต) ในคลิป SDR ในคลิป HDR ไฮไลต์ที่สว่างควรโดดเด่นบนจอแสดงผล ซึ่งจะสื่อถึงสิ่งที่ผู้ใช้รับรู้เกี่ยวกับช่วงไดนามิกจริงของฉาก เมื่อเทียบกับคลิป HDR คลิป SDR ควรปรากฏว่าเรียบและสว่างน้อยกว่า
  • ในฉากเอาต์พุตที่สว่าง คลิป HDR จะแสดงความสว่างของหน้าจอที่แตกต่างอย่างชัดเจนเมื่อเทียบกับคลิป SDR ทั้งนี้ขึ้นอยู่กับการปรับแต่งของอุปกรณ์ สำหรับคลิป HDR ความสว่างของหน้าจอสำหรับฉากโดยรวม (ขึ้นอยู่กับ Headroom) ควรสูงกว่า เช่น สูงสุด 800 นิต และยิ่งกว่านั้นสำหรับไฮไลต์ที่สว่าง เช่น กันชนโครเมียม ควรมีความสว่างสูงสุด
  • ในการจับภาพช่วงไดนามิกต่ำระดับกลางในอาคาร คลิป HDR และ SDR จะมีสีและโทนคล้ายกัน โดยคลิป HDR อาจสว่างกว่า SDR HDR ต้องไม่มืดกว่า SDR หากการปรับแต่งตัวเลือกทำให้การดำเนินการนี้ไม่สามารถทำได้ ให้ตรวจสอบว่าลักษณะการทํางานของแอปของบุคคลที่สามตรงกับลักษณะการทํางานของแอปกล้องเนทีฟ