# How to programmatically detect video track qualities on Android

This article describes how you can use the VideoTrack API, a sub-API of the MediaTrack API, to detect video track qualities. Implementing this functionality is a common use-case for developers who want to build their own UI to visualize the available video track qualities.

## Usage

The [`qualities`](https://docs-preview.optiview.dolby.com/pr-861/theoplayer/v11/api-reference/android/com/theoplayer/android/api/player/track/mediatrack/MediaTrack#getQualities\(\)) of a video track are available as soon as the track is added to [`player.getVideoTracks()`](https://docs-preview.optiview.dolby.com/pr-861/theoplayer/v11/api-reference/android/com/theoplayer/android/api/player/Player#getVideoTracks\(\)).

```kotlin
player.videoTracks.addEventListener(VideoTrackListEventTypes.ADDTRACK) { addTrackEvent ->
    val videoTrackQualities = addTrackEvent.track.qualities
}
```

## Related articles

* [How to programmatically select a video track quality](https://docs-preview.optiview.dolby.com/pr-861/theoplayer/how-to-guides/android/media-tracks/select-video-track-quality.md)
* [How to programmatically detect video track quality changes](https://docs-preview.optiview.dolby.com/pr-861/theoplayer/how-to-guides/android/media-tracks/detect-video-track-quality-changes.md)
* [How to programmatically detect audio tracks](https://docs-preview.optiview.dolby.com/pr-861/theoplayer/how-to-guides/android/media-tracks/detect-audio-tracks.md)
* [How to build a chromeless UI](https://docs-preview.optiview.dolby.com/pr-861/theoplayer/how-to-guides/android/ui/build-chromeless-ui.md)
