На этой странице описаны поддержка метаданных, настройки отдельных параметров и поддержка необработанных данных датчиков.
Поддержка метаданных
Чтобы платформа Android могла сохранять необработанные графические файлы, требуется значительный объем метаданных о характеристиках датчика. в том числе цветовые пространства и функции затенения линз.
Большая часть этой информации является статическим свойством подсистемы камеры, поэтому ее можно запросить до настройки каких-либо выходных каналов или отправки каких-либо запросов. Новые API камеры значительно расширяют информацию, предоставляемую методом getCameraInfo, чтобы передавать ее приложению.
Кроме того, для ручного управления подсистемой камеры требуется получать от различных устройств информацию об их текущем состоянии и фактических параметрах, использованных при съемке определенного кадра. Фактические значения настроек (время экспозиции, длительность кадра и чувствительность), которые использовались оборудованием, должны быть включены в выходные метаданные. Это необходимо, чтобы приложения знали, когда произошло ограничение или округление, и могли компенсировать реальные настройки, используемые для фотосъемки.
Например, если приложение задает в запросе длительность кадра, равную 0, HAL должен ограничить ее реальной минимальной длительностью кадра для этого запроса и сообщить об этом в метаданных результата.
Поэтому, если приложению нужно реализовать собственную процедуру 3A (например, чтобы правильно измерить параметры для серийной съемки в формате HDR), оно должно знать настройки, использованные для получения последнего набора результатов, чтобы обновить настройки для следующего запроса. Поэтому новый API камеры добавляет значительный объем динамических метаданных к каждому захваченному кадру. Это включает в себя запрошенные и фактические параметры, используемые для захвата, а также дополнительные метаданные для каждого кадра, такие как временные метки и выходные данные генератора статистики.
Управление отдельными настройками
Большинство настроек можно менять для каждого кадра, не вызывая значительных задержек или прерываний в потоке выходных кадров. В идеале частота кадров на выходе должна контролироваться исключительно полем длительности кадра в запросе на захват и не зависеть от каких-либо изменений в конфигурации блоков обработки. На самом деле некоторые параметры меняются медленно. К ним относятся разрешение и формат выходных данных камеры, а также настройки, влияющие на физические устройства, например фокусное расстояние объектива. Точные требования к каждому набору элементов управления описаны ниже.
Поддержка необработанных данных датчиков
В дополнение к форматам пикселей, поддерживаемым старым API, новый API добавляет требование поддержки необработанных данных датчиков (Bayer RAW) как для продвинутых приложений камеры, так и для поддержки необработанных графических файлов.