Added in [API level 26](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels) Summary: [Methods](https://developer.android.com/reference/android/media/VolumeAutomation#pubmethods)

# VolumeAutomation

*** ** * ** ***


`
public


interface
VolumeAutomation
`


`


`

|---|
| android.media.VolumeAutomation |

|---|
| Known indirect subclasses [AudioTrack](https://developer.android.com/reference/android/media/AudioTrack), [MediaPlayer](https://developer.android.com/reference/android/media/MediaPlayer) |---|---| | [AudioTrack](https://developer.android.com/reference/android/media/AudioTrack) | The AudioTrack class manages and plays a single audio resource for Java applications. | | [MediaPlayer](https://developer.android.com/reference/android/media/MediaPlayer) | MediaPlayer class can be used to control playback of audio/video files and streams. | |

<br />

*** ** * ** ***

`VolumeAutomation` defines an interface for automatic volume control
of `https://developer.android.com/reference/android/media/AudioTrack` and `https://developer.android.com/reference/android/media/MediaPlayer` objects.

## Summary

| ### Public methods ||
|---|---|
| ` abstract https://developer.android.com/reference/android/media/VolumeShaper` | ` https://developer.android.com/reference/android/media/VolumeAutomation#createVolumeShaper(android.media.VolumeShaper.Configuration)(https://developer.android.com/reference/android/media/VolumeShaper.Configuration configuration) ` Returns a `https://developer.android.com/reference/android/media/VolumeShaper` object that can be used modify the volume envelope of the player or track. |

## Public methods

### createVolumeShaper

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

```
public abstract VolumeShaper createVolumeShaper (VolumeShaper.Configuration configuration)
```

Returns a `https://developer.android.com/reference/android/media/VolumeShaper` object that can be used modify the volume envelope
of the player or track.

<br />

| Parameters ||
|---|---|
| `configuration` | `VolumeShaper.Configuration`: the `https://developer.android.com/reference/android/media/VolumeShaper.Configuration` that specifies the curve and duration to use. This value cannot be `null`. <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/media/VolumeShaper` | a `VolumeShaper` object. This value cannot be `null`. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalArgumentException` | if the `configuration` is not allowed by the player. |
| `https://developer.android.com/reference/java/lang/IllegalStateException` | if too many `VolumeShaper`s are requested or the state of the player does not permit its creation (e.g. player is released). |