Android APIs
public static final class

CaptureRequest.Builder

extends Object
java.lang.Object
   ↳ android.hardware.camera2.CaptureRequest.Builder

Class Overview

A builder for capture requests.

To obtain a builder instance, use the createCaptureRequest(int) method, which initializes the request fields to one of the templates defined in CameraDevice.

Summary

Public Methods
void addTarget(Surface outputTarget)

Add a surface to the list of targets for this request

The Surface added must be one of the surfaces included in the most recent call to createCaptureSession(List, CameraCaptureSession.StateListener, Handler), when the request is given to the camera device.

CaptureRequest build()
Build a request using the current target Surfaces and settings.
<T> T get(Key<T> key)
Get a capture request field value.
void removeTarget(Surface outputTarget)

Remove a surface from the list of targets for this request.

<T> void set(Key<T> key, T value)
Set a capture request field to a value.
void setTag(Object tag)
Set a tag for this request.
[Expand]
Inherited Methods
From class java.lang.Object

Public Methods

public void addTarget (Surface outputTarget)

Add a surface to the list of targets for this request

The Surface added must be one of the surfaces included in the most recent call to createCaptureSession(List, CameraCaptureSession.StateListener, Handler), when the request is given to the camera device.

Adding a target more than once has no effect.

Parameters
outputTarget Surface to use as an output target for this request

public CaptureRequest build ()

Build a request using the current target Surfaces and settings.

Returns
  • A new capture request instance, ready for submission to the camera device.

public T get (Key<T> key)

Get a capture request field value. The field definitions can be found in CaptureRequest.

Parameters
key The metadata field to read.
Returns
  • The value of that key, or null if the field is not set.
Throws
IllegalArgumentException if the key was not valid

public void removeTarget (Surface outputTarget)

Remove a surface from the list of targets for this request.

Removing a target that is not currently added has no effect.

Parameters
outputTarget Surface to use as an output target for this request

public void set (Key<T> key, T value)

Set a capture request field to a value. The field definitions can be found in CaptureRequest.

Parameters
key The metadata field to write.
value The value to set the field to, which must be of a matching type to the key.

public void setTag (Object tag)

Set a tag for this request.

This tag is not used for anything by the camera device, but can be used by an application to easily identify a CaptureRequest when it is returned by CaptureListener.onCaptureCompleted

Parameters
tag an arbitrary Object to store with this request
See Also