API Differences in AVFoundation in macOS 15.0

It's more difficult than it used to be to find what changed in Apple SDKs. This page is automatically generated and shows what is new in AVFoundation in the macOS 15.0 SDK.

Table of Contents

Structs

AVMergedMetrics
AVMetrics
AVPlayerItemIntegratedTimeline
BoundaryTimes
AVPlayerItemIntegratedTimeline
PeriodicTimes

Enums

AVAssetExportSession
State

Typealiases

AsyncIterator
public typealias Element = MetricEvent
AsyncIterator
public typealias Element = (AVFoundation.AVMetricEvent, any AVFoundation.AVMetricEventStreamPublisher)
AsyncIterator
@_implements(_Concurrency.AsyncIteratorProtocol, Failure) public typealias __AsyncIteratorProtocol_Failure = any Swift.Error
AsyncIterator
@_implements(_Concurrency.AsyncIteratorProtocol, Failure) public typealias __AsyncIteratorProtocol_Failure = any Swift.Error
Images
@_implements(_Concurrency.AsyncIteratorProtocol, Failure) public typealias __AsyncIteratorProtocol_Failure = Swift.Never
Images
@_implements(_Concurrency.AsyncSequence, Failure) public typealias __AsyncSequence_Failure = Swift.Never
typedef NSString *AVAssetImageGeneratorDynamicRangePolicy
typedef NSString *AVSpatialCaptureDiscomfortReason

Functions & Methods

AVAssetExportSession
public func states(updateInterval: Foundation.TimeInterval = .infinity) -> some Swift.Sendable & _Concurrency.AsyncSequence<AVFoundation.AVAssetExportSession.State, Swift.Never>
AVCaptureIndexPicker
@nonobjc public func setActionQueue(_ actionQueue: Dispatch.DispatchQueue, action: @escaping (Swift.Int) -> ())
AVCaptureSlider
@nonobjc public func setActionQueue(_ actionQueue: Dispatch.DispatchQueue, action: @escaping (Swift.Float) -> ())
AVMetricEventStreamPublisher
public func allMetrics() -> AVFoundation.AVMetrics<AVFoundation.AVMetricEvent>
AVMetricEventStreamPublisher
public func metrics<MetricEvent>(forType metricType: MetricEvent.Type) -> AVFoundation.AVMetrics<MetricEvent> where MetricEvent : AVFoundation.AVMetricEvent
AVPlayerItemIntegratedTimeline
public func boundaryTimes(for segment: AVFoundation.AVPlayerItemSegment, offsetsIntoSegment: [CoreMedia.CMTime]) -> AVFoundation.AVPlayerItemIntegratedTimeline.BoundaryTimes
AVPlayerItemIntegratedTimeline
public func periodicTimes(forInterval: CoreMedia.CMTime) -> AVFoundation.AVPlayerItemIntegratedTimeline.PeriodicTimes
AVPlayerItemIntegratedTimelineSnapshot
public func segmentAndOffsetIntoSegment(forTimelineTime: CoreMedia.CMTime) -> (AVFoundation.AVPlayerItemSegment, CoreMedia.CMTime)
AVVideoOutputSpecification
public func setOutputSettings(_ outputSettings: [Swift.String : any Swift.Sendable]?, for tagCollection: [CoreMedia.CMTag])
AVCaptureDeviceInput
- (BOOL)isMultichannelAudioModeSupported:(AVCaptureMultichannelAudioMode)multichannelAudioMode;
AVCaptureDeviceInput
- (BOOL)isWindNoiseRemovalSupported;
AVCaptureDeviceInput
- (BOOL)isWindNoiseRemovalEnabled;
AVAssetVariantQualifier
+ (nonnull NSPredicate *)predicateForAudioSampleRate:(double)sampleRate mediaSelectionOption:(nullable AVMediaSelectionOption *)mediaSelectionOption operatorType:(NSPredicateOperatorType)operatorType;
AVVideoCompositionValidation
- (BOOL)isValidForTracks:(nonnull NSArray<AVAssetTrack *> *)tracks assetDuration:(CMTime)duration timeRange:(CMTimeRange)timeRange validationDelegate:(nullable id<AVVideoCompositionValidationHandling>)validationDelegate;
AVCaptureSession
- (void)setControlsDelegate:(nullable id<AVCaptureSessionControlsDelegate>)controlsDelegate queue:(nullable dispatch_queue_t)controlsDelegateCallbackQueue;
AVCaptureSession
- (BOOL)canAddControl:(nonnull AVCaptureControl *)control;
AVCaptureSession
- (void)addControl:(nonnull AVCaptureControl *)control;
AVCaptureSession
- (void)removeControl:(nonnull AVCaptureControl *)control;
AVVideoOutputSpecification
- (void)setOutputSettings:(nullable NSDictionary<NSString *,id> *)outputSettings forTagCollection:(nonnull CMTagCollectionRef)tagCollection;
AVCapturePhotoOutput
- (BOOL)isConstantColorSupported;
AVCapturePhotoOutput
- (BOOL)isConstantColorEnabled;
AVCapturePhotoOutput
- (BOOL)isShutterSoundSuppressionSupported;
AVCapturePhotoSettings
- (BOOL)isConstantColorEnabled;
AVCapturePhotoSettings
- (BOOL)isConstantColorFallbackPhotoDeliveryEnabled;
AVCapturePhotoSettings
- (BOOL)isShutterSoundSuppressionEnabled;
AVCapturePhoto
- (BOOL)isConstantColorFallbackPhoto;
AVCaptureDevice
- (BOOL)isAutoVideoFrameRateEnabled;
AVCaptureDeviceFormat
- (BOOL)isAutoVideoFrameRateSupported;
AVCaptureMovieFileOutput
- (BOOL)isSpatialVideoCaptureSupported;
AVCaptureMovieFileOutput
- (BOOL)isSpatialVideoCaptureEnabled;

Properties & Constants

AVCaptureDevice.Format
@nonobjc public var systemRecommendedExposureBiasRange: Swift.ClosedRange<Swift.Float>?
AVCaptureDevice.Format
@nonobjc public var systemRecommendedVideoZoomRange: Swift.ClosedRange<CoreFoundation.CGFloat>?
AVCaptureSlider
@nonobjc public var prominentValues: [Swift.Float]
AVMetricPlayerItemLikelyToKeepUpEvent
@nonobjc public var loadedTimeRanges: [CoreMedia.CMTimeRange]
AVMetricPlayerItemVariantSwitchEvent
@nonobjc public var loadedTimeRanges: [CoreMedia.CMTimeRange]
AVMetricPlayerItemVariantSwitchStartEvent
@nonobjc public var loadedTimeRanges: [CoreMedia.CMTimeRange]
AVPlayerItemSegment
@nonobjc public var loadedTimeRanges: [CoreMedia.CMTimeRange]
extern const AVAssetPlaybackConfigurationOption _Nonnull AVAssetPlaybackConfigurationOptionSpatialVideo
AVCaptureDeviceInput
@property(nonatomic, assign, unsafe_unretained, readwrite) AVCaptureMultichannelAudioMode multichannelAudioMode;
AVCaptureDeviceInput
@property(nonatomic, readonly, getter = isWindNoiseRemovalSupported) BOOL windNoiseRemovalSupported;
AVCaptureDeviceInput
@property(nonatomic, assign, unsafe_unretained, readwrite, getter = isWindNoiseRemovalEnabled) BOOL windNoiseRemovalEnabled;
extern const AVMetadataIdentifier AVMetadataIdentifierQuickTimeMetadataFullFrameRatePlaybackIntent
extern API_UNAVAILABLE(watchos) const AVAssetImageGeneratorDynamicRangePolicy AVAssetImageGeneratorDynamicRangePolicyForceSDR
extern API_UNAVAILABLE(watchos) const AVAssetImageGeneratorDynamicRangePolicy AVAssetImageGeneratorDynamicRangePolicyMatchSource
AVAssetImageGenerator
@property(nonatomic, copy, readwrite) API_UNAVAILABLE(watchos) AVAssetImageGeneratorDynamicRangePolicy dynamicRangePolicy;
extern const NSNotificationName _Nonnull AVPlayerIntegratedTimelineSnapshotsOutOfSyncNotification
extern NSString *const _Nonnull AVPlayerIntegratedTimelineSnapshotsOutOfSyncReasonKey
extern const AVPlayerIntegratedTimelineSnapshotsOutOfSyncReason _Nonnull AVPlayerIntegratedTimelineSnapshotsOutOfSyncReasonSegmentsChanged
extern const AVPlayerIntegratedTimelineSnapshotsOutOfSyncReason _Nonnull AVPlayerIntegratedTimelineSnapshotsOutOfSyncReasonCurrentSegmentChanged
extern const AVPlayerIntegratedTimelineSnapshotsOutOfSyncReason _Nonnull AVPlayerIntegratedTimelineSnapshotsOutOfSyncReasonLoadedTimeRangesChanged
AVPlayerItemIntegratedTimelineSupport
@property(atomic, readonly) AVPlayerItemIntegratedTimeline * _Nonnull integratedTimeline;
AVCaptureSession
@property(nonatomic, readonly) BOOL supportsControls;
AVCaptureSession
@property(nonatomic, readonly) NSInteger maxControlsCount;
AVCaptureSession
@property(nonatomic, readonly, nullable) id<AVCaptureSessionControlsDelegate> controlsDelegate;
AVCaptureSession
@property(nonatomic, readonly, nullable) dispatch_queue_t controlsDelegateCallbackQueue;
AVCaptureSession
@property(nonatomic, readonly) API_UNAVAILABLE(visionos) NSArray<__kindof AVCaptureControl *> *controls;
extern const AVVideoCodecType AVVideoCodecTypeJPEGXL
extern const AVVideoCodecType AVVideoCodecTypeAppleProRes4444XQ
extern NSString *const AVVideoTransferFunction_IEC_sRGB
AVVideoOutputSpecification
@property(nonatomic, copy, readwrite, nullable) NSDictionary<NSString *,id> *defaultOutputSettings;
AVPlayerVideoOutputConfiguration
@property(nonatomic, readonly) CGAffineTransform preferredTransform;
AVCapturePhotoOutput
@property(nonatomic, readonly, getter = isConstantColorSupported) BOOL constantColorSupported;
AVCapturePhotoOutput
@property(nonatomic, assign, unsafe_unretained, readwrite, getter = isConstantColorEnabled) BOOL constantColorEnabled;
AVCapturePhotoOutput
@property(nonatomic, readonly, getter = isShutterSoundSuppressionSupported) BOOL shutterSoundSuppressionSupported;
AVCapturePhotoSettings
@property(nonatomic, assign, unsafe_unretained, readwrite, getter = isConstantColorEnabled) BOOL constantColorEnabled;
AVCapturePhotoSettings
@property(nonatomic, assign, unsafe_unretained, readwrite, getter = isConstantColorFallbackPhotoDeliveryEnabled) BOOL constantColorFallbackPhotoDeliveryEnabled;
AVCapturePhotoSettings
@property(nonatomic, assign, unsafe_unretained, readwrite, getter = isShutterSoundSuppressionEnabled) BOOL shutterSoundSuppressionEnabled;
AVCapturePhoto
@property(atomic, readonly, nullable) CVPixelBufferRef constantColorConfidenceMap;
AVCapturePhoto
@property(atomic, readonly) float constantColorCenterWeightedMeanConfidenceLevel;
AVCapturePhoto
@property(atomic, readonly, getter = isConstantColorFallbackPhoto) BOOL constantColorFallbackPhoto;
AVPlayerInterstitialEvent
@property(nonatomic, readonly) AVPlayerInterstitialEventTimelineOccupancy timelineOccupancy;
AVPlayerInterstitialEvent
@property(nonatomic, readonly) BOOL supplementsPrimaryContent;
AVPlayerInterstitialEvent
@property(nonatomic, readonly) BOOL contentMayVary;
MutableEvents
@property(nonatomic, assign, unsafe_unretained, readwrite) AVPlayerInterstitialEventTimelineOccupancy timelineOccupancy;
MutableEvents
@property(nonatomic, assign, unsafe_unretained, readwrite) BOOL supplementsPrimaryContent;
MutableEvents
@property(nonatomic, assign, unsafe_unretained, readwrite) BOOL contentMayVary;
MutableEvents
@property(nonatomic, assign, unsafe_unretained, readwrite) CMTime plannedDuration;
extern const AVMetadataKey AVMetadataQuickTimeMetadataKeyFullFrameRatePlaybackIntent
AVCaptureDevice
@property(nonatomic, assign, unsafe_unretained, readwrite, getter = isAutoVideoFrameRateEnabled) BOOL autoVideoFrameRateEnabled;
extern API_UNAVAILABLE(visionos) const AVSpatialCaptureDiscomfortReason AVSpatialCaptureDiscomfortReasonNotEnoughLight
extern API_UNAVAILABLE(visionos) const AVSpatialCaptureDiscomfortReason AVSpatialCaptureDiscomfortReasonSubjectTooClose
AVCaptureDeviceSpatialCapture
@property(nonatomic, readonly) API_UNAVAILABLE(visionos) NSSet<AVSpatialCaptureDiscomfortReason> *spatialCaptureDiscomfortReasons;
AVCaptureDeviceFormat
@property(nonatomic, readonly, nullable) AVZoomRange *systemRecommendedVideoZoomRange;
AVCaptureDeviceFormat
@property(nonatomic, readonly, nullable) AVExposureBiasRange *systemRecommendedExposureBiasRange;
AVCaptureDeviceFormat
@property(nonatomic, readonly, getter = isAutoVideoFrameRateSupported) BOOL autoVideoFrameRateSupported;
AVCaptureMovieFileOutput
@property(nonatomic, readonly, getter = isSpatialVideoCaptureSupported) BOOL spatialVideoCaptureSupported;
AVCaptureMovieFileOutput
@property(nonatomic, assign, unsafe_unretained, readwrite, getter = isSpatialVideoCaptureEnabled) BOOL spatialVideoCaptureEnabled;

Conformances

AVAssetDownloadStorageManager
@unchecked Swift.Sendable
AVAssetResourceLoader
@unchecked Swift.Sendable
AVAssetResourceLoadingContentInformationRequest
@unchecked Swift.Sendable
AVAssetResourceLoadingDataRequest
@unchecked Swift.Sendable
AVAssetResourceLoadingRequest
@unchecked Swift.Sendable
AVAssetResourceLoadingRequestor
@unchecked Swift.Sendable
AVAssetResourceRenewalRequest
@unchecked Swift.Sendable
AVCaptionGroup
@unchecked Swift.Sendable
AVPlaybackCoordinator
@unchecked Swift.Sendable

Initializers

AVCaptureSlider
@nonobjc convenience public init(_ localizedTitle: Swift.String, symbolName: Swift.String, in range: Swift.ClosedRange<Swift.Float>)
AVCaptureSlider
@nonobjc convenience public init(_ localizedTitle: Swift.String, symbolName: Swift.String, in range: Swift.ClosedRange<Swift.Float>, step: Swift.Float)
AVCaptureSlider
@nonobjc convenience public init(_ localizedTitle: Swift.String, symbolName: Swift.String, values: [Swift.Float])

Protocols

AVMetricEventStreamPublisher
AVMetricEventStreamSubscriber
AVCaptureSessionControlsDelegate
AVPlayerItemRenderedLegibleOutputPushDelegate

Classes

AVCaptureSystemExposureBiasSlider
AVCaptureIndexPicker
AVMetricEventStream
AVMetricEvent
AVMetricErrorEvent
AVMetricMediaResourceRequestEvent
AVMetricHLSPlaylistRequestEvent
AVMetricHLSMediaSegmentRequestEvent
AVMetricContentKeyRequestEvent
AVMetricPlayerItemLikelyToKeepUpEvent
AVMetricPlayerItemInitialLikelyToKeepUpEvent
AVMetricPlayerItemRateChangeEvent
AVMetricPlayerItemStallEvent
AVMetricPlayerItemSeekEvent
AVMetricPlayerItemSeekDidCompleteEvent
AVMetricPlayerItemVariantSwitchEvent
AVMetricPlayerItemVariantSwitchStartEvent
AVMetricPlayerItemPlaybackSummaryEvent
AVMetricDownloadSummaryEvent
AVCaptureSlider
AVRenderedCaptionImage
AVMediaExtensionProperties
AVPlayerItemSegment
AVPlayerItemIntegratedTimelineSnapshot
AVPlayerItemIntegratedTimeline
AVCaptureSystemZoomSlider
AVPlayerItemRenderedLegibleOutput
AVExposureBiasRange
AVCaptureControl

Extensions

AVMediaExtension
AVPlayerItemIntegratedTimelineControl
AVPlayerItemIntegratedTimelineObserver
AVAssetResourceLoaderCommonMediaClientDataSupport
AVCaptureDeviceBackgroundReplacement
AVCaptureDeviceFormatSpatialVideoCapture
AVCaptureDeviceFormatBackgroundReplacement