สำหรับอุปกรณ์ที่ใช้ 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 บิต ผู้ผลิตอุปกรณ์ต้องทำการผสานรวม HAL ของ AIDL สำหรับกล้องต่อไปนี้
- รวม
ANDROID_REQUEST_AVAILABLE_CAPABILITIES_DYNAMIC_RANGE_TEN_BIT
ใน ความสามารถของกล้อง - ป้อนข้อมูล
ANDROID_REQUEST_AVAILABLE_DYNAMIC_RANGE_PROFILES_MAP
ด้วยโปรไฟล์ช่วงไดนามิกที่รองรับทั้งหมด และบิตแมปของข้อจำกัด ต้องรองรับโปรไฟล์HLG10
นอกจากนี้ คุณต้องใส่โปรไฟล์ช่วงไดนามิกที่แนะนำด้วยเพื่อแจ้งให้ไคลเอ็นต์กล้องทราบถึงรูปแบบที่รองรับที่เหมาะสมที่สุด - ตรวจสอบว่ารองรับค่าโปรไฟล์ช่วงไดนามิกในระหว่างการกำหนดค่าสตรีมสำหรับสตรีมที่ใช้รูปแบบ P010 หรือรองรับรูปแบบที่กำหนดการใช้งาน (
ImageFormat.PRIVATE
) - ตั้งค่าบัฟเฟอร์ข้อมูลเมตาแบบคงที่หรือแบบไดนามิกของบัฟเฟอร์ Gralloc 4 ที่ประมวลผลแล้วก่อนแจ้งบริการกล้อง โดยขึ้นอยู่กับโปรไฟล์ช่วงไดนามิก
ดูรายละเอียดเพิ่มเติมเกี่ยวกับเอาต์พุตกล้อง 10 บิตใน Camera HAL ได้ที่
ส่วนต่อไปนี้ใน metadata_definitions.xml
DYNAMIC_RANGE_TEN_BIT
- รายละเอียด HAL สำหรับ
availableDynamicRangeProfilesMap
recommendedTenBitDynamicRangeProfile
10BIT_OUTPUT
ดูการใช้งาน HAL ของกล้องอ้างอิงที่รองรับเอาต์พุตกล้อง 10 บิตได้ที่
/hardware/google/camera/devices/EmulatedCamera/hwl
การตรวจสอบความถูกต้อง
หากต้องการตรวจสอบการติดตั้งใช้งานเอาต์พุตกล้อง 10 บิตและตรวจสอบว่า แอปของบุคคลที่สามเปิดใช้ฟีเจอร์ได้ เราขอแนะนำให้ดำเนินการตรวจสอบ 3 ขั้นตอนต่อไปนี้
- ทดสอบความถูกต้องของฟังก์ชันการทำงานของ API
- เปรียบเทียบกล้องในตัวกับแอปของบุคคลที่สาม
- เปรียบเทียบช่วงไดนามิกมาตรฐานกับช่วงไดนามิกสูง
สำหรับการตรวจสอบเอาต์พุตกล้อง 10 บิตด้วยภาพ ระบบจะถือว่าอุปกรณ์ รองรับการแสดง HDR (จอแสดงผล 1000+ นิต) และแอปดูวิดีโอ (เช่น Google Photos) รองรับการเล่นวิดีโอ HDR
ทดสอบความถูกต้องในการทำงานของ API
หากต้องการทดสอบความถูกต้องของฟังก์ชัน API ของเอาต์พุตกล้อง 10 บิต ให้เรียกใช้การทดสอบ CTS, ITS กล้อง และ VTS ต่อไปนี้
hardware/interfaces/camera/provider/aidl/vts/
: ทดสอบการค้นพบ การกำหนดค่า และการสตรีมขั้นพื้นฐาน รวมถึงตรวจสอบ การมีอยู่ของข้อมูลเมตา HDR ในกรณีที่จำเป็นtests/camera/src/android/hardware/camera2/cts/
: ช่วยให้มั่นใจว่ากล้องจะทำงานตามข้อกำหนด API ของ AOSPcts/apps/CameraITS
: ยืนยันว่าลักษณะการทำงานทั่วไปของวิดีโอจะสอดคล้องกันเมื่อใช้โปรไฟล์ HDR การทดสอบที่เฉพาะเจาะจงคือtests/scene4/test_video_aspect_ratio_and_crop.py
เปรียบเทียบกล้องในตัวกับแอปของบุคคลที่สาม
เราขอแนะนำอย่างยิ่งให้ตรวจสอบว่าผลลัพธ์ของการบันทึกวิดีโอ 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 ความสว่างของหน้าจอสำหรับฉากโดยรวม (ขึ้นอยู่กับพื้นที่ว่าง) ควรสูงขึ้น เช่น สูงสุด 800 นิต และ ยิ่งสูงขึ้นสำหรับไฮไลต์ที่สว่าง เช่น กันชนโครเมียม ซึ่งมีความสว่าง สูงสุด
- ในการจับภาพในอาคารที่มีช่วงไดนามิกต่ำระดับกลาง คลิป HDR และ SDR จะมีสีและโทนคล้ายกัน โดยการจับภาพ HDR อาจสว่างกว่า SDR HDR ไม่ควรเข้มกว่า SDR หากการเลือกการปรับแต่งทำให้ทำเช่นนี้ไม่ได้ โปรดตรวจสอบว่าลักษณะการทำงานของแอปของบุคคลที่สาม ตรงกับลักษณะการทำงานของแอปกล้องดั้งเดิม