# androidx.camera.extensions

*** ** * ** ***

## Interfaces

|---|---|
| `https://developer.android.com/reference/kotlin/androidx/camera/extensions/CameraExtensionsControl` | A camera extensions control instance that allows customization of capture request settings for supported camera extensions. |
| `https://developer.android.com/reference/kotlin/androidx/camera/extensions/CameraExtensionsInfo` | A camera extensions info instance that allows to observe or monitor capture request settings and results for supported camera extensions. |

## Classes

|---|---|
| `https://developer.android.com/reference/kotlin/androidx/camera/extensions/ExtensionMode` | The available modes for the extensions. |
| `https://developer.android.com/reference/kotlin/androidx/camera/extensions/ExtensionSessionConfig` | A `https://developer.android.com/reference/kotlin/androidx/camera/core/SessionConfig` for extension sessions. |
| `https://developer.android.com/reference/kotlin/androidx/camera/extensions/ExtensionSessionConfig.Builder` | Builder for `https://developer.android.com/reference/kotlin/androidx/camera/extensions/ExtensionSessionConfig`. |
| `https://developer.android.com/reference/kotlin/androidx/camera/extensions/ExtensionSessionConfigScope` | Scope class for `https://developer.android.com/reference/kotlin/androidx/camera/extensions/ExtensionSessionConfig` configuration DSL. |
| `https://developer.android.com/reference/kotlin/androidx/camera/extensions/ExtensionsManager` | Provides interfaces for third party app developers to get capabilities info of extension functions. |

## Top-level functions summary

|---|---|
| `https://developer.android.com/reference/kotlin/androidx/camera/extensions/ExtensionSessionConfig` | `https://developer.android.com/reference/kotlin/androidx/camera/extensions/package-summary#extensionSessionConfig(kotlin.Int,androidx.camera.extensions.ExtensionsManager,kotlin.Function1)( mode: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, extensionsManager: https://developer.android.com/reference/kotlin/androidx/camera/extensions/ExtensionsManager, block: https://developer.android.com/reference/kotlin/androidx/camera/extensions/ExtensionSessionConfigScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html )` Creates an `https://developer.android.com/reference/kotlin/androidx/camera/extensions/ExtensionSessionConfig` using a Kotlin DSL. |

## Top-level functions

### extensionSessionConfig

Artifact: [androidx.camera:camera-extensions](https://developer.android.com/jetpack/androidx/releases/camera) [View Source](https://cs.android.com/search?q=file:androidx/camera/extensions/ExtensionSessionConfig.kt+function:extensionSessionConfig) Added in [1.7.0-rc02](https://developer.android.com/jetpack/androidx/releases/camera#1.7.0-rc02)

```
fun extensionSessionConfig(
    mode: Int,
    extensionsManager: ExtensionsManager,
    block: ExtensionSessionConfigScope.() -> Unit
): ExtensionSessionConfig
```

Creates an `https://developer.android.com/reference/kotlin/androidx/camera/extensions/ExtensionSessionConfig` using a Kotlin DSL.

Example usage:

```kotlin
val extensionSessionConfig = extensionSessionConfig(mode, extensionsManager) {
    isAutoRotationEnabled = true
    viewPort = viewPort
}
```

| Parameters |
|---|---|
| `mode: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` | The extension mode. See `https://developer.android.com/reference/kotlin/androidx/camera/extensions/ExtensionMode` for the list of available modes. |
| `extensionsManager: https://developer.android.com/reference/kotlin/androidx/camera/extensions/ExtensionsManager` | The `https://developer.android.com/reference/kotlin/androidx/camera/extensions/ExtensionsManager` instance. |
| `block: https://developer.android.com/reference/kotlin/androidx/camera/extensions/ExtensionSessionConfigScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | A lambda to configure the `https://developer.android.com/reference/kotlin/androidx/camera/extensions/ExtensionSessionConfigScope`. |