Ссылка на структуру camera3_capture_request

Ссылка на структуру camera3_capture_request

#include < camera3.h >

Поля данных

uint32_t номер_фрейма
const camera_metadata_t * настройки
camera3_stream_buffer_t * входной_буфер
uint32_t num_output_buffers
константная камера3_stream_buffer_t * выходные_буферы

Подробное описание

camera3_capture_request_t:

Одиночный запрос на захват изображения/обработку буфера, отправленный на устройство HAL камеры платформой вprocess_capture_request().

Запрос содержит настройки, которые будут использоваться для этого захвата, и набор выходных буферов для записи результирующих данных изображения. Он может дополнительно содержать входной буфер, и в этом случае запрос предназначен для повторной обработки этого входного буфера вместо захвата нового. изображение с сенсора камеры. Захват идентифицируется номером кадра.

В ответ устройство HAL камеры должно асинхронно отправить структуру camera3_capture_result в платформу, используя обратный вызовprocess_capture_result().

Определение в строке 2135 файла camera3.h .

Полевая документация

uint32_t номер_фрейма

Номер кадра — это возрастающее целое число, установленное платформой для уникальной идентификации этого захвата. Его необходимо вернуть в результате вызова, а также он используется для идентификации запроса в асинхронных уведомлениях, отправляемых в camera3_callback_ops_t.notify() .

Определение в строке 2142 файла camera3.h .

Буфер входного потока, который будет использоваться для этого запроса, если таковой имеется.

Если input_buffer имеет значение NULL, то запрашивается новый захват с имидж-сканера. Если input_buffer действителен, запрос предназначен для повторной обработки изображения, содержащегося в input_buffer.

В последнем случае HAL должен установить для Release_fence входного_буфера допустимое ограничение синхронизации или значение -1, если HAL не поддерживает синхронизацию, прежде чем процесс_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 в выходных_буферах; платформа не получает к ним доступа, пока они не будут возвращены в 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 * настройки

Буфер настроек содержит параметры захвата и обработки запроса. В частном случае буфер настроек NULL указывает, что настройки идентичны настройкам последнего отправленного запроса на захват. Буфер NULL не может использоваться в качестве первого отправленного запроса после вызова configure_streams().

Определение в строке 2151 файла camera3.h .


Документация для этой структуры была создана из следующего файла:
  • Аппаратное обеспечение/libhardware/include/hardware/ camera3.h