# AudioProcessor.StreamMetadata

Artifact: [androidx.media3:media3-common](https://developer.android.com/jetpack/androidx/releases/media3) [View Source](https://cs.android.com/search?q=file:androidx/media3/common/audio/AudioProcessor.java+class:androidx.media3.common.audio.AudioProcessor.StreamMetadata)

*** ** * ** ***


```
class AudioProcessor.StreamMetadata
```

<br />

*** ** * ** ***

Record class that holds information about the underlying stream being processed by an `https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor`

## Summary

| ### Nested types |
|---|
| `class https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.StreamMetadata.Builder` A builder for `https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.StreamMetadata`. |

| ### Constants |
|---|---|
| `const https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.StreamMetadata!` | `https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.StreamMetadata#DEFAULT()` A `https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.StreamMetadata` instance populated with default values. |

| ### Public constructors |
|---|
| `[StreamMetadata](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.StreamMetadata#StreamMetadata(long))(positionOffsetUs: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html)` **This function is deprecated.** Use `https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.StreamMetadata.Builder` instead. <br /> |

| ### Public functions |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.StreamMetadata.Builder!` | `https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.StreamMetadata#buildUpon()()` Creates a `https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.StreamMetadata.Builder` populated with the values from this object. |

| ### Public properties |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html?` | `https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.StreamMetadata#periodUid()` The `https://developer.android.com/reference/kotlin/androidx/media3/common/Timeline.Period#uid()` of the current playback this audio processor is used for, or `null` if undefined. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.StreamMetadata#positionOffsetUs()` The position of the underlying stream in microseconds from which the processor will start receiving input buffers after a call to `https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor#flush(androidx.media3.common.audio.AudioProcessor.StreamMetadata)`. |
| `https://developer.android.com/reference/kotlin/androidx/media3/common/Timeline!` | `https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.StreamMetadata#timeline()` The `https://developer.android.com/reference/kotlin/androidx/media3/common/Timeline` of the current playback this audio processor is used for, or `https://developer.android.com/reference/kotlin/androidx/media3/common/Timeline#EMPTY()` if undefined. |

## Constants

### DEFAULT

```
const val DEFAULT: AudioProcessor.StreamMetadata!
```

A `https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.StreamMetadata` instance populated with default values.

## Public constructors

### StreamMetadata

```
[StreamMetadata](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.StreamMetadata#StreamMetadata(long))(positionOffsetUs: Long)
```

> [!CAUTION]
> **This function is deprecated.**   
>
> Use `https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.StreamMetadata.Builder` instead.

## Public functions

### buildUpon

```
fun buildUpon(): AudioProcessor.StreamMetadata.Builder!
```

Creates a `https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.StreamMetadata.Builder` populated with the values from this object.

## Public properties

### periodUid

```
val periodUid: Any?
```

The `https://developer.android.com/reference/kotlin/androidx/media3/common/Timeline.Period#uid()` of the current playback this audio processor is used for, or `null` if undefined.

The value is up-to-date at the time of the `https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor#flush(androidx.media3.common.audio.AudioProcessor.StreamMetadata)` call, but might change due to updates to the media structure. In that case, the value will not be updated until the next call to `https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor#flush(androidx.media3.common.audio.AudioProcessor.StreamMetadata)`.

### positionOffsetUs

```
val positionOffsetUs: Long
```

The position of the underlying stream in microseconds from which the processor will start receiving input buffers after a call to `https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor#flush(androidx.media3.common.audio.AudioProcessor.StreamMetadata)`.

The position offset is aligned to the `https://developer.android.com/reference/kotlin/androidx/media3/common/Timeline.Window` start position.

The value is up-to-date at the time of the `https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor#flush(androidx.media3.common.audio.AudioProcessor.StreamMetadata)` call, but might change due to updates to the media structure. In that case, the value will not be updated until the next call to `https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor#flush(androidx.media3.common.audio.AudioProcessor.StreamMetadata)`.

### timeline

```
val timeline: Timeline!
```

The `https://developer.android.com/reference/kotlin/androidx/media3/common/Timeline` of the current playback this audio processor is used for, or `https://developer.android.com/reference/kotlin/androidx/media3/common/Timeline#EMPTY()` if undefined.

The value is up-to-date at the time of the `https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor#flush(androidx.media3.common.audio.AudioProcessor.StreamMetadata)` call, but might change due to updates to the media structure. In that case, the value will not be updated until the next call to `https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor#flush(androidx.media3.common.audio.AudioProcessor.StreamMetadata)`.