# androidx.media3.cast

*** ** * ** ***

## Annotations

|---|---|
| `https://developer.android.com/reference/androidx/media3/cast/CastTrackSelector.TrackSelectionRequestReason` | The reason for track selection request. |
| `https://developer.android.com/reference/androidx/media3/cast/SessionAvailabilityListener.SessionUnavailableReason` | Reasons for the Cast session becoming unavailable. |

## Interfaces

|---|---|
| `https://developer.android.com/reference/androidx/media3/cast/CastPlayer.TransferCallback` | Callback for moving state across players when transferring playback upon Cast session availability changes. |
| `https://developer.android.com/reference/androidx/media3/cast/MediaItemConverter` | Converts between `https://developer.android.com/reference/androidx/media3/common/MediaItem` and the Cast SDK's `https://developers.google.com/android/reference/com/google/android/gms/cast/MediaQueueItem.html`. |
| `https://developer.android.com/reference/androidx/media3/cast/SessionAvailabilityListener` | Listener of changes in the cast session availability. |

## Classes

|---|---|
| `https://developer.android.com/reference/androidx/media3/cast/Cast` | The primary entry point for interacting with the Cast context. |
| `https://developer.android.com/reference/androidx/media3/cast/CastParams` | Contains Cast configuration options. |
| `https://developer.android.com/reference/androidx/media3/cast/CastParams.Builder` | Builder for `https://developer.android.com/reference/androidx/media3/cast/CastParams`. |
| `https://developer.android.com/reference/androidx/media3/cast/CastPlayer` | `https://developer.android.com/reference/androidx/media3/common/Player` implementation that can control playback both on the local device, and on a remote Cast device. |
| `https://developer.android.com/reference/androidx/media3/cast/CastPlayer.Builder` | Builder for `https://developer.android.com/reference/androidx/media3/cast/CastPlayer`. |
| `https://developer.android.com/reference/androidx/media3/cast/CastTrackSelector` | Handles track selections and parameter changes for `https://developer.android.com/reference/androidx/media3/cast/RemoteCastPlayer`. |
| `https://developer.android.com/reference/androidx/media3/cast/CastTrackSelector.CastTrackSelectorRequest` | Holds parameters associated with a `https://developer.android.com/reference/androidx/media3/cast/CastTrackSelector#evaluate(androidx.media3.cast.CastTrackSelector.CastTrackSelectorRequest)`. |
| `https://developer.android.com/reference/androidx/media3/cast/CastTrackSelector.CastTrackSelectorResult` | The result of a `https://developer.android.com/reference/androidx/media3/cast/CastTrackSelector#evaluate(androidx.media3.cast.CastTrackSelector.CastTrackSelectorRequest)`. |
| `https://developer.android.com/reference/androidx/media3/cast/CastTrackSelector.CastTrackSelectorResult.Builder` | A builder for `https://developer.android.com/reference/androidx/media3/cast/CastTrackSelector.CastTrackSelectorResult`. |
| `https://developer.android.com/reference/androidx/media3/cast/DefaultCastOptionsProvider` | A convenience `https://developers.google.com/android/reference/com/google/android/gms/cast/framework/OptionsProvider.html` to target the default cast receiver app. |
| `https://developer.android.com/reference/androidx/media3/cast/DefaultCastPlayerTransferCallback` | The default `https://developer.android.com/reference/androidx/media3/cast/CastPlayer.TransferCallback` implementation. |
| `https://developer.android.com/reference/androidx/media3/cast/DefaultMediaItemConverter` | Default `https://developer.android.com/reference/androidx/media3/cast/MediaItemConverter` implementation. |
| `https://developer.android.com/reference/androidx/media3/cast/MediaRouteButtonFactory` | A factory class to set up a media route button. |
| `https://developer.android.com/reference/androidx/media3/cast/MediaRouteButtonKt` |   |
| `https://developer.android.com/reference/androidx/media3/cast/MediaRouteButtonState` | Holds the state for the `https://developer.android.com/reference/androidx/media3/cast/MediaRouteButton.composable#MediaRouteButton(androidx.compose.ui.Modifier,androidx.media3.cast.MediaRouteButtonState)`. |
| `https://developer.android.com/reference/androidx/media3/cast/MediaRouteButtonStateKt` |   |
| `https://developer.android.com/reference/androidx/media3/cast/MediaRouteButtonViewProvider` | A provider of a media route button view to be displayed in the player UI. |
| `https://developer.android.com/reference/androidx/media3/cast/RemoteCastPlayer` | `https://developer.android.com/reference/androidx/media3/common/Player` implementation that communicates with a Cast receiver app. |
| `https://developer.android.com/reference/androidx/media3/cast/RemoteCastPlayer.Builder` | A builder for `https://developer.android.com/reference/androidx/media3/cast/RemoteCastPlayer` instances. |