Метаданные и элементы управления

Поддержка метаданных

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

Большая часть этой информации является статическим свойством подсистемы камеры и поэтому может быть запрошена перед настройкой выходных конвейеров или отправкой каких-либо запросов. Новые API-интерфейсы камеры значительно расширяют информацию, предоставляемую методом getCameraInfo() , для предоставления этой информации приложению.

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

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

Поэтому, если приложению необходимо реализовать специальную процедуру 3A (например, для правильного измерения HDR-пакета), ему необходимо знать настройки, используемые для захвата последнего набора полученных результатов, чтобы обновить настройки для следующего запроса. Таким образом, новый API камеры добавляет значительный объем динамических метаданных к каждому захваченному кадру. Сюда входят запрошенные и фактические параметры, используемые для захвата, а также дополнительные метаданные для каждого кадра, такие как временные метки и выходные данные генератора статистики.

Индивидуальное управление

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

Поддержка необработанных данных датчиков

В дополнение к форматам пикселей, поддерживаемым старым API, новый API добавляет требование поддержки необработанных данных датчика (Bayer RAW) как для расширенных приложений камеры, так и для поддержки файлов необработанных изображений.