One Logo Pool Ball
Media · IOS API REFERENCE

AVKit

Adopt the system’s video playback interfaces, and integrate your camera app with capture hardware.

46 types

192 callable entries

27 skipped

88% entry coverage

Generated from iOS SDK 27.1. Availability is shown on each declaration; permissions and entitlements still apply.

Types

AVAudioSession.RouteSelection

enum · iOS 13.0+

AVCaptureDeviceDescriptor

class · iOS 27.1+

AVCaptureDeviceDirectionCoordinator

class · iOS 27.1+

AVCaptureDeviceDirectionMap

class · iOS 27.1+

AVCaptureEvent

class · iOS 17.2+

AVCaptureEventInteraction

class · iOS 17.2+

AVCaptureEventPhase

enum · iOS 17.2+

AVCaptureEventSound

class · iOS 26.0+

AVDisplayDynamicRange

enum · iOS 26.0+

AVInputPickerInteraction

class · iOS 26.0+

AVInputPickerInteraction.Delegate

protocol · iOS 26.0+

AVInterstitialTimeRange

class · iOS 16.0+

AVKitError

struct · iOS 9.0+

AVKitError.Code

enum · iOS 9.0+

AVLegibleMediaOptionsMenuController

class · iOS 26.4+

AVLegibleMediaOptionsMenuController.Delegate

protocol · iOS 26.4+

AVLegibleMediaOptionsMenuController.MenuContents

struct · iOS 26.4+

AVLegibleMediaOptionsMenuController.StateChangeReason

enum · iOS 26.4+

AVLegibleMediaOptionsMenuState

struct · iOS 26.4+

AVPictureInPictureController

class · iOS 9.0+

AVPictureInPictureController.ContentSource

class · iOS 15.0+

AVPictureInPictureControllerDelegate

protocol · iOS 9.0+

AVPictureInPictureSampleBufferPlaybackDelegate

protocol · iOS 15.0+

AVPictureInPictureVideoCallViewController

class · iOS 15.0+

AVPlaybackSpeed

class · iOS 16.0+

AVPlaybackUserInterfaceContentArtwork

class · iOS 27.0+

AVPlaybackUserInterfaceContentMetadata

struct · iOS 27.0+

AVPlaybackUserInterfaceContentMetadata.VideoProperties

struct · iOS 27.0+

AVPlaybackUserInterfaceContentURLArtwork

class · iOS 27.0+

AVPlaybackUserInterfaceControllable

protocol · iOS 27.0+

AVPlaybackUserInterfaceMediaSelectionControllable

protocol · iOS 27.0+

AVPlaybackUserInterfaceMediaSelectionOption

class · iOS 27.0+

AVPlaybackUserInterfaceMetadataProviding

protocol · iOS 27.0+

AVPlaybackUserInterfacePlaybackControllable

protocol · iOS 27.0+

AVPlaybackUserInterfacePlaybackPosition

class · iOS 27.0+

AVPlaybackUserInterfacePlaybackState

enum · iOS 27.0+

AVPlaybackUserInterfaceSeekCapabilities

struct · iOS 27.0+

AVPlaybackUserInterfaceTimeControllable

protocol · iOS 27.0+

AVPlaybackUserInterfaceTimelineSegment

class · iOS 27.0+

AVPlaybackUserInterfaceTimelineSegmentType

enum · iOS 27.0+

AVPlaybackUserInterfaceVolumeControllable

protocol · iOS 27.0+

AVPlayerViewController

class · iOS 8.0+

AVPlayerViewControllerDelegate

protocol · iOS 9.0+

AVRoutePickerView

class · iOS 11.0+

AVRoutePickerViewDelegate

protocol · iOS 11.0+

AVVideoFrameAnalysisType

struct · iOS 17.0+

Functions and constants

get · iOS 9.0+

AVKitErrorDomain

TypeScript
const AVKitErrorDomain: string
Swift declaration
let AVKitErrorDomain: String
get

PLATFORM_SUPPORTS_AVKITCORE

TypeScript
const PLATFORM_SUPPORTS_AVKITCORE: boolean
Swift declaration
var PLATFORM_SUPPORTS_AVKITCORE: Bool { get }
method · iOS 13.0+

prepareRouteSelectionForPlayback

TypeScript
prepareRouteSelectionForPlayback(completionHandler: ((arg0: boolean, arg1: AVAudioSession_RouteSelection) => void)): void
Swift declaration
func prepareRouteSelectionForPlayback() async -> (Bool, AVAudioSession.RouteSelection)
get · iOS 12.2+

externalMetadata

TypeScript
get externalMetadata(): Promise<Array<_AVFoundation_AVMetadataItem>>
Swift declaration
var externalMetadata: [AVMetadataItem] { get set }
set · iOS 12.2+

externalMetadata

TypeScript
setExternalMetadata(value: Array<_AVFoundation_AVMetadataItem>): Promise<void>
Swift declaration
var externalMetadata: [AVMetadataItem] { get set }
get · iOS 16.0+

interstitialTimeRanges

TypeScript
get interstitialTimeRanges(): Promise<Array<AVInterstitialTimeRange>>
Swift declaration
var interstitialTimeRanges: [AVInterstitialTimeRange] { get }

Skipped declarations

27 declarations were excluded from these bindings. Each reason comes from the generator or the iOS SDK compiler.

AVPlaybackUserInterfaceContentArtwork.init()

inherited init: clang: 'init' is unavailable

AVPlaybackUserInterfaceContentURLArtwork.init()

inherited init: clang: 'init' is unavailable

AVPlaybackUserInterfaceMediaSelectionOption.init()

inherited init: cannot prove legal (class declares 1 custom initializer)

AVPlaybackUserInterfacePlaybackPosition.init()

inherited init: cannot prove legal (class declares 1 custom initializer)

AVPlaybackUserInterfaceTimelineSegment.init()

inherited init: cannot prove legal (class declares 1 custom initializer)

AVCaptureEventInteraction.init()

inherited init: cannot prove legal (class declares 4 custom initializers)

AVCaptureEvent.init()

inherited init: clang: 'init' is unavailable

AVLegibleMediaOptionsMenuController.init()

inherited init: cannot prove legal (class declares 1 custom initializer)

AVCaptureDeviceDescriptor.init()

inherited init: clang: 'init' is unavailable

AVCaptureDeviceDirectionCoordinator.init()

inherited init: cannot prove legal (class declares 1 custom initializer)

AVCaptureDeviceDirectionMap.init()

inherited init: clang: 'init' is unavailable

AVCaptureEventSound.init()

inherited init: cannot prove legal (class declares 2 custom initializers)

AVPlaybackSpeed.init()

inherited init: cannot prove legal (class declares 1 custom initializer)

AVPictureInPictureController.init()

inherited init: cannot prove legal (class declares 2 custom initializers)

AVPictureInPictureController.ContentSource.init()

inherited init: cannot prove legal (class declares 3 custom initializers)

protocol implementation AVPlaybackUserInterfacePlaybackControllable

non-method protocol requirement

protocol implementation AVPlaybackUserInterfaceTimeControllable

non-method protocol requirement

protocol implementation AVPlaybackUserInterfaceMediaSelectionControllable

non-method protocol requirement

protocol implementation AVPlaybackUserInterfaceVolumeControllable

non-method protocol requirement

protocol implementation AVPlaybackUserInterfaceMetadataProviding

non-method protocol requirement

protocol implementation AVPlaybackUserInterfaceControllable

non-method protocol requirement

protocol implementation AVPictureInPictureControllerDelegate.pictureInPictureController(_:)

synchronous protocol result requires an active JS-thread call; delegate invocations can escape it

protocol implementation AVPlayerViewControllerDelegate.playerViewControllerRestoreUserInterfaceForFullScreenExit(_:)

synchronous protocol result requires an active JS-thread call; delegate invocations can escape it

protocol implementation AVPlayerViewControllerDelegate.playerViewControllerShouldAutomaticallyDismissAtPictureInPictureStart(_:)

synchronous protocol result requires an active JS-thread call; delegate invocations can escape it

protocol implementation AVPlayerViewControllerDelegate.playerViewControllerRestoreUserInterfaceForPictureInPictureStop(_:)

synchronous protocol result requires an active JS-thread call; delegate invocations can escape it

protocol implementation AVPictureInPictureSampleBufferPlaybackDelegate.pictureInPictureControllerShouldProhibitBackgroundAudioPlayback(_:)

synchronous protocol result requires an active JS-thread call; delegate invocations can escape it

protocol implementation AVPictureInPictureSampleBufferPlaybackDelegate

async protocol requirement cannot propagate callback failure