# IcyInfo

Artifact: [androidx.media3:media3-extractor](https://developer.android.com/jetpack/androidx/releases/media3) [View Source](https://cs.android.com/search?q=file:androidx/media3/extractor/metadata/icy/IcyInfo.java+class:androidx.media3.extractor.metadata.icy.IcyInfo)

*** ** * ** ***


```
@UnstableApi
public final class IcyInfo implements Metadata.Entry
```

<br />

*** ** * ** ***

ICY in-stream information.

## Summary

| ### Public fields |
|---|---|
| `final byte[]` | `https://developer.android.com/reference/androidx/media3/extractor/metadata/icy/IcyInfo#rawMetadata()` The complete metadata bytes used to construct this IcyInfo. |
| `final @https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/androidx/media3/extractor/metadata/icy/IcyInfo#title()` The stream title if present and decodable, or `null`. |
| `final @https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/androidx/media3/extractor/metadata/icy/IcyInfo#url()` The stream URL if present and decodable, or `null`. |

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/media3/extractor/metadata/icy/IcyInfo#IcyInfo(byte[],java.lang.String,java.lang.String)(byte[] rawMetadata, @https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/java/lang/String.html title, @https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/java/lang/String.html url)` Construct a new IcyInfo from the source metadata, and optionally a StreamTitle and StreamUrl that have been extracted. |

| ### Public methods |
|---|---|
| `boolean` | `https://developer.android.com/reference/androidx/media3/extractor/metadata/icy/IcyInfo#equals(java.lang.Object)(@https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/java/lang/Object.html obj)` |
| `int` | `https://developer.android.com/reference/androidx/media3/extractor/metadata/icy/IcyInfo#hashCode()()` |
| `void` | `https://developer.android.com/reference/androidx/media3/extractor/metadata/icy/IcyInfo#populateMediaMetadata(androidx.media3.common.MediaMetadata.Builder)(https://developer.android.com/reference/androidx/media3/common/MediaMetadata.Builder builder)` Updates the `https://developer.android.com/reference/androidx/media3/common/MediaMetadata.Builder` with the type-specific values stored in this ` Entry`. |
| `https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/androidx/media3/extractor/metadata/icy/IcyInfo#toString()()` |

| ### Inherited methods |
|---|
| From [androidx.media3.common.Metadata.Entry](https://developer.android.com/reference/androidx/media3/common/Metadata.Entry) |---|---| | `@https://developer.android.com/reference/androidx/annotation/Nullable byte[]` | `https://developer.android.com/reference/androidx/media3/common/Metadata.Entry#getWrappedMetadataBytes()()` Returns the bytes of the wrapped metadata in this Entry, or null if it doesn't contain wrapped metadata. | | `@https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/androidx/media3/common/Format` | `https://developer.android.com/reference/androidx/media3/common/Metadata.Entry#getWrappedMetadataFormat()()` Returns the `https://developer.android.com/reference/androidx/media3/common/Format` that can be used to decode the wrapped metadata in `https://developer.android.com/reference/androidx/media3/common/Metadata.Entry#getWrappedMetadataBytes()`, or null if this Entry doesn't contain wrapped metadata. | |

## Public fields

### rawMetadata

```
public final byte[] rawMetadata
```

The complete metadata bytes used to construct this IcyInfo.

### title

```
public final @Nullable String title
```

The stream title if present and decodable, or `null`.

### url

```
public final @Nullable String url
```

The stream URL if present and decodable, or `null`.

## Public constructors

### IcyInfo

```
public IcyInfo(byte[] rawMetadata, @Nullable String title, @Nullable String url)
```

Construct a new IcyInfo from the source metadata, and optionally a StreamTitle and StreamUrl that have been extracted.

| Parameters |
|---|---|
| `byte[] rawMetadata` | See `https://developer.android.com/reference/androidx/media3/extractor/metadata/icy/IcyInfo#rawMetadata()`. |
| `@https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/java/lang/String.html title` | See `https://developer.android.com/reference/androidx/media3/extractor/metadata/icy/IcyInfo#title()`. |
| `@https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/java/lang/String.html url` | See `https://developer.android.com/reference/androidx/media3/extractor/metadata/icy/IcyInfo#url()`. |

## Public methods

### equals

```
public boolean equals(@Nullable Object obj)
```

### hashCode

```
public int hashCode()
```

### populateMediaMetadata

```
public void populateMediaMetadata(MediaMetadata.Builder builder)
```

Updates the `https://developer.android.com/reference/androidx/media3/common/MediaMetadata.Builder` with the type-specific values stored in this `
Entry`.

| Parameters |
|---|---|
| `https://developer.android.com/reference/androidx/media3/common/MediaMetadata.Builder builder` | The builder to be updated. |

### toString

```
public String toString()
```