Язык

CameraDevice.CreateExtensionSession(ExtensionSessionConfiguration) Метод

Определение

Инициализация определенного расширения для конкретного устройства дополненного сеанса захвата камеры.

[Android.Runtime.Register("createExtensionSession", "(Landroid/hardware/camera2/params/ExtensionSessionConfiguration;)V", "GetCreateExtensionSession_Landroid_hardware_camera2_params_ExtensionSessionConfiguration_Handler", ApiSince=31)]
public virtual void CreateExtensionSession(Android.Hardware.Camera2.Params.ExtensionSessionConfiguration extensionConfiguration);
[<Android.Runtime.Register("createExtensionSession", "(Landroid/hardware/camera2/params/ExtensionSessionConfiguration;)V", "GetCreateExtensionSession_Landroid_hardware_camera2_params_ExtensionSessionConfiguration_Handler", ApiSince=31)>]
abstract member CreateExtensionSession : Android.Hardware.Camera2.Params.ExtensionSessionConfiguration -> unit
override this.CreateExtensionSession : Android.Hardware.Camera2.Params.ExtensionSessionConfiguration -> unit

Параметры

extensionConfiguration
ExtensionSessionConfiguration

Конфигурация расширения

Атрибуты

Комментарии

Инициализация определенного расширения для конкретного устройства дополненного сеанса захвата камеры.

Сеансы расширения можно использовать для включения режимов операций для конкретного устройства, таких как CameraExtensionCharacteristics#EXTENSION_NIGHT или CameraExtensionCharacteristics#EXTENSION_HDR. Эти режимы менее гибки, чем полный API камеры, но обеспечивают доступ к более сложным алгоритмам обработки, которые могут захватывать многокадровые всплески для создания однократных выходных изображений. Запрос доступных расширений на этом вызове CameraExtensionCharacteristics#getSupportedExtensions()устройства.

Этот метод также активирует настройку внутреннего конвейера обработки для расширения дополненной предварительной версии и многокадрового захвата.

Если предыдущий оператор CameraCaptureSession уже существует при вызове этого метода, предыдущий сеанс больше не сможет принимать новые запросы на запись и будет закрыт. Все запросы на запись в ходе выполнения, сделанные на предыдущем сеансе, будут завершены до его закрытия.

CameraExtensionSession будет активным, пока клиент не вызовет CameraExtensionSession.close() или создает новый сеанс захвата камеры. В обоих случаях все внутренние ресурсы будут освобождены, непрерывно повторяющиеся запросы остановлены и все ожидающие многокадровые запросы записи удалены.

Обратите внимание, что в настоящее время CameraExtensionSession поддерживает в большинстве форматов поверхности захвата многокадровых кадров: ImageFormat.JPEG будет поддерживаться всеми расширениями и ImageFormat.YUV_420_888 может или не поддерживаться. Клиенты должны запрашивать поддержку формата записи с несколькими кадрами с помощью CameraExtensionCharacteristics#getExtensionSupportedSizes(int, int). Для повторяющихся запросов CameraExtensionSession поддерживается только android.graphics.SurfaceTexture в качестве выходных данных. Клиенты могут запрашивать поддерживаемую резолюцию для повторяющихся выходных данных запроса с помощью CameraExtensionCharacteristics#getExtensionSupportedSizes(int, Class) getExtensionSupportedSizes(..., Class).

По крайней мере инициализация ожидает либо одну допустимую выходную поверхность для повторения, либо одного допустимого вывода для высококачественных отдельных запросов, зарегистрированных в аргументе выходных данных аргумента конфигурации расширения. При максимальной инициализации будут приниматься две допустимые выходные поверхности, одна для повторения и другая для отдельных запросов. Дополнительные неподдерживаемые поверхности, передаваемые в ExtensionSessionConfiguration, вызывают IllegalArgumentException исключение.

Java документации по android.hardware.camera2.CameraDevice.createExtensionSession(android.hardware.camera2.params.ExtensionSessionConfiguration).

Части этой страницы — это изменения на основе работы, созданной и общей Project и используемых в соответствии с условиями, описанными в разделе "".

Применяется к