---
title: Third-party casting support
framework: avkit
role: collectionGroup
role_heading: API Collection
path: avkit/third-party-casting-support
---

# Third-party casting support

Provide custom playback controls for third-party casting services and other media sources.

## Overview

Overview Use the AVInterfaceControllable protocol suite to build custom transport controls that work with third-party casting services. The AVInterfaceControllable composite protocol combines playback, time, media selection, volume, and metadata capabilities into a single interface.

## Topics

### Playback

- [AVInterfacePlaybackControllable](avkit/avinterfaceplaybackcontrollable-44aba.md)
- [AVInterfacePlaybackState](avkit/avinterfaceplaybackstate.md)
- [AVInterfaceSeekCapabilities](avkit/avinterfaceseekcapabilities.md)

### Timeline

- [AVInterfaceTimeControllable](avkit/avinterfacetimecontrollable-63tkp.md)
- [AVInterfaceTimelineSegment](avkit/avinterfacetimelinesegment.md)

### Media selection

- [AVInterfaceMediaSelectionControllable](avkit/avinterfacemediaselectioncontrollable-6wn31.md)
- [AVInterfaceMediaSelectionOptionSource](avkit/avinterfacemediaselectionoptionsource.md)

### Volume

- [AVInterfaceVolumeControllable](avkit/avinterfacevolumecontrollable-5sjm1.md)

### Metadata

- [AVInterfaceMetadataProviding](avkit/avinterfacemetadataproviding-666nk.md)
- [AVInterfaceMetadata](avkit/avinterfacemetadata-swift.struct.md)
- [AVInterfaceAlbumArtwork](avkit/avinterfacealbumartwork.md)

### Complete interface

- [AVInterfaceControllable](avkit/avinterfacecontrollable-3xs3i.md)

## See Also

### iOS playback and capture

- [Playing video content in a standard user interface](avkit/playing-video-content-in-a-standard-user-interface.md)
- [AVPlayerViewController](avkit/avplayerviewcontroller.md)
- [AVPlayerViewControllerDelegate](avkit/avplayerviewcontrollerdelegate.md)
- [AVCaptureEventInteraction](avkit/avcaptureeventinteraction.md)
- [AVCaptureEvent](avkit/avcaptureevent.md)
- [AVCaptureEventSound](avkit/avcaptureeventsound.md)
- [AVInputPickerInteraction](avkit/avinputpickerinteraction.md)
