Skip to content

AVFoundation macOS xcode27.0 b4

Alex Soto edited this page Jul 24, 2026 · 2 revisions

#AVFoundation.framework https://github.com/dotnet/macios/pull/26271

diff -ruN /Applications/Xcode_27.0.0-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAsset.h /Applications/Xcode_27.0.0-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAsset.h
--- /Applications/Xcode_27.0.0-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAsset.h	2026-06-30 00:06:36
+++ /Applications/Xcode_27.0.0-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAsset.h	2026-07-13 23:38:15
@@ -664,8 +664,8 @@
 /// On releases prior to macOS 14, iOS 17, tvOS 17, and watchOS 10, regardless of the specified MIME type this method interprets all codecs parameters according to the ISO family syntax defined by RFC 6381 and evaluates playability according to whether the indicated codecs are supported when carried in container formats that conform to the ISO BMFF specification, such as the MPEG-4 file format.
 /// On releases starting with macOS 14, iOS 17, tvOS 17, and watchOS 10, this method interprets codecs parameters according to the syntax and namespace determined by the specified MIME type and evaluates playability according to whether the indicated codecs are supported when carried in the container format indicated by that MIME type. Codecs parameters for each of the following MIME types are supported: video/mp4 (per RFC 6381, ISO/IEC 14496-15 Annex E, et al), video/quicktime (RFC 6381 et al), video/mp2t (ISO/IEC 13818-1), audio/vnd.wave (RFC 2361), audio/aiff (using the CoreAudio AudioFormatID namespace), audio/x-caf (also using the CoreAudio AudioFormatID namespace), and audio/mpeg (e.g. codecs="mp3"). MIME types supported as alternatives for the same container formats, e.g audio/mp4, are equivalently treated. If the indicated MIME type defines no supported syntax and namespace for codecs parameters, when any codecs parameter is present this method returns NO.
 /// 
-/// - Parameter extendedMIMEType:
-/// 
+/// - Parameter extendedMIMEType: An extended MIME type string such as video/3gpp2; codecs="mp4v.20.9, mp4a.E1" or audio/aac; codecs="mp4a.E1".
+///
 /// - Returns: YES or NO.
 + (BOOL)isPlayableExtendedMIMEType: (NSString *)extendedMIMEType API_AVAILABLE(macos(10.7), ios(5.0), tvos(9.0), watchos(1.0), visionos(1.0));
 
diff -ruN /Applications/Xcode_27.0.0-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAssetWriterInput.h /Applications/Xcode_27.0.0-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAssetWriterInput.h
--- /Applications/Xcode_27.0.0-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAssetWriterInput.h	2026-06-27 17:37:06
+++ /Applications/Xcode_27.0.0-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAssetWriterInput.h	2026-07-13 23:38:35
@@ -854,8 +854,8 @@
 /// When mixing calls to -appendCaptionGroup: and -appendCaption:, the start time of each group must be equal to or greater than the end time of any previous captions.
 /// To mark a time range containing no captions, append a group containing an empty caption array.
 /// 
-/// - Parameter captionGroup:
-/// 
+/// - Parameter captionGroup: The caption group that the system writes to the output.
+///
 /// - Returns: Returns YES if the operation succeeded, NO if it failed.
 - (BOOL)appendCaptionGroup:(AVCaptionGroup *)captionGroup;
 
diff -ruN /Applications/Xcode_27.0.0-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h /Applications/Xcode_27.0.0-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h
--- /Applications/Xcode_27.0.0-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h	2026-06-28 02:29:09
+++ /Applications/Xcode_27.0.0-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h	2026-07-11 03:31:01
@@ -1074,7 +1074,7 @@
  @discussion
     The connection's videoRotationAngle property can only be set to a certain angle if this method returns YES for that angle. Only rotation angles of 0, 90, 180 and 270 are supported.
  */
-- (BOOL)isVideoRotationAngleSupported:(CGFloat)videoRotationAngle API_UNAVAILABLE(visionos);
+- (BOOL)isVideoRotationAngleSupported:(CGFloat)videoRotationAngle API_AVAILABLE(macos(14.0), ios(17.0), macCatalyst(17.0), tvos(17.0)) API_UNAVAILABLE(visionos);
 
 /*!
  @property videoRotationAngle
diff -ruN /Applications/Xcode_27.0.0-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSystemPressure.h /Applications/Xcode_27.0.0-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSystemPressure.h
--- /Applications/Xcode_27.0.0-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSystemPressure.h	2026-07-02 02:36:13
+++ /Applications/Xcode_27.0.0-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSystemPressure.h	2026-07-11 03:32:57
@@ -64,7 +64,7 @@
     /// Indicates that the camera module is operating at an elevated temperature.
     AVCaptureSystemPressureFactorCameraTemperature API_AVAILABLE(ios(17.0), macCatalyst(17.0), tvos(17.0)) API_UNAVAILABLE(macos) API_UNAVAILABLE(watchos) = (1UL << 3),
     /// Indicates that the system is 30 seconds away from unexpected power off.
-    AVCaptureSystemPressureFactorSystemStress           = (1UL << 4),
+    AVCaptureSystemPressureFactorSystemStress API_AVAILABLE(ios(27.0), macCatalyst(27.0), tvos(27.0)) API_UNAVAILABLE(macos) API_UNAVAILABLE(watchos) = (1UL << 4),
 } API_AVAILABLE(ios(11.1), macCatalyst(14.0), tvos(17.0), visionos(1.0)) API_UNAVAILABLE(macos) API_UNAVAILABLE(watchos);
 
 
diff -ruN /Applications/Xcode_27.0.0-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVError.h /Applications/Xcode_27.0.0-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVError.h
--- /Applications/Xcode_27.0.0-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVError.h	2026-06-30 00:06:34
+++ /Applications/Xcode_27.0.0-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVError.h	2026-07-15 00:28:46
@@ -4,7 +4,7 @@
  
 	Framework:  AVFoundation
  
-	Copyright 2010-2024 Apple Inc. All rights reserved.
+	Copyright 2010-2026 Apple Inc. All rights reserved.
 
  */
 
@@ -130,6 +130,7 @@
 	AVErrorFollowExternalSyncFailed API_AVAILABLE(ios(27.0)) API_UNAVAILABLE(macos, tvos, watchos, visionos, macCatalyst) = -11894,
 	AVErrorExternalSyncDeviceFrequencyHigherThanSpecified API_AVAILABLE(ios(27.0)) API_UNAVAILABLE(macos, tvos, watchos, visionos, macCatalyst) = -11895,
 	AVErrorExternalSyncDeviceFrequencyLowerThanSpecified API_AVAILABLE(ios(27.0)) API_UNAVAILABLE(macos, tvos, watchos, visionos, macCatalyst) = -11896,
+	AVErrorNotEnoughSpaceForProVideoStorageReplenishment API_AVAILABLE(macos(27.0), ios(27.0), tvos(27.0)) API_UNAVAILABLE(visionos) API_UNAVAILABLE(watchos) = -11897,
 };
 
 #else
diff -ruN /Applications/Xcode_27.0.0-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayer.h /Applications/Xcode_27.0.0-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayer.h
--- /Applications/Xcode_27.0.0-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayer.h	2026-06-27 23:59:15
+++ /Applications/Xcode_27.0.0-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayer.h	2026-07-15 00:42:51
@@ -62,8 +62,8 @@
 /// 
 /// Implicitly creates an AVPlayerItem. Clients can obtain the AVPlayerItem as it becomes the player's currentItem.
 /// 
-/// - Parameter URL:
-/// 
+/// - Parameter URL: A URL that identifies an audiovisual resource.
+///
 /// - Returns: An instance of AVPlayer
 + (instancetype)playerWithURL:(NSURL *)URL NS_SWIFT_NONISOLATED;
 
@@ -71,8 +71,8 @@
 /// 
 /// Useful in order to play items for which an AVAsset has previously been created. See -[AVPlayerItem initWithAsset:].
 /// 
-/// - Parameter item:
-/// 
+/// - Parameter item: The player item to play.
+///
 /// - Returns: An instance of AVPlayer
 + (instancetype)playerWithPlayerItem:(nullable AVPlayerItem *)item NS_SWIFT_NONISOLATED;
 
@@ -80,8 +80,8 @@
 /// 
 /// Implicitly creates an AVPlayerItem. Clients can obtain the AVPlayerItem as it becomes the player's currentItem.
 /// 
-/// - Parameter URL:
-/// 
+/// - Parameter URL: A URL that identifies an audiovisual resource.
+///
 /// - Returns: An instance of AVPlayer
 - (instancetype)initWithURL:(NSURL *)URL NS_SWIFT_NONISOLATED;
 
@@ -91,8 +91,8 @@
 /// This method throws an exception if the item is not an AVPlayerItem, or if the item is
 /// associated with another AVPlayer.
 /// 
-/// - Parameter item:
-/// 
+/// - Parameter item: The player item to play.
+///
 /// - Returns: An instance of AVPlayer
 - (instancetype)initWithPlayerItem:(nullable AVPlayerItem *)item NS_SWIFT_NONISOLATED;
 
@@ -127,10 +127,15 @@
 /// Informs the receiver of an AVPlayerRateDidChangeNotification about a rate change originated from another AVCoordinatedPlaybackParticipant connected through AVPlayerPlaybackCoordinator. This can be used to inform UI showing why the playback rate changed. The type of the value for this key is an AVCoordinatedPlaybackParticipant, which is part of the AVPlayerPlaybackCoordinator.otherParticipants array.
 AVF_EXPORT NSString *const AVPlayerRateDidChangeOriginatingParticipantKey API_AVAILABLE(macos(12.0), ios(15.0), tvos(15.0), visionos(1.0)) API_UNAVAILABLE(watchos);
 
+/// A structure that represents a rate change reason.
 typedef NSString * AVPlayerRateDidChangeReason NS_STRING_ENUM;
+/// An app makes a call to set the player's rate.
 AVF_EXPORT AVPlayerRateDidChangeReason const AVPlayerRateDidChangeReasonSetRateCalled API_AVAILABLE(macos(12.0), ios(15.0), tvos(15.0), visionos(1.0)) API_UNAVAILABLE(watchos);
+/// An attempt to change the player's rate fails.
 AVF_EXPORT AVPlayerRateDidChangeReason const AVPlayerRateDidChangeReasonSetRateFailed API_AVAILABLE(macos(12.0), ios(15.0), tvos(15.0), visionos(1.0)) API_UNAVAILABLE(watchos);
+/// The system interrupts the app's audio session.
 AVF_EXPORT AVPlayerRateDidChangeReason const AVPlayerRateDidChangeReasonAudioSessionInterrupted API_AVAILABLE(macos(12.0), ios(15.0), tvos(15.0), visionos(1.0)) API_UNAVAILABLE(watchos);
+/// An app transitions to the background.
 AVF_EXPORT AVPlayerRateDidChangeReason const AVPlayerRateDidChangeReasonAppBackgrounded API_AVAILABLE(macos(12.0), ios(15.0), tvos(15.0), visionos(1.0)) API_UNAVAILABLE(watchos);
 /// Indicates that the player automatically switched the playback rate from > 1.0 back to 1.0 when the playhead reached the live edge during live streaming.
 AVF_EXPORT AVPlayerRateDidChangeReason const AVPlayerRateDidChangeReasonPlayheadReachedLiveEdge API_AVAILABLE(macos(26.4), ios(26.4), tvos(26.4), watchos(26.4), visionos(26.4));
@@ -295,7 +300,7 @@
 /// Use this method to seek to a specified time for the current player item.
 /// The time seeked to may differ from the specified time for efficiency. For sample accurate seeking see seekToTime:toleranceBefore:toleranceAfter:.
 /// 
-/// - Parameter date:
+/// - Parameter date: The time to which to seek.
 - (void)seekToDate:(NSDate *)date NS_SWIFT_NONISOLATED;
 
 /// Moves the playback cursor and invokes the specified block when the seek operation has either been completed or been interrupted.
@@ -306,8 +311,8 @@
 /// completion handler will be invoked with the finished parameter set to YES. If no item is attached, the completion handler will be
 /// invoked immediately with the finished parameter set to NO.
 /// 
-/// - Parameter date:
-/// - Parameter completionHandler:
+/// - Parameter date: The time to which to seek.
+/// - Parameter completionHandler: The block to invoke when the seek operation has either been completed or been interrupted. The block takes one argument, finished, which indicates whether the seek operation completed.
 - (void)seekToDate:(NSDate *)date completionHandler:(void (^ NS_SWIFT_SENDABLE)(BOOL finished))completionHandler NS_SWIFT_NONISOLATED API_AVAILABLE(macos(10.7), ios(5.0), tvos(9.0), watchos(1.0), visionos(1.0));
 
 /// Moves the playback cursor.
diff -ruN /Applications/Xcode_27.0.0-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayerInterstitialEventController.h /Applications/Xcode_27.0.0-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayerInterstitialEventController.h
--- /Applications/Xcode_27.0.0-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayerInterstitialEventController.h	2026-06-27 17:33:37
+++ /Applications/Xcode_27.0.0-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayerInterstitialEventController.h	2026-07-11 03:29:36
@@ -219,15 +219,56 @@
 @end
 
 @interface AVPlayerInterstitialEvent (MutableEvents)
+/// The player item that represents the primary content.
+///
+/// The item must contain an AVAsset that provides intrinsic mappings from its timeline to realtime dates.
 @property (nonatomic, readwrite, weak) AVPlayerItem *primaryItem API_AVAILABLE(macos(13.0), ios(16.0), tvos(16.0), watchos(9.0), visionos(1.0));
+
+/// An identifier for the event.
+///
+/// Setting an event on the interstitial event controller replaces any existing event with the same identifier.
 @property (nonatomic, readwrite, copy) NSString *identifier API_AVAILABLE(macos(13.0), ios(16.0), tvos(16.0), watchos(9.0), visionos(1.0));
+
+/// A time within the timeline of the primary content that playback of interstitial content begins.
+///
+/// This property value is kCMTimeInvalid if you initialized the event with a date instead of a time.
 @property (nonatomic, readwrite) CMTime time API_AVAILABLE(macos(13.0), ios(16.0), tvos(16.0), watchos(9.0), visionos(1.0));
+
+/// A date within the date range of the primary content that playback of interstitial content begins.
+///
+/// This property value is nil if you initialized the event with a time instead of a date.
 @property (nonatomic, readwrite, copy, nullable) NSDate *date API_AVAILABLE(macos(13.0), ios(16.0), tvos(16.0), watchos(9.0), visionos(1.0));
+
+/// An array of player item configurations to use as templates for player items that play interstitial content.
+///
+/// If you require the system to create new player items using the same asset instance as the template item, create the asset with an AVURLAssetPrimarySessionIdentifierKey value equal to the httpSessionIdentifier of the primary item's asset. Creating assets this way simplifies cases where you require loading their data with a custom AVAssetResourceLoader delegate.
+///
+/// > Important: The system raises an exception if template items contain assets that aren't URL based, such as an AVComposition.
 @property (nonatomic, readwrite, copy) NSArray<AVPlayerItem *> *templateItems API_AVAILABLE(macos(13.0), ios(16.0), tvos(16.0), watchos(9.0), visionos(1.0));
+
+/// The restrictions the event imposes on the playback of interstitial content.
 @property (nonatomic, readwrite) AVPlayerInterstitialEventRestrictions restrictions API_AVAILABLE(macos(13.0), ios(16.0), tvos(16.0), watchos(9.0), visionos(1.0));
+
+/// A time offset at which playback of primary content resumes after interstitial content finishes.
+///
+/// This property supports definite time values. Specify kCMTimeIndefinite to indicate that the effective resumption time offset should align with the clock time elapsed during interstitial playback; this value is typically suitable for live broadcasts.
+///
+/// The default value is kCMTimeZero.
 @property (nonatomic, readwrite) CMTime resumptionOffset API_AVAILABLE(macos(13.0), ios(16.0), tvos(16.0), watchos(9.0), visionos(1.0));
+
+/// The time offset at which playback of the interstitial ends.
+///
+/// This value can be any positive numeric value, or kCMTimeInvalid (the default) which indicates no limit.
 @property (nonatomic, readwrite) CMTime playoutLimit API_AVAILABLE(macos(13.0), ios(16.0), tvos(16.0), watchos(9.0), visionos(1.0));
+
+/// A Boolean value that indicates whether the start time of interstitial playback should snap to a segment boundary of the primary asset.
+///
+/// If the value is YES, the system adjusts the start time or date of the interstitial to the nearest segment boundary when the primary player is playing an HTTP Live Streaming asset.
 @property (nonatomic, readwrite) BOOL alignsStartWithPrimarySegmentBoundary API_AVAILABLE(macos(13.0), ios(16.0), tvos(16.0), watchos(9.0), visionos(1.0));
+
+/// A Boolean value that indicates whether the resumption time of primary playback should snap to a segment boundary of the primary asset.
+///
+/// If the value is YES, the system adjusts the resumption time of primary playback following an interstitial to the nearest segment boundary when the primary player is playing an HTTP Live Streaming asset.
 @property (nonatomic, readwrite) BOOL alignsResumptionWithPrimarySegmentBoundary API_AVAILABLE(macos(13.0), ios(16.0), tvos(16.0), watchos(9.0), visionos(1.0));
 @property (nonatomic, readwrite, retain) AVPlayerInterstitialEventCue cue API_AVAILABLE(macos(13.0), ios(16.0), tvos(16.0), watchos(9.0), visionos(1.0));
 @property (nonatomic, readwrite) BOOL willPlayOnce API_AVAILABLE(macos(13.0), ios(16.0), tvos(16.0), watchos(9.0), visionos(1.0));
@@ -259,6 +300,9 @@
 /// - Returns: An instance of AVPlayerInterstitialEventMonitor.
 + (instancetype)interstitialEventMonitorWithPrimaryPlayer:(AVPlayer *)primaryPlayer;
 
+/// Creates an observer with a player item.
+///
+/// - Parameter primaryPlayer: An object that plays the primary content.
 - (instancetype)initWithPrimaryPlayer:(AVPlayer *)primaryPlayer  NS_DESIGNATED_INITIALIZER;
 
 /// The AVPlayer that will play the primaryItems of the receiver's interstitial events.
diff -ruN /Applications/Xcode_27.0.0-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayerItem.h /Applications/Xcode_27.0.0-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayerItem.h
--- /Applications/Xcode_27.0.0-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayerItem.h	2026-06-28 00:04:36
+++ /Applications/Xcode_27.0.0-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayerItem.h	2026-07-11 03:29:37
@@ -87,8 +87,8 @@
 /// 
 /// Equivalent to +playerItemWithAsset:, passing [AVAsset assetWithURL:URL] as the value of asset.
 /// 
-/// - Parameter URL:
-/// 
+/// - Parameter URL: A URL identifying the media resource to be played.
+///
 /// - Returns: An instance of AVPlayerItem.
 + (instancetype)playerItemWithURL:(NSURL *)URL NS_SWIFT_NONISOLATED;
 
@@ -98,8 +98,8 @@
 /// 
 /// This method, along with the companion `asset` property, is MainActor-isolated for Swift clients because AVAsset is not Sendable. If you are using a Sendable subclass of AVAsset, such as AVURLAsset, an overload of this initializer will be chosen automatically to allow you to initialize an AVPlayerItem while not running on the main actor.
 /// 
-/// - Parameter asset:
-/// 
+/// - Parameter asset: The AVAsset to be played.
+///
 /// - Returns: An instance of AVPlayerItem.
 + (instancetype)playerItemWithAsset:(AVAsset *)asset;
 
@@ -119,8 +119,8 @@
 /// 
 /// Equivalent to -initWithAsset:, passing [AVAsset assetWithURL:URL] as the value of asset.
 /// 
-/// - Parameter URL:
-/// 
+/// - Parameter URL: A URL identifying the media resource to be played.
+///
 /// - Returns: An instance of AVPlayerItem
 - (instancetype)initWithURL:(NSURL *)URL NS_SWIFT_NONISOLATED;
 
@@ -130,8 +130,8 @@
 /// 
 /// This method, along with the companion `asset` property, is MainActor-isolated for Swift clients because AVAsset is not Sendable. If you are using a Sendable subclass of AVAsset, such as AVURLAsset, an overload of this initializer will be chosen automatically to allow you to initialize an AVPlayerItem while not running on the main actor.
 /// 
-/// - Parameter asset:
-/// 
+/// - Parameter asset: The AVAsset to be played.
+///
 /// - Returns: An instance of AVPlayerItem
 - (instancetype)initWithAsset:(AVAsset *)asset;
 
diff -ruN /Applications/Xcode_27.0.0-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayerItemSampleBufferOutput.h /Applications/Xcode_27.0.0-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayerItemSampleBufferOutput.h
--- /Applications/Xcode_27.0.0-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayerItemSampleBufferOutput.h	2026-06-28 00:04:35
+++ /Applications/Xcode_27.0.0-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVPlayerItemSampleBufferOutput.h	2026-07-15 00:41:09
@@ -15,9 +15,9 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
-#if !__swift__
 /// Defines common delegate methods for objects participating in sample buffer output.
 API_AVAILABLE(macos(27), ios(27), tvos(27), watchos(27), visionos(27))
+NS_REFINED_FOR_SWIFT
 @protocol AVPlayerItemSampleBufferOutputDelegate <NSObject>
  
 @optional
@@ -34,7 +34,6 @@
 - (void)outputSequenceWasRestarted:(AVPlayerItemSampleBufferOutput *)output;
 
 @end
-#endif // !__swift__
 
 /// Configuration options specified when creating an ``AVPlayerItemSampleBufferOutput``.
 ///
@@ -92,7 +91,6 @@
 ///		Specifies the kind and format of media data to be delivered.
 - (instancetype)initWithConfiguration:(nullable AVPlayerItemSampleBufferOutputConfiguration *)configuration;
 
-#if !__swift__
 /// Copies the next sample buffer for the output synchronously.
 ///
 /// - Returns: A CMSampleBuffer object referencing the output sample buffer.
@@ -101,21 +99,20 @@
 /// This method will return `NULL` if there are no more sample buffers currently available for the receiver.
 /// Clients may use the delegate method ``outputMediaDataAvailable:`` to be informed when the
 /// next ``CMSampleBuffer`` becomes available.
-- (nullable CMSampleBufferRef)copyNextSampleBuffer;
+- (nullable NS_SWIFT_SENDING CMSampleBufferRef)copyNextSampleBuffer CF_RETURNS_RETAINED NS_REFINED_FOR_SWIFT;
 
 /// Sets the receiver's delegate and a dispatch queue on which the delegate will be called.
 /// - Parameter delegate:
 /// 	An object conforming to AVPlayerItemSampleBufferOutputDelegate protocol.
 /// - Parameter delegateQueue:
 ///		A dispatch queue on which all delegate methods will be called.
-- (void)setDelegate:(nullable id<AVPlayerItemSampleBufferOutputDelegate>)delegate queue:(nullable dispatch_queue_t)delegateQueue;
+- (void)setDelegate:(nullable id<AVPlayerItemSampleBufferOutputDelegate>)delegate queue:(nullable dispatch_queue_t)delegateQueue NS_REFINED_FOR_SWIFT;
 
 /// The receiver's delegate.
-@property (readonly, weak) id<AVPlayerItemSampleBufferOutputDelegate> delegate;
+@property (readonly, weak) id<AVPlayerItemSampleBufferOutputDelegate> delegate NS_REFINED_FOR_SWIFT;
 
 /// The dispatch queue where the delegate is messaged.
-@property (nonatomic, readonly, nullable) dispatch_queue_t delegateQueue;
-#endif // !__swift__
+@property (nonatomic, readonly, nullable) dispatch_queue_t delegateQueue NS_REFINED_FOR_SWIFT;
 
 @end
 

Clone this wiki locally