# TsPayloadReader.TrackIdGenerator

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/ts/TsPayloadReader.java+class:androidx.media3.extractor.ts.TsPayloadReader.TrackIdGenerator)

*** ** * ** ***


```
public final class TsPayloadReader.TrackIdGenerator
```

<br />

*** ** * ** ***

Generates track ids for initializing `https://developer.android.com/reference/androidx/media3/extractor/ts/TsPayloadReader`s' `https://developer.android.com/reference/androidx/media3/extractor/TrackOutput`s.

## Summary

| ### Public fields |
|---|---|
| `https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/androidx/media3/extractor/ts/TsPayloadReader.TrackIdGenerator#formatId()` |
| `int` | `https://developer.android.com/reference/androidx/media3/extractor/ts/TsPayloadReader.TrackIdGenerator#trackId()` |

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/media3/extractor/ts/TsPayloadReader.TrackIdGenerator#TrackIdGenerator(int,int)(int firstTrackId, int trackIdIncrement)` |
| `https://developer.android.com/reference/androidx/media3/extractor/ts/TsPayloadReader.TrackIdGenerator#TrackIdGenerator(int,int,int)( int programNumber, int firstTrackId, int trackIdIncrement )` |

| ### Public methods |
|---|---|
| `void` | `https://developer.android.com/reference/androidx/media3/extractor/ts/TsPayloadReader.TrackIdGenerator#generateNewId()()` Generates a new set of track and track format ids. |
| `https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/androidx/media3/extractor/ts/TsPayloadReader.TrackIdGenerator#getFormatId()()` Returns the last generated format id, with the format `"programNumber/trackId"`. |
| `int` | `https://developer.android.com/reference/androidx/media3/extractor/ts/TsPayloadReader.TrackIdGenerator#getTrackId()()` Returns the last generated track id. |

## Public fields

### formatId

```
public String formatId
```

### trackId

```
public int trackId
```

## Public constructors

### TrackIdGenerator

```
public TrackIdGenerator(int firstTrackId, int trackIdIncrement)
```

### TrackIdGenerator

```
public TrackIdGenerator(
    int programNumber,
    int firstTrackId,
    int trackIdIncrement
)
```

## Public methods

### generateNewId

```
public void generateNewId()
```

Generates a new set of track and track format ids. Must be called before `get*` methods.

### getFormatId

```
public String getFormatId()
```

Returns the last generated format id, with the format `"programNumber/trackId"`. If no `programNumber` was provided, the `trackId` alone is used as format id. Must be called after the first `https://developer.android.com/reference/androidx/media3/extractor/ts/TsPayloadReader.TrackIdGenerator#generateNewId()` call.

| Returns |
|---|---|
| `https://developer.android.com/reference/java/lang/String.html` | The last generated format id, with the format `"programNumber/trackId"`. If no `programNumber` was provided, the `trackId` alone is used as format id. |

### getTrackId

```
public int getTrackId()
```

Returns the last generated track id. Must be called after the first `https://developer.android.com/reference/androidx/media3/extractor/ts/TsPayloadReader.TrackIdGenerator#generateNewId()` call.

| Returns |
|---|---|
| `int` | The last generated track id. |