Create view-level services for media playback, complete with user controls, chapter navigation, and support for subtitles and closed captioning.


The AVKit framework provides a high-level interface for playing video content.


Media Playback

Adopting Picture in Picture in a Standard Player

Add picture-in-picture controls to your player using a player view controller.

Adopting Picture in Picture in a Custom Player

Add picture-in-picture controls to your custom player using a picture-in-picture controller.

Working with Interstitial Content (tvOS)

Present additional content such as legal text, content warnings, or advertisements alongside your main media content.

Adding Information to the Info Panel (tvOS)

Add metadata information and navigation markers to the Info panel in Apple TV.

Adopting Custom Interactive Overlays, Channel Flipping, and Parental Controls in tvOS Video Playback

This sample demonstrates support for custom interactive overlays, and parental controls, using AVPlayerViewController.


An object that displays the video content from a player object along with system-supplied playback controls.


A macOS-only object that displays the video content from a player object along with system-supplied playback controls.


A controller that responds to user-initiated playback of video in a floating, resizable window on iPad.


An object that displays controls for picking playback routes.


A time range in an audiovisual presentation as interstitial content, such as advertisements or legal notices.


A set of markers for navigating playback of an audiovisual presentation.

Up Next Content

Presenting Content Proposals (tvOS)

Display a preview of an upcoming media item at the conclusion of the currently playing media item.


A view controller used to create custom content proposal presentations.


An object that describes the content proposed to follow the current item.

TV and Video Syncing


A management object that controls whether the TV switches modes to match the video's native mode.

Video Capture


An object used to display standard user interface controls for capturing media data.


Beta Software

This documentation contains preliminary information about an API or technology in development. This information is subject to change, and software implemented according to this documentation should be tested with final operating system software.

Learn more about using Apple's beta software