---
title: Media playback
framework: AVFoundation
role: collectionGroup
role_heading: API Collection
path: avfoundation/media-playback
---

# Media playback

Manage the playback of media assets and interstitial content, independent of how you present that content in your interface.

## Overview

Overview You use a player to manage the playback and timing of a media asset, for example starting and stopping playback, and seeking to a particular time. A player manages the playback of a single media asset at a time. The framework also provides a queue player that queues media assets to play sequentially. note: When you use AVFoundation, Apple may collect metrics to help improve the framework. You create an instance of AVPlayerItem to play a media asset. A player item manages the timing and presentation state of an asset played by the player. A player item also contains player item tracks that correspond to the tracks in the asset. You direct the output of a player to a specialized Core Animation layer, a player layer, or a synchronized layer. important: You must call the VTRegisterProfessionalVideoWorkflowVideoDecoders() function if your app requires Afterburner accelerated playback and decoding of ProRes and ProRes RAW video files.

## Topics

### Essentials

- [Configuring your app for media playback](avfoundation/configuring-your-app-for-media-playback.md)

### Playback control

- [Observing playback state in SwiftUI](avfoundation/observing-playback-state-in-swiftui.md)
- [Controlling the transport behavior of a player](avfoundation/controlling-the-transport-behavior-of-a-player.md)
- [Creating a seamless multiview playback experience](avfoundation/creating-a-seamless-multiview-playback-experience.md)
- [AVPlayer](avfoundation/avplayer.md)
- [AVPlayerItem](avfoundation/avplayeritem.md)
- [AVPlayerItemTrack](avfoundation/avplayeritemtrack.md)
- [AVQueuePlayer](avfoundation/avqueueplayer.md)
- [AVPlayerLooper](avfoundation/avplayerlooper.md)

### SharePlay

- [Destination Video](visionos/destination-video.md)
- [Supporting coordinated media playback](avfoundation/supporting-coordinated-media-playback.md)
- [AVPlaybackCoordinator](avfoundation/avplaybackcoordinator.md)
- [AVPlayerPlaybackCoordinator](avfoundation/avplayerplaybackcoordinator.md)
- [AVDelegatingPlaybackCoordinator](avfoundation/avdelegatingplaybackcoordinator.md)
- [AVPlaybackCoordinationMedium](avfoundation/avplaybackcoordinationmedium.md)

### Presentation

- [Monitoring playback progress in your app](avfoundation/monitoring-playback-progress-in-your-app.md)
- [Using HEVC video with alpha](avfoundation/using-hevc-video-with-alpha.md)
- [AVPlayerLayer](avfoundation/avplayerlayer.md)
- [AVSynchronizedLayer](avfoundation/avsynchronizedlayer.md)

### Media selection

- [Selecting subtitles and alternative audio tracks](avfoundation/selecting-subtitles-and-alternative-audio-tracks.md)
- [AVMediaSelection](avfoundation/avmediaselection.md)
- [AVMediaSelectionGroup](avfoundation/avmediaselectiongroup.md)
- [AVMediaSelectionOption](avfoundation/avmediaselectionoption.md)
- [AVMutableMediaSelection](avfoundation/avmutablemediaselection.md)
- [AVPlayerMediaSelectionCriteria](avfoundation/avplayermediaselectioncriteria.md)
- [AVCustomMediaSelectionScheme](avfoundation/avcustommediaselectionscheme.md)
- [AVMediaPresentationSelector](avfoundation/avmediapresentationselector.md)
- [AVMediaPresentationSetting](avfoundation/avmediapresentationsetting.md)

### Interstitials

- [Providing an integrated view of your timeline when playing HLS interstitials](avfoundation/providing-an-integrated-view-of-your-timeline-when-playing-hls-interstitials.md)
- [AVPlayerInterstitialEvent](avfoundation/avplayerinterstitialevent.md)
- [AVPlayerInterstitialEventController](avfoundation/avplayerinterstitialeventcontroller.md)
- [AVPlayerInterstitialEventMonitor](avfoundation/avplayerinterstitialeventmonitor.md)
- [AVPlayerInterstitialEventMonitorScheduleRequestErrorKey](avfoundation/avplayerinterstitialeventmonitorschedulerequesterrorkey.md)
- [AVPlayerInterstitialEventMonitorScheduleRequestIdentifierKey](avfoundation/avplayerinterstitialeventmonitorschedulerequestidentifierkey.md)
- [AVPlayerInterstitialEventMonitorScheduleRequestResponseKey](avfoundation/avplayerinterstitialeventmonitorschedulerequestresponsekey.md)
- [AVPlayerItemIntegratedTimeline](avfoundation/avplayeritemintegratedtimeline.md)

### Metrics

- [AVMetrics](avfoundation/avmetrics.md)
- [AVMergedMetrics](avfoundation/avmergedmetrics.md)
- [AVVideoPerformanceMetrics](avfoundation/avvideoperformancemetrics.md)
- [AVMetricEventStreamPublisher](avfoundation/avmetriceventstreampublisher.md)
- [AVMetricEvent](avfoundation/avmetricevent.md)
- [AVMetricErrorEvent](avfoundation/avmetricerrorevent.md)
- [Metric event types](avfoundation/metric-event-types.md)

### Remote controls

- [Supporting remote interactions in tvOS](avfoundation/supporting-remote-interactions-in-tvos.md)

### Timed metadata

- [Presenting chapter markers](avfoundation/presenting-chapter-markers.md)
- [AVMetadataGroup](avfoundation/avmetadatagroup.md)
- [AVTimedMetadataGroup](avfoundation/avtimedmetadatagroup.md)
- [AVMutableTimedMetadataGroup](avfoundation/avmutabletimedmetadatagroup.md)
- [AVDateRangeMetadataGroup](avfoundation/avdaterangemetadatagroup.md)
- [AVMutableDateRangeMetadataGroup](avfoundation/avmutabledaterangemetadatagroup.md)
- [AVPlayerItemMediaDataCollector](avfoundation/avplayeritemmediadatacollector.md)
- [AVPlayerItemMetadataCollector](avfoundation/avplayeritemmetadatacollector.md)

### Media output

- [AVPlayerVideoOutput](avfoundation/avplayervideooutput.md)
- [AVVideoOutputSpecification](avfoundation/avvideooutputspecification.md)
- [AVPlayerItemOutput](avfoundation/avplayeritemoutput.md)
- [AVPlayerItemVideoOutput](avfoundation/avplayeritemvideooutput.md)
- [AVPlayerItemLegibleOutput](avfoundation/avplayeritemlegibleoutput.md)
- [AVPlayerItemRenderedLegibleOutput](avfoundation/avplayeritemrenderedlegibleoutput.md)
- [AVRenderedCaptionImage](avfoundation/avrenderedcaptionimage.md)
- [AVPlayerItemMetadataOutput](avfoundation/avplayeritemmetadataoutput.md)
- [AVPlayerItemOutputPushDelegate](avfoundation/avplayeritemoutputpushdelegate.md)
- [AVPlayerItemSampleBufferOutput](avfoundation/avplayeritemsamplebufferoutput.md)
- [AVPlayerItemSampleBufferOutputConfiguration](avfoundation/avplayeritemsamplebufferoutputconfiguration.md)
- [AVPlayerItemSampleBufferOutputAudioConfiguration](avfoundation/avplayeritemsamplebufferoutputaudioconfiguration.md)

### Utilities

- [AVAssetPlaybackAssistant](avfoundation/avassetplaybackassistant.md)
- [AVAssetPlaybackConfigurationOption](avfoundation/avassetplaybackconfigurationoption.md)

## See Also

### Playback

- [Offline playback and storage](avfoundation/offline-playback-and-storage.md)
- [Streaming and AirPlay](avfoundation/streaming-and-airplay.md)
- [Sample buffer playback](avfoundation/sample-buffer-playback.md)
