Tham chiếu cấu trúc camera3_capture_request

Tham chiếu cấu trúc camera3_capture_request

#include < camera3.h >

Trường dữ liệu

uint32_t  frame_number
 
const camera_metadata_t chế độ cài đặt
 
camera3_stream_buffer_t input_buffer
 
uint32_t  num_output_buffers
 
const camera3_stream_buffer_t output_buffers
 

Nội dung mô tả chi tiết

camera3_capture_request_t:

Một yêu cầu duy nhất để chụp ảnh/xử lý lại vùng đệm, được khung gửi đến thiết bị HAL của Máy ảnh trong process_capture_request().

Yêu cầu này chứa các chế độ cài đặt sẽ được dùng cho quá trình chụp này và tập hợp vùng đệm đầu ra để ghi dữ liệu hình ảnh thu được. Tệp này có thể chứa bộ đệm đầu vào (không bắt buộc). Trong trường hợp này, yêu cầu là để xử lý lại bộ đệm đầu vào đó thay vì chụp ảnh mới bằng cảm biến máy ảnh. Lần chụp được xác định bằng frame_number.

Để phản hồi, thiết bị HAL của máy ảnh phải gửi cấu trúc camera3_capture_result không đồng bộ đến khung bằng lệnh gọi lại process_capture_result().

Định nghĩa tại dòng 2135 của tệp camera3.h .

Tài liệu về trường

uint32_t frame_number

Số khung hình là một số nguyên tăng dần do khung đặt để xác định riêng biệt ảnh chụp này. Bạn cần trả về giá trị này trong lệnh gọi kết quả và cũng dùng để xác định yêu cầu trong thông báo không đồng bộ được gửi đến camera3_callback_ops_t.notify() .

Định nghĩa tại dòng 2142 của tệp camera3.h .

Vùng đệm luồng đầu vào để sử dụng cho yêu cầu này, nếu có.

Nếu input_buffer là NULL, thì yêu cầu là để chụp ảnh mới từ máy ảnh. Nếu input_buffer hợp lệ, yêu cầu này là để xử lý lại hình ảnh có trong input_buffer.

Trong trường hợp sau, HAL phải đặt release_fence của input_buffer thành một hàng rào đồng bộ hoá hợp lệ hoặc thành -1 nếu HAL không hỗ trợ đồng bộ hoá, trước khi process_capture_request() trả về.

HAL bắt buộc phải đợi hàng rào đồng bộ hoá thu nạp của vùng đệm đầu vào trước khi truy cập vào vùng đệm đó.

<= CAMERA_DEVICE_API_VERSION_3_1:

Mọi vùng đệm đầu vào có trong đây sẽ được đăng ký với HAL thông qua register_stream_buffers() trước khi đưa vào yêu cầu.

>= CAMERA_DEVICE_API_VERSION_3_2:

Các vùng đệm sẽ không được đăng ký trước với HAL. Các yêu cầu tiếp theo có thể sử dụng lại vùng đệm hoặc cung cấp vùng đệm hoàn toàn mới.

Định nghĩa tại dòng 2177 của tệp camera3.h .

uint32_t num_output_buffers

Số lượng vùng đệm đầu ra cho yêu cầu chụp này. Phải có ít nhất 1.

Định nghĩa tại dòng 2183 của tệp camera3.h .

const camera3_stream_buffer_t * output_buffers

Một mảng các vùng đệm luồng num_output_buffers, được điền bằng dữ liệu hình ảnh từ quá trình chụp/xử lý lại này. HAL phải đợi các hàng rào thu nạp của từng vùng đệm luồng trước khi ghi vào các vùng đệm đó.

HAL sở hữu các mục buffer_handle_t thực tế trong output_buffers; khung này không truy cập vào các mục đó cho đến khi các mục đó được trả về trong camera3_capture_result_t.

<= CAMERA_DEVICE_API_VERSION_3_1:

Tất cả vùng đệm có trong đây sẽ được đăng ký với HAL thông qua register_stream_buffers() trước khi được đưa vào yêu cầu.

>= CAMERA_DEVICE_API_VERSION_3_2:

Bất kỳ hoặc tất cả vùng đệm nào có trong đây đều có thể hoàn toàn mới trong yêu cầu này (HAL chưa từng thấy).

Định nghĩa tại dòng 2204 của tệp camera3.h .

const camera_metadata_t * settings

Vùng đệm cài đặt chứa các tham số chụp và xử lý cho yêu cầu. Trong trường hợp đặc biệt, bộ đệm cài đặt NULL cho biết rằng các chế độ cài đặt giống hệt với yêu cầu chụp gần đây nhất đã gửi. Bạn không thể sử dụng vùng đệm NULL làm yêu cầu đầu tiên được gửi sau lệnh gọi configure_streams().

Định nghĩa tại dòng 2151 của tệp camera3.h .


Tài liệu cho cấu trúc này được tạo từ tệp sau: