Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels) Summary: [Ctors](https://developer.android.com/reference/android/media/quality/PictureProfile.Builder#pubctors) \| [Methods](https://developer.android.com/reference/android/media/quality/PictureProfile.Builder#pubmethods) \| [Inherited Methods](https://developer.android.com/reference/android/media/quality/PictureProfile.Builder#inhmethods)

# PictureProfile.Builder

*** ** * ** ***

` public static final class PictureProfile.Builder `   
` extends https://developer.android.com/reference/java/lang/Object ` ` `

|---|---|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object) ||
| ↳ | android.media.quality.PictureProfile.Builder |

<br />

*** ** * ** ***

A builder for `https://developer.android.com/reference/android/media/quality/PictureProfile`.

## Summary

| ### Public constructors ||
|---|---|
| ` https://developer.android.com/reference/android/media/quality/PictureProfile.Builder#Builder(android.media.quality.PictureProfile)(https://developer.android.com/reference/android/media/quality/PictureProfile p) ` Copy constructor of builder. |
| ` https://developer.android.com/reference/android/media/quality/PictureProfile.Builder#Builder(java.lang.String)(https://developer.android.com/reference/java/lang/String name) ` Creates a new Builder. |

| ### Public methods ||
|---|---|
| ` https://developer.android.com/reference/android/media/quality/PictureProfile.Builder` | ` https://developer.android.com/reference/android/media/quality/PictureProfile.Builder#addStreamStatusVariant(java.lang.String,%20android.os.PersistableBundle)(https://developer.android.com/reference/java/lang/String status, https://developer.android.com/reference/android/os/PersistableBundle params) ` Adds a stream status variant parameter set. |
| ` https://developer.android.com/reference/android/media/quality/PictureProfile` | ` https://developer.android.com/reference/android/media/quality/PictureProfile.Builder#build()() ` Builds the instance. |
| ` https://developer.android.com/reference/android/media/quality/PictureProfile.Builder` | ` https://developer.android.com/reference/android/media/quality/PictureProfile.Builder#setParameters(android.os.PersistableBundle)(https://developer.android.com/reference/android/os/PersistableBundle params) ` Sets profile parameters. |

### Inherited methods

From class ` https://developer.android.com/reference/java/lang/Object ` ` https://developer.android.com/reference/java/lang/Object` ` https://developer.android.com/reference/java/lang/Object#clone()() `

Creates and returns a copy of this object.
` boolean` ` https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object)(https://developer.android.com/reference/java/lang/Object obj) `

Indicates whether some other object is "equal to" this one.
` void` ` https://developer.android.com/reference/java/lang/Object#finalize()() `

Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.
` final https://developer.android.com/reference/java/lang/Class<?>` ` https://developer.android.com/reference/java/lang/Object#getClass()() `

Returns the runtime class of this `Object`.
` int` ` https://developer.android.com/reference/java/lang/Object#hashCode()() `

Returns a hash code value for the object.
` final void` ` https://developer.android.com/reference/java/lang/Object#notify()() `

Wakes up a single thread that is waiting on this object's monitor.
` final void` ` https://developer.android.com/reference/java/lang/Object#notifyAll()() `

Wakes up all threads that are waiting on this object's monitor.
` https://developer.android.com/reference/java/lang/String` ` https://developer.android.com/reference/java/lang/Object#toString()() `

Returns a string representation of the object.
` final void` ` https://developer.android.com/reference/java/lang/Object#wait(long,%20int)(long timeoutMillis, int nanos) `

Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*, or until a certain amount of real time has elapsed.
` final void` ` https://developer.android.com/reference/java/lang/Object#wait(long)(long timeoutMillis) `

Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*, or until a certain amount of real time has elapsed.
` final void` ` https://developer.android.com/reference/java/lang/Object#wait()() `

Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*.

## Public constructors

### Builder

Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public Builder (PictureProfile p)
```

Copy constructor of builder.

<br />

| Parameters ||
|---|---|
| `p` | `PictureProfile` <br /> |

### Builder

Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public Builder (String name)
```

Creates a new Builder.

<br />

| Parameters ||
|---|---|
| `name` | `String` <br /> |

## Public methods

### addStreamStatusVariant

Added in [API level 37](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public PictureProfile.Builder addStreamStatusVariant (String status, 
                PersistableBundle params)
```

Adds a stream status variant parameter set. \*

Use this to define overrides for specific stream statuses (e.g., HDR10). These parameters will be applied by the HAL when the specific stream status is detected.

<br />

| Parameters ||
|---|---|
| `status` | `String`: The stream status string (e.g., `https://developer.android.com/reference/android/media/quality/MediaQualityContract#STREAM_STATUS_HDR10`). Value is one of the following: - `https://developer.android.com/reference/android/media/quality/MediaQualityContract#STREAM_STATUS_SDR` - `https://developer.android.com/reference/android/media/quality/MediaQualityContract#STREAM_STATUS_DOLBY_VISION` - `https://developer.android.com/reference/android/media/quality/MediaQualityContract#STREAM_STATUS_HDR10` - `https://developer.android.com/reference/android/media/quality/MediaQualityContract#STREAM_STATUS_TCH` - `https://developer.android.com/reference/android/media/quality/MediaQualityContract#STREAM_STATUS_HLG` - `https://developer.android.com/reference/android/media/quality/MediaQualityContract#STREAM_STATUS_HDR10_PLUS` - `https://developer.android.com/reference/android/media/quality/MediaQualityContract#STREAM_STATUS_HDR_VIVID` - `https://developer.android.com/reference/android/media/quality/MediaQualityContract#STREAM_STATUS_IMAX_SDR` - `https://developer.android.com/reference/android/media/quality/MediaQualityContract#STREAM_STATUS_IMAX_HDR10` - `https://developer.android.com/reference/android/media/quality/MediaQualityContract#STREAM_STATUS_IMAX_HDR10_PLUS` - `https://developer.android.com/reference/android/media/quality/MediaQualityContract#STREAM_STATUS_FMM_SDR` - `https://developer.android.com/reference/android/media/quality/MediaQualityContract#STREAM_STATUS_FMM_HDR10` - `https://developer.android.com/reference/android/media/quality/MediaQualityContract#STREAM_STATUS_FMM_HDR10_PLUS` - `https://developer.android.com/reference/android/media/quality/MediaQualityContract#STREAM_STATUS_FMM_HLG` - `https://developer.android.com/reference/android/media/quality/MediaQualityContract#STREAM_STATUS_HDR10_PLUS` - `https://developer.android.com/reference/android/media/quality/MediaQualityContract#STREAM_STATUS_FMM_DOLBY` - `https://developer.android.com/reference/android/media/quality/MediaQualityContract#STREAM_STATUS_FMM_TCH` - `https://developer.android.com/reference/android/media/quality/MediaQualityContract#STREAM_STATUS_FMM_HDR_VIVID` - `https://developer.android.com/reference/android/media/quality/MediaQualityContract#STREAM_STATUS_UNKNOWN` |
| `params` | `PersistableBundle`: The parameters to apply for this status. The keys of commonly used parameters can be found in `https://developer.android.com/reference/android/media/quality/MediaQualityContract.PictureQuality`. <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/media/quality/PictureProfile.Builder` | <br /> |

### build

Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public PictureProfile build ()
```

Builds the instance.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/media/quality/PictureProfile` | <br /> |

### setParameters

Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public PictureProfile.Builder setParameters (PersistableBundle params)
```

Sets profile parameters.

<br />

| Parameters ||
|---|---|
| `params` | `PersistableBundle` <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/media/quality/PictureProfile.Builder` | <br /> |

**See also:**

- `https://developer.android.com/reference/android/media/quality/PictureProfile#getParameters()`