ข้อมูลอ้างอิง Struct camera3_capture_request

ข้อมูลอ้างอิง Struct camera3_capture_request

#include < camera3.h >

ฟิลด์ข้อมูล

uint32_t  frame_number
 
const camera_metadata_t settings
 
camera3_stream_buffer_t input_buffer
 
uint32_t  num_output_buffers
 
const camera3_stream_buffer_t output_buffers
 

คำอธิบายโดยละเอียด

camera3_capture_request_t:

คำขอเดียวสำหรับการจับภาพ/การประมวลผลบัฟเฟอร์อีกครั้ง ซึ่งเฟรมเวิร์กส่งไปยังอุปกรณ์ HAL ของกล้องใน process_capture_request()

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

อุปกรณ์ HAL ของกล้องต้องส่งโครงสร้าง camera3_capture_result แบบแอซิงโครนัสไปยังเฟรมเวิร์กโดยใช้การเรียกกลับ process_capture_result()

คําจํากัดความที่บรรทัด 2135 ของไฟล์ camera3.h .

เอกสารประกอบในสนาม

uint32_t frame_number

หมายเลขเฟรมคือจำนวนเต็มแบบเพิ่มค่าที่เฟรมเวิร์กตั้งค่าไว้เพื่อระบุการจับภาพนี้โดยไม่ซ้ำกัน โดยจะต้องส่งคืนในการเรียกผลลัพธ์ และจะใช้เพื่อระบุคำขอในการแจ้งเตือนแบบไม่พร้อมกันที่ส่งไปยัง camera3_callback_ops_t.notify() ด้วย

คําจํากัดความที่บรรทัด 2142 ของไฟล์ camera3.h .

บัฟเฟอร์สตรีมอินพุตที่จะใช้กับคำขอนี้ (หากมี)

หาก input_buffer เป็น NULL แสดงว่าคำขอเป็นการจับภาพใหม่จากเครื่องมือจับภาพ หาก input_buffer ถูกต้อง คำขอจะเป็นการส่งผ่านเพื่อประมวลผลรูปภาพที่อยู่ใน input_buffer อีกครั้ง

ในกรณีหลัง HAL ต้องตั้งค่า release_fence ของ input_buffer เป็น Sync Fence ที่ถูกต้อง หรือเป็น -1 หาก HAL ไม่รองรับการซิงค์ ก่อน process_capture_request() จะแสดงผล

HAL ต้องรอที่รั้วการซิงค์การครอบครองของบัฟเฟอร์อินพุตก่อนที่จะเข้าถึง

<= CAMERA_DEVICE_API_VERSION_3_1:

บัฟเฟอร์อินพุตที่รวมอยู่ที่นี่จะได้รับการลงทะเบียนกับ HAL ผ่าน register_stream_buffers() ก่อนที่จะรวมไว้ในคำขอ

>= CAMERA_DEVICE_API_VERSION_3_2:

บัฟเฟอร์จะไม่ได้ลงทะเบียนไว้ล่วงหน้ากับ HAL คำขอที่ตามมาอาจใช้บัฟเฟอร์ซ้ำหรือระบุบัฟเฟอร์ใหม่ทั้งหมดก็ได้

คําจํากัดความที่บรรทัด 2177 ของไฟล์ camera3.h .

uint32_t num_output_buffers

จำนวนบัฟเฟอร์เอาต์พุตสำหรับคำขอบันทึกนี้ ต้องมีจำนวนอย่างน้อย 1

คําจํากัดความที่บรรทัด 2183 ของไฟล์ camera3.h .

const camera3_stream_buffer_t * output_buffers

อาร์เรย์ของบัฟเฟอร์สตรีม num_output_buffers เพื่อบรรจุข้อมูลรูปภาพจากการจับภาพ/ประมวลผลอีกครั้งนี้ HAL ต้องรอการกําหนดเขตการจองของบัฟเฟอร์สตรีมแต่ละรายการก่อนที่จะเขียนข้อมูลลงในบัฟเฟอร์

HAL จะเป็นเจ้าของรายการ buffer_handle_t จริงใน output_buffers โดยเฟรมเวิร์กจะไม่เข้าถึงรายการดังกล่าวจนกว่าระบบจะแสดงผลใน camera3_capture_result_t

<= CAMERA_DEVICE_API_VERSION_3_1:

บัฟเฟอร์ทั้งหมดที่รวมอยู่ที่นี่จะได้รับการลงทะเบียนกับ HAL ผ่าน register_stream_buffers() ก่อนที่จะรวมไว้ในคำขอ

>= CAMERA_DEVICE_API_VERSION_3_2:

บัฟเฟอร์ใดๆ หรือทั้งหมดที่รวมอยู่ที่นี่อาจเป็นบัฟเฟอร์ใหม่ในคำขอนี้ (HAL ไม่เคยเห็นมาก่อน)

คําจํากัดความที่บรรทัด 2204 ของไฟล์ camera3.h .

const camera_metadata_t * settings

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

คําจํากัดความที่บรรทัด 2151 ของไฟล์ camera3.h .


เอกสารประกอบสำหรับโครงสร้างนี้สร้างขึ้นจากไฟล์ต่อไปนี้