# EnhancementSessionDecorator.Builder

Artifact: [androidx.media3:media3-effect-play-services](https://developer.android.com/jetpack/androidx/releases/media3) [View Source](https://cs.android.com/search?q=file:androidx/media3/effect/playservices/EnhancementSessionDecorator.java+class:androidx.media3.effect.playservices.EnhancementSessionDecorator.Builder)

*** ** * ** ***


```
public final class EnhancementSessionDecorator.Builder
```

<br />

*** ** * ** ***

Builder for `https://developer.android.com/reference/androidx/media3/effect/playservices/EnhancementSessionDecorator` factories.

## Summary

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/media3/effect/playservices/EnhancementSessionDecorator.Builder#Builder(android.content.Context,androidx.media3.common.video.FrameProcessor.Factory)( https://developer.android.com/reference/android/content/Context.html context, https://developer.android.com/reference/androidx/media3/common/video/FrameProcessor.Factory baseFrameProcessorFactory )` Creates a builder with the specified context and base `https://developer.android.com/reference/androidx/media3/common/video/FrameProcessor.Factory`. |

| ### Public methods |
|---|---|
| `https://developer.android.com/reference/androidx/media3/effect/playservices/EnhancementSessionDecorator.Factory` | `https://developer.android.com/reference/androidx/media3/effect/playservices/EnhancementSessionDecorator.Builder#build()()` Builds the `https://developer.android.com/reference/androidx/media3/common/video/FrameProcessor.Factory`. |
| `https://developer.android.com/reference/androidx/media3/effect/playservices/EnhancementSessionDecorator.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/effect/playservices/EnhancementSessionDecorator.Builder#setDeblurAndDenoiseVideoEnabled(boolean)( boolean isDeblurAndDenoiseVideoEnabled )` Sets whether deblur and denoise is enabled. |
| `https://developer.android.com/reference/androidx/media3/effect/playservices/EnhancementSessionDecorator.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/effect/playservices/EnhancementSessionDecorator.Builder#setLooper(android.os.Looper)(https://developer.android.com/reference/android/os/Looper.html looper)` Sets the `https://developer.android.com/reference/android/os/Looper.html` that must be used for all calls to the enhancement session and internal callbacks. |
| `https://developer.android.com/reference/androidx/media3/effect/playservices/EnhancementSessionDecorator.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/effect/playservices/EnhancementSessionDecorator.Builder#setTonemappingEnabled(boolean)(boolean isTonemappingEnabled)` Sets whether tone mapping is enabled. |
| `https://developer.android.com/reference/androidx/media3/effect/playservices/EnhancementSessionDecorator.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/effect/playservices/EnhancementSessionDecorator.Builder#setUpscaleVideoEnabled(boolean)(boolean isUpscaleVideoEnabled)` Sets whether upscale is enabled. |

## Public constructors

### Builder

```
public Builder(
    Context context,
    FrameProcessor.Factory baseFrameProcessorFactory
)
```

Creates a builder with the specified context and base `https://developer.android.com/reference/androidx/media3/common/video/FrameProcessor.Factory`.

## Public methods

### build

```
public EnhancementSessionDecorator.Factory build()
```

Builds the `https://developer.android.com/reference/androidx/media3/common/video/FrameProcessor.Factory`.

### setDeblurAndDenoiseVideoEnabled

```
@CanIgnoreReturnValue
public EnhancementSessionDecorator.Builder setDeblurAndDenoiseVideoEnabled(
    boolean isDeblurAndDenoiseVideoEnabled
)
```

Sets whether deblur and denoise is enabled.

### setLooper

```
@CanIgnoreReturnValue
public EnhancementSessionDecorator.Builder setLooper(Looper looper)
```

Sets the `https://developer.android.com/reference/android/os/Looper.html` that must be used for all calls to the enhancement session and internal callbacks.

If not set, an internal `https://developer.android.com/reference/android/os/HandlerThread.html` will be created and managed by each `https://developer.android.com/reference/androidx/media3/effect/playservices/EnhancementSessionDecorator` instance.

### setTonemappingEnabled

```
@CanIgnoreReturnValue
public EnhancementSessionDecorator.Builder setTonemappingEnabled(boolean isTonemappingEnabled)
```

Sets whether tone mapping is enabled.

### setUpscaleVideoEnabled

```
@CanIgnoreReturnValue
public EnhancementSessionDecorator.Builder setUpscaleVideoEnabled(boolean isUpscaleVideoEnabled)
```

Sets whether upscale is enabled.