# AppInfoTableDecoder

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/dvbsi/AppInfoTableDecoder.java+class:androidx.media3.extractor.metadata.dvbsi.AppInfoTableDecoder)

*** ** * ** ***

<br />

```
@UnstableApi
class AppInfoTableDecoder : SimpleMetadataDecoder
```

<br />

|---|---|---|
| [kotlin.Any](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html) |||
| ↳ | [androidx.media3.extractor.metadata.SimpleMetadataDecoder](https://developer.android.com/reference/kotlin/androidx/media3/extractor/metadata/SimpleMetadataDecoder) ||
|   | ↳ | [androidx.media3.extractor.metadata.dvbsi.AppInfoTableDecoder](https://developer.android.com/reference/kotlin/androidx/media3/extractor/metadata/dvbsi/AppInfoTableDecoder) |

*** ** * ** ***

Decoder for the DVB Application Information Table (AIT).

For more info on the AIT see section 5.3.4 of the [DVB ETSI TS 102 809 v1.1.1 spec](https://www.etsi.org/deliver/etsi_ts/102800_102899/102809/01.01.01_60/ts_102809v010101p.pdf).

## Summary

| ### Constants |
|---|---|
| `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/extractor/metadata/dvbsi/AppInfoTableDecoder#APPLICATION_INFORMATION_TABLE_ID() = 116` See table 16 in section 5.3.4.6. |

| ### Public constructors |
|---|
| `https://developer.android.com/reference/kotlin/androidx/media3/extractor/metadata/dvbsi/AppInfoTableDecoder#AppInfoTableDecoder()()` |

| ### Protected functions |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/media3/common/Metadata?` | `https://developer.android.com/reference/kotlin/androidx/media3/extractor/metadata/dvbsi/AppInfoTableDecoder#decode(androidx.media3.extractor.metadata.MetadataInputBuffer,java.nio.ByteBuffer)(inputBuffer: https://developer.android.com/reference/kotlin/androidx/media3/extractor/metadata/MetadataInputBuffer!, buffer: https://developer.android.com/reference/java/nio/ByteBuffer.html!)` Called by `https://developer.android.com/reference/kotlin/androidx/media3/extractor/metadata/SimpleMetadataDecoder#decode(androidx.media3.extractor.metadata.MetadataInputBuffer)` after input buffer validation has been performed. |

### Inherited functions

From [androidx.media3.extractor.metadata.SimpleMetadataDecoder](https://developer.android.com/reference/kotlin/androidx/media3/extractor/metadata/SimpleMetadataDecoder) `https://developer.android.com/reference/kotlin/androidx/media3/common/Metadata?` `https://developer.android.com/reference/kotlin/androidx/media3/extractor/metadata/SimpleMetadataDecoder#decode(androidx.media3.extractor.metadata.MetadataInputBuffer)(inputBuffer: https://developer.android.com/reference/kotlin/androidx/media3/extractor/metadata/MetadataInputBuffer!)`

Decodes a `https://developer.android.com/reference/kotlin/androidx/media3/common/Metadata` element from the provided input buffer.

## Constants

### APPLICATION_INFORMATION_TABLE_ID

```
const val APPLICATION_INFORMATION_TABLE_ID = 116: Int
```

See table 16 in section 5.3.4.6.

## Public constructors

### AppInfoTableDecoder

```
AppInfoTableDecoder()
```

## Protected functions

### decode

```
protected fun decode(inputBuffer: MetadataInputBuffer!, buffer: ByteBuffer!): Metadata?
```

Called by `https://developer.android.com/reference/kotlin/androidx/media3/extractor/metadata/SimpleMetadataDecoder#decode(androidx.media3.extractor.metadata.MetadataInputBuffer)` after input buffer validation has been performed.

| Parameters |
|---|---|
| `inputBuffer: https://developer.android.com/reference/kotlin/androidx/media3/extractor/metadata/MetadataInputBuffer!` | The input buffer to decode. |
| `buffer: https://developer.android.com/reference/java/nio/ByteBuffer.html!` | The input buffer's `https://developer.android.com/reference/kotlin/androidx/media3/decoder/DecoderInputBuffer#data()`, for convenience. Validation by `https://developer.android.com/reference/kotlin/androidx/media3/extractor/metadata/SimpleMetadataDecoder#decode(androidx.media3.extractor.metadata.MetadataInputBuffer)` guarantees that `https://developer.android.com/reference/java/nio/ByteBuffer.html#hasArray()`, `https://developer.android.com/reference/java/nio/Buffer.html#position()` and `https://developer.android.com/reference/java/nio/ByteBuffer.html#arrayOffset()` are `true`, `0` and `0` respectively. |

| Returns |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/media3/common/Metadata?` | The decoded metadata object, or `null` if the metadata could not be decoded. |