# TvView.TvInputCallback

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

# TvInputCallback

*** ** * ** ***

Kotlin \|[Java](https://developer.android.com/reference/android/media/tv/TvView.TvInputCallback "View this page in Java")  

```
abstract class TvInputCallback
```

|---|------------------------------------------------------------------------------------------------------------------------------------|
| [kotlin.Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)                                                     ||
| ↳ | [android.media.tv.TvView.TvInputCallback](https://developer.android.com/reference/kotlin/android/media/tv/TvView.TvInputCallback#) |

Callback used to receive various status updates on the [TvView](https://developer.android.com/reference/kotlin/android/media/tv/TvView).

## Summary

|                                                            Public constructors                                                            ||
|----------------------------------------------------------------------------------------------------------------------------------------|---|
| [TvInputCallback](https://developer.android.com/reference/kotlin/android/media/tv/TvView.TvInputCallback#TvInputCallback())`()` <br /> |

|                                                                                                                                                                                                                                                                                                                                                Public methods                                                                                                                                                                                                                                                                                                                                                ||
|-----------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [onAitInfoUpdated](https://developer.android.com/reference/kotlin/android/media/tv/TvView.TvInputCallback#onAitInfoUpdated(kotlin.String,%20android.media.tv.AitInfo))`(`inputId:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, `aitInfo:` `[AitInfo](https://developer.android.com/reference/kotlin/android/media/tv/AitInfo)`)` This is called when the AIT (Application Information Table) info has been updated.                                                                                                                                                               |
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [onAudioPresentationSelected](https://developer.android.com/reference/kotlin/android/media/tv/TvView.TvInputCallback#onAudioPresentationSelected(kotlin.String,%20kotlin.Int,%20kotlin.Int))`(`inputId:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, `presentationId:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`, `programId:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`)` This is called when audio presentation selection has changed.                                                                    |
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [onAudioPresentationsChanged](https://developer.android.com/reference/kotlin/android/media/tv/TvView.TvInputCallback#onAudioPresentationsChanged(kotlin.String,%20kotlin.collections.MutableList))`(`inputId:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, `audioPresentations:` `[MutableList](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-list/index.html)<[AudioPresentation](https://developer.android.com/reference/kotlin/android/media/AudioPresentation.html#)!>`)` This is called when the audio presentation information has been changed. |
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [onAvailableSpeeds](https://developer.android.com/reference/kotlin/android/media/tv/TvView.TvInputCallback#onAvailableSpeeds(kotlin.String,%20kotlin.FloatArray))`(`inputId:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, `speeds:` `[FloatArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-float-array/index.html)`)` This is called when time-shifting is enabled to inform the available speeds.                                                                                                                                                                    |
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [onChannelRetuned](https://developer.android.com/reference/kotlin/android/media/tv/TvView.TvInputCallback#onChannelRetuned(kotlin.String,%20android.net.Uri))`(`inputId:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!`, `channelUri:` `[Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html#)!`)` This is invoked when the channel of this TvView is changed by the underlying TV input without any android.                                                                                                                                                  |
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [onConnectionFailed](https://developer.android.com/reference/kotlin/android/media/tv/TvView.TvInputCallback#onConnectionFailed(kotlin.String))`(`inputId:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!`)` This is invoked when an error occurred while establishing a connection to the underlying TV input.                                                                                                                                                                                                                                                                       |
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [onContentAllowed](https://developer.android.com/reference/kotlin/android/media/tv/TvView.TvInputCallback#onContentAllowed(kotlin.String))`(`inputId:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!`)` This is called when the current program content turns out to be allowed to watch since its content rating is not blocked by parental controls.                                                                                                                                                                                                                               |
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [onContentBlocked](https://developer.android.com/reference/kotlin/android/media/tv/TvView.TvInputCallback#onContentBlocked(kotlin.String,%20android.media.tv.TvContentRating))`(`inputId:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!`, `rating:` `[TvContentRating](https://developer.android.com/reference/kotlin/android/media/tv/TvContentRating)!`)` This is called when the current program content turns out to be not allowed to watch since its content rating is blocked by parental controls.                                                                          |
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [onCueingMessageAvailability](https://developer.android.com/reference/kotlin/android/media/tv/TvView.TvInputCallback#onCueingMessageAvailability(kotlin.String,%20kotlin.Boolean))`(`inputId:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, `available:` `[Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)` This is called when cueing message becomes available or unavailable.                                                                                                                                                               |
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [onDisconnected](https://developer.android.com/reference/kotlin/android/media/tv/TvView.TvInputCallback#onDisconnected(kotlin.String))`(`inputId:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!`)` This is invoked when the existing connection to the underlying TV input is lost.                                                                                                                                                                                                                                                                                                 |
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [onSignalStrengthUpdated](https://developer.android.com/reference/kotlin/android/media/tv/TvView.TvInputCallback#onSignalStrengthUpdated(kotlin.String,%20kotlin.Int))`(`inputId:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, `strength:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`)` This is called when signal strength is updated.                                                                                                                                                                                                         |
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [onTimeShiftMode](https://developer.android.com/reference/kotlin/android/media/tv/TvView.TvInputCallback#onTimeShiftMode(kotlin.String,%20kotlin.Int))`(`inputId:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, `mode:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`)` This is called when time shift mode is set or updated.                                                                                                                                                                                                                      |
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [onTimeShiftStatusChanged](https://developer.android.com/reference/kotlin/android/media/tv/TvView.TvInputCallback#onTimeShiftStatusChanged(kotlin.String,%20kotlin.Int))`(`inputId:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!`, `status:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`)` This is called when the time shift status is changed.                                                                                                                                                                                                  |
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [onTrackSelected](https://developer.android.com/reference/kotlin/android/media/tv/TvView.TvInputCallback#onTrackSelected(kotlin.String,%20kotlin.Int,%20kotlin.String))`(`inputId:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!`, `type:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`, `trackId:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!`)` This is called when there is a change on the selected tracks.                                                                                             |
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [onTracksChanged](https://developer.android.com/reference/kotlin/android/media/tv/TvView.TvInputCallback#onTracksChanged(kotlin.String,%20kotlin.collections.MutableList))`(`inputId:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!`, `tracks:` `[MutableList](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-list/index.html)<[TvTrackInfo](https://developer.android.com/reference/kotlin/android/media/tv/TvTrackInfo)!>!`)` This is called when the track information has been changed.                                                               |
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [onTuned](https://developer.android.com/reference/kotlin/android/media/tv/TvView.TvInputCallback#onTuned(kotlin.String,%20android.net.Uri))`(`inputId:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, `channelUri:` `[Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html#)`)` This is called when the session has been tuned to the given channel.                                                                                                                                                                                                            |
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [onTvMessage](https://developer.android.com/reference/kotlin/android/media/tv/TvView.TvInputCallback#onTvMessage(kotlin.String,%20kotlin.Int,%20android.os.Bundle))`(`inputId:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, `type:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`, `data:` `[Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html#)`)` This is called when a new TV Message has been received.                                                                                                            |
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [onVideoAvailable](https://developer.android.com/reference/kotlin/android/media/tv/TvView.TvInputCallback#onVideoAvailable(kotlin.String))`(`inputId:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!`)` This is called when the video is available, so the TV input starts the playback.                                                                                                                                                                                                                                                                                             |
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [onVideoFreezeUpdated](https://developer.android.com/reference/kotlin/android/media/tv/TvView.TvInputCallback#onVideoFreezeUpdated(kotlin.String,%20kotlin.Boolean))`(`inputId:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, `isFrozen:` `[Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)` This is called when the video freeze status is updated.                                                                                                                                                                                           |
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [onVideoSizeChanged](https://developer.android.com/reference/kotlin/android/media/tv/TvView.TvInputCallback#onVideoSizeChanged(kotlin.String,%20kotlin.Int,%20kotlin.Int))`(`inputId:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!`, `width:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`, `height:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`)` This is invoked when the video size has been changed.                                                                                                         |
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [onVideoUnavailable](https://developer.android.com/reference/kotlin/android/media/tv/TvView.TvInputCallback#onVideoUnavailable(kotlin.String,%20kotlin.Int))`(`inputId:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!`, `reason:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`)` This is called when the video is not available, so the TV input stops the playback.                                                                                                                                                                                |

## Public constructors

### TvInputCallback

```
TvInputCallback()
```

## Public methods

### onAitInfoUpdated

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

```
open fun onAitInfoUpdated(
    inputId: String, 
    aitInfo: AitInfo
): Unit
```

This is called when the AIT (Application Information Table) info has been updated.

|                                                                    Parameters                                                                     ||
|-----------|----------------------------------------------------------------------------------------------------------------------------------------|
| `aitInfo` | [AitInfo](https://developer.android.com/reference/kotlin/android/media/tv/AitInfo): The current AIT info. This value cannot be `null`. |
| `inputId` | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html): This value cannot be `null`.                         |

### onAudioPresentationSelected

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

```
open fun onAudioPresentationSelected(
    inputId: String, 
    presentationId: Int, 
    programId: Int
): Unit
```

This is called when audio presentation selection has changed.

|                                                                                 Parameters                                                                                  ||
|------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------|
| `inputId`        | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html): The ID of the TV input bound to this view. This value cannot be `null`. |
| `presentationId` | [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html): The ID of the audio presentation selected.                                    |
| `programId`      | [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html): The ID of the program providing the selected audio presentation.              |

### onAudioPresentationsChanged

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

```
open fun onAudioPresentationsChanged(
    inputId: String, 
    audioPresentations: MutableList<AudioPresentation!>
): Unit
```

This is called when the audio presentation information has been changed.

|                                                                                                                                                         Parameters                                                                                                                                                          ||
|----------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `inputId`            | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html): The ID of the TV input bound to this view. This value cannot be `null`.                                                                                                                                             |
| `audioPresentations` | [MutableList](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-list/index.html)\<[AudioPresentation](https://developer.android.com/reference/kotlin/android/media/AudioPresentation.html#)!\>: A list of updated audio presentation information. This value cannot be `null`. |

### onAvailableSpeeds

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

```
open fun onAvailableSpeeds(
    inputId: String, 
    speeds: FloatArray
): Unit
```

This is called when time-shifting is enabled to inform the available speeds.

|                                                                                                                                                                                                                                                                            Parameters                                                                                                                                                                                                                                                                             ||
|-----------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `inputId` | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html): The ID of the TV input bound to this view. This value cannot be `null`.                                                                                                                                                                                                                                                                                                                                                                                              |
| `speeds`  | [FloatArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-float-array/index.html): An ordered array of playback speeds, expressed as values relative to the normal playback speed (1.0), at which the current content can be played as a time-shifted broadcast. This is an empty array if the supported playback speeds are unknown or the video/broadcast is not in time shift mode. If currently in time shift mode, this array will normally include at least the values 1.0 (normal speed) and 0.0 (paused). This value cannot be `null`. |

**See Also**

- [android.media.PlaybackParams#getSpeed()](https://developer.android.com/reference/kotlin/android/media/PlaybackParams.html#getSpeed())  

### onChannelRetuned

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

```
open fun onChannelRetuned(
    inputId: String!, 
    channelUri: Uri!
): Unit
```

This is invoked when the channel of this TvView is changed by the underlying TV input without any android.media.tv.TvView#tune request.

|                                                                 Parameters                                                                  ||
|--------------|-------------------------------------------------------------------------------------------------------------------------------|
| `inputId`    | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!: The ID of the TV input bound to this view. |
| `channelUri` | [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html#)!: The URI of a channel.                           |

### onConnectionFailed

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

```
open fun onConnectionFailed(inputId: String!): Unit
```

This is invoked when an error occurred while establishing a connection to the underlying TV input.

|                                                                Parameters                                                                ||
|-----------|-------------------------------------------------------------------------------------------------------------------------------|
| `inputId` | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!: The ID of the TV input bound to this view. |

### onContentAllowed

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

```
open fun onContentAllowed(inputId: String!): Unit
```

This is called when the current program content turns out to be allowed to watch since its content rating is not blocked by parental controls.

|                                                                Parameters                                                                ||
|-----------|-------------------------------------------------------------------------------------------------------------------------------|
| `inputId` | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!: The ID of the TV input bound to this view. |

### onContentBlocked

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

```
open fun onContentBlocked(
    inputId: String!, 
    rating: TvContentRating!
): Unit
```

This is called when the current program content turns out to be not allowed to watch since its content rating is blocked by parental controls.

|                                                                         Parameters                                                                         ||
|-----------|-------------------------------------------------------------------------------------------------------------------------------------------------|
| `inputId` | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!: The ID of the TV input bound to this view.                   |
| `rating`  | [TvContentRating](https://developer.android.com/reference/kotlin/android/media/tv/TvContentRating)!: The content rating of the blocked program. |

### onCueingMessageAvailability

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

```
open fun onCueingMessageAvailability(
    inputId: String, 
    available: Boolean
): Unit
```

This is called when cueing message becomes available or unavailable.

|                                                                                                       Parameters                                                                                                       ||
|-------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `inputId`   | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html): The ID of the TV input bound to this view. This value cannot be `null`.                                                 |
| `available` | [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html): The current availability of cueing message. `true` if cueing message is available; `false` if it becomes unavailable. |

### onDisconnected

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

```
open fun onDisconnected(inputId: String!): Unit
```

This is invoked when the existing connection to the underlying TV input is lost.

|                                                                Parameters                                                                ||
|-----------|-------------------------------------------------------------------------------------------------------------------------------|
| `inputId` | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!: The ID of the TV input bound to this view. |

### onSignalStrengthUpdated

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

```
open fun onSignalStrengthUpdated(
    inputId: String, 
    strength: Int
): Unit
```

This is called when signal strength is updated.

|                                                                                                                                                                                                                                                                                                                         Parameters                                                                                                                                                                                                                                                                                                                          ||
|------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `inputId`  | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html): The ID of the TV input bound to this view. This value cannot be `null`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `strength` | [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html): The current signal strength. Value is [android.media.tv.TvInputManager#SIGNAL_STRENGTH_LOST](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#SIGNAL_STRENGTH_LOST:kotlin.Int), [android.media.tv.TvInputManager#SIGNAL_STRENGTH_WEAK](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#SIGNAL_STRENGTH_WEAK:kotlin.Int), or [android.media.tv.TvInputManager#SIGNAL_STRENGTH_STRONG](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#SIGNAL_STRENGTH_STRONG:kotlin.Int) |

### onTimeShiftMode

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

```
open fun onTimeShiftMode(
    inputId: String, 
    mode: Int
): Unit
```

This is called when time shift mode is set or updated.

|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                Parameters                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 ||
|-----------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `inputId` | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html): The ID of the TV input bound to this view. This value cannot be `null`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `mode`    | [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html): The current time shift mode. The value is one of the following: [TvInputManager.TIME_SHIFT_MODE_OFF](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#TIME_SHIFT_MODE_OFF:kotlin.Int), [TvInputManager.TIME_SHIFT_MODE_LOCAL](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#TIME_SHIFT_MODE_LOCAL:kotlin.Int), [TvInputManager.TIME_SHIFT_MODE_NETWORK](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#TIME_SHIFT_MODE_NETWORK:kotlin.Int), [TvInputManager.TIME_SHIFT_MODE_AUTO](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#TIME_SHIFT_MODE_AUTO:kotlin.Int). Value is [android.media.tv.TvInputManager#TIME_SHIFT_MODE_OFF](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#TIME_SHIFT_MODE_OFF:kotlin.Int), [android.media.tv.TvInputManager#TIME_SHIFT_MODE_LOCAL](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#TIME_SHIFT_MODE_LOCAL:kotlin.Int), [android.media.tv.TvInputManager#TIME_SHIFT_MODE_NETWORK](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#TIME_SHIFT_MODE_NETWORK:kotlin.Int), or [android.media.tv.TvInputManager#TIME_SHIFT_MODE_AUTO](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#TIME_SHIFT_MODE_AUTO:kotlin.Int) |

### onTimeShiftStatusChanged

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

```
open fun onTimeShiftStatusChanged(
    inputId: String!, 
    status: Int
): Unit
```

This is called when the time shift status is changed.

|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       Parameters                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        ||
|-----------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `inputId` | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!: The ID of the TV input bound to this view.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `status`  | [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html): The current time shift status. Should be one of the followings. - [TvInputManager.TIME_SHIFT_STATUS_UNSUPPORTED](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#TIME_SHIFT_STATUS_UNSUPPORTED:kotlin.Int) - [TvInputManager.TIME_SHIFT_STATUS_UNAVAILABLE](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#TIME_SHIFT_STATUS_UNAVAILABLE:kotlin.Int) - [TvInputManager.TIME_SHIFT_STATUS_AVAILABLE](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#TIME_SHIFT_STATUS_AVAILABLE:kotlin.Int) Value is [android.media.tv.TvInputManager#TIME_SHIFT_STATUS_UNKNOWN](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#TIME_SHIFT_STATUS_UNKNOWN:kotlin.Int), [android.media.tv.TvInputManager#TIME_SHIFT_STATUS_UNSUPPORTED](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#TIME_SHIFT_STATUS_UNSUPPORTED:kotlin.Int), [android.media.tv.TvInputManager#TIME_SHIFT_STATUS_UNAVAILABLE](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#TIME_SHIFT_STATUS_UNAVAILABLE:kotlin.Int), or [android.media.tv.TvInputManager#TIME_SHIFT_STATUS_AVAILABLE](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#TIME_SHIFT_STATUS_AVAILABLE:kotlin.Int) |

### onTrackSelected

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

```
open fun onTrackSelected(
    inputId: String!, 
    type: Int, 
    trackId: String!
): Unit
```

This is called when there is a change on the selected tracks.

|                                                                                                                                                                                                                                                              Parameters                                                                                                                                                                                                                                                               ||
|-----------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `inputId` | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!: The ID of the TV input bound to this view.                                                                                                                                                                                                                                                                                                                                                                                              |
| `type`    | [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html): The type of the track selected. The type can be [TvTrackInfo.TYPE_AUDIO](https://developer.android.com/reference/kotlin/android/media/tv/TvTrackInfo#TYPE_AUDIO:kotlin.Int), [TvTrackInfo.TYPE_VIDEO](https://developer.android.com/reference/kotlin/android/media/tv/TvTrackInfo#TYPE_VIDEO:kotlin.Int) or [TvTrackInfo.TYPE_SUBTITLE](https://developer.android.com/reference/kotlin/android/media/tv/TvTrackInfo#TYPE_SUBTITLE:kotlin.Int). |
| `trackId` | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!: The ID of the track selected.                                                                                                                                                                                                                                                                                                                                                                                                           |

### onTracksChanged

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

```
open fun onTracksChanged(
    inputId: String!, 
    tracks: MutableList<TvTrackInfo!>!
): Unit
```

This is called when the track information has been changed.

|                                                                                                                          Parameters                                                                                                                          ||
|-----------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `inputId` | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!: The ID of the TV input bound to this view.                                                                                                                     |
| `tracks`  | [MutableList](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-list/index.html)\<[TvTrackInfo](https://developer.android.com/reference/kotlin/android/media/tv/TvTrackInfo)!\>!: A list which includes track information. |

### onTuned

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

```
open fun onTuned(
    inputId: String, 
    channelUri: Uri
): Unit
```

This is called when the session has been tuned to the given channel.

|                                                                  Parameters                                                                   ||
|--------------|---------------------------------------------------------------------------------------------------------------------------------|
| `channelUri` | [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html#): The URI of a channel. This value cannot be `null`. |
| `inputId`    | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html): This value cannot be `null`.                  |

### onTvMessage

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

```
open fun onTvMessage(
    inputId: String, 
    type: Int, 
    data: Bundle
): Unit
```

This is called when a new TV Message has been received.

|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          Parameters                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          ||
|-----------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `inputId` | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html): The ID of the TV input bound to this view. This value cannot be `null`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `type`    | [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html): The type of message received, such as [TvInputManager.TV_MESSAGE_TYPE_WATERMARK](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#TV_MESSAGE_TYPE_WATERMARK:kotlin.Int) Value is [android.media.tv.TvInputManager#TV_MESSAGE_TYPE_WATERMARK](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#TV_MESSAGE_TYPE_WATERMARK:kotlin.Int), [android.media.tv.TvInputManager#TV_MESSAGE_TYPE_CLOSED_CAPTION](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#TV_MESSAGE_TYPE_CLOSED_CAPTION:kotlin.Int), or [android.media.tv.TvInputManager#TV_MESSAGE_TYPE_OTHER](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#TV_MESSAGE_TYPE_OTHER:kotlin.Int)                                                                                                                                                                                              |
| `data`    | [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html#): The raw data of the message. The bundle keys are: [TvInputManager.TV_MESSAGE_KEY_STREAM_ID](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#TV_MESSAGE_KEY_STREAM_ID:kotlin.String), [TvInputManager.TV_MESSAGE_KEY_GROUP_ID](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#TV_MESSAGE_KEY_GROUP_ID:kotlin.String), [TvInputManager.TV_MESSAGE_KEY_SUBTYPE](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#TV_MESSAGE_KEY_SUBTYPE:kotlin.String), [TvInputManager.TV_MESSAGE_KEY_RAW_DATA](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#TV_MESSAGE_KEY_RAW_DATA:kotlin.String). See [TvInputManager.TV_MESSAGE_KEY_SUBTYPE](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#TV_MESSAGE_KEY_SUBTYPE:kotlin.String) for more information on how to parse this data. This value cannot be `null`. |

### onVideoAvailable

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

```
open fun onVideoAvailable(inputId: String!): Unit
```

This is called when the video is available, so the TV input starts the playback.

|                                                                Parameters                                                                ||
|-----------|-------------------------------------------------------------------------------------------------------------------------------|
| `inputId` | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!: The ID of the TV input bound to this view. |

### onVideoFreezeUpdated

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

```
open fun onVideoFreezeUpdated(
    inputId: String, 
    isFrozen: Boolean
): Unit
```

This is called when the video freeze status is updated.

|                                                                              Parameters                                                                               ||
|------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------|
| `inputId`  | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html): The ID of the TV input bound to this view. This value cannot be `null`. |
| `isFrozen` | [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html): Whether or not the video is currently frozen on the las               |

**See Also**

- [#setVideoFrozen(boolean)](https://developer.android.com/reference/kotlin/android/media/tv/TvView#setVideoFrozen(kotlin.Boolean))  

### onVideoSizeChanged

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

```
open fun onVideoSizeChanged(
    inputId: String!, 
    width: Int, 
    height: Int
): Unit
```

This is invoked when the video size has been changed. It is also called when the first time video size information becomes available after this view is tuned to a specific channel.

|                                                                Parameters                                                                ||
|-----------|-------------------------------------------------------------------------------------------------------------------------------|
| `inputId` | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!: The ID of the TV input bound to this view. |
| `width`   | [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html): The width of the video.                           |
| `height`  | [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html): The height of the video.                          |

### onVideoUnavailable

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

```
open fun onVideoUnavailable(
    inputId: String!, 
    reason: Int
): Unit
```

This is called when the video is not available, so the TV input stops the playback.

|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          Parameters                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          ||
|-----------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `inputId` | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!: The ID of the TV input bound to this view.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `reason`  | [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html): The reason why the TV input stopped the playback: - [TvInputManager.VIDEO_UNAVAILABLE_REASON_UNKNOWN](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#VIDEO_UNAVAILABLE_REASON_UNKNOWN:kotlin.Int) - [TvInputManager.VIDEO_UNAVAILABLE_REASON_TUNING](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#VIDEO_UNAVAILABLE_REASON_TUNING:kotlin.Int) - [TvInputManager.VIDEO_UNAVAILABLE_REASON_WEAK_SIGNAL](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#VIDEO_UNAVAILABLE_REASON_WEAK_SIGNAL:kotlin.Int) - [TvInputManager.VIDEO_UNAVAILABLE_REASON_BUFFERING](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#VIDEO_UNAVAILABLE_REASON_BUFFERING:kotlin.Int) - [TvInputManager.VIDEO_UNAVAILABLE_REASON_AUDIO_ONLY](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#VIDEO_UNAVAILABLE_REASON_AUDIO_ONLY:kotlin.Int) Value is [android.media.tv.TvInputManager#VIDEO_UNAVAILABLE_REASON_UNKNOWN](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#VIDEO_UNAVAILABLE_REASON_UNKNOWN:kotlin.Int), [android.media.tv.TvInputManager#VIDEO_UNAVAILABLE_REASON_TUNING](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#VIDEO_UNAVAILABLE_REASON_TUNING:kotlin.Int), [android.media.tv.TvInputManager#VIDEO_UNAVAILABLE_REASON_WEAK_SIGNAL](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#VIDEO_UNAVAILABLE_REASON_WEAK_SIGNAL:kotlin.Int), [android.media.tv.TvInputManager#VIDEO_UNAVAILABLE_REASON_BUFFERING](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#VIDEO_UNAVAILABLE_REASON_BUFFERING:kotlin.Int), [android.media.tv.TvInputManager#VIDEO_UNAVAILABLE_REASON_AUDIO_ONLY](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#VIDEO_UNAVAILABLE_REASON_AUDIO_ONLY:kotlin.Int), [android.media.tv.TvInputManager#VIDEO_UNAVAILABLE_REASON_NOT_CONNECTED](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#VIDEO_UNAVAILABLE_REASON_NOT_CONNECTED:kotlin.Int), [android.media.tv.TvInputManager#VIDEO_UNAVAILABLE_REASON_INSUFFICIENT_RESOURCE](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#VIDEO_UNAVAILABLE_REASON_INSUFFICIENT_RESOURCE:kotlin.Int), [android.media.tv.TvInputManager#VIDEO_UNAVAILABLE_REASON_CAS_INSUFFICIENT_OUTPUT_PROTECTION](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#VIDEO_UNAVAILABLE_REASON_CAS_INSUFFICIENT_OUTPUT_PROTECTION:kotlin.Int), [android.media.tv.TvInputManager#VIDEO_UNAVAILABLE_REASON_CAS_PVR_RECORDING_NOT_ALLOWED](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#VIDEO_UNAVAILABLE_REASON_CAS_PVR_RECORDING_NOT_ALLOWED:kotlin.Int), android.media.tv.TvInputManager.VIDEO_UNAVAILABLE_REASON_CAS_NO_LICENSE, [android.media.tv.TvInputManager#VIDEO_UNAVAILABLE_REASON_CAS_LICENSE_EXPIRED](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#VIDEO_UNAVAILABLE_REASON_CAS_LICENSE_EXPIRED:kotlin.Int), [android.media.tv.TvInputManager#VIDEO_UNAVAILABLE_REASON_CAS_NEED_ACTIVATION](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#VIDEO_UNAVAILABLE_REASON_CAS_NEED_ACTIVATION:kotlin.Int), [android.media.tv.TvInputManager#VIDEO_UNAVAILABLE_REASON_CAS_NEED_PAIRING](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#VIDEO_UNAVAILABLE_REASON_CAS_NEED_PAIRING:kotlin.Int), [android.media.tv.TvInputManager#VIDEO_UNAVAILABLE_REASON_CAS_NO_CARD](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#VIDEO_UNAVAILABLE_REASON_CAS_NO_CARD:kotlin.Int), [android.media.tv.TvInputManager#VIDEO_UNAVAILABLE_REASON_CAS_CARD_MUTE](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#VIDEO_UNAVAILABLE_REASON_CAS_CARD_MUTE:kotlin.Int), [android.media.tv.TvInputManager#VIDEO_UNAVAILABLE_REASON_CAS_CARD_INVALID](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#VIDEO_UNAVAILABLE_REASON_CAS_CARD_INVALID:kotlin.Int), [android.media.tv.TvInputManager#VIDEO_UNAVAILABLE_REASON_CAS_BLACKOUT](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#VIDEO_UNAVAILABLE_REASON_CAS_BLACKOUT:kotlin.Int), [android.media.tv.TvInputManager#VIDEO_UNAVAILABLE_REASON_CAS_REBOOTING](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#VIDEO_UNAVAILABLE_REASON_CAS_REBOOTING:kotlin.Int), [android.media.tv.TvInputManager#VIDEO_UNAVAILABLE_REASON_CAS_UNKNOWN](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#VIDEO_UNAVAILABLE_REASON_CAS_UNKNOWN:kotlin.Int), or [android.media.tv.TvInputManager#VIDEO_UNAVAILABLE_REASON_STOPPED](https://developer.android.com/reference/kotlin/android/media/tv/TvInputManager#VIDEO_UNAVAILABLE_REASON_STOPPED:kotlin.Int) |