forked from xamarin/xamarin-macios
-
Notifications
You must be signed in to change notification settings - Fork 1
AVFoundation watchOS xcode9 beta2
Vincent Dondain edited this page Jun 21, 2017
·
1 revision
#AVFoundation.framework
diff -ruN /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCameraCalibrationData.h /Applications/Xcode9-beta2.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCameraCalibrationData.h
--- /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCameraCalibrationData.h 2017-05-24 00:28:27.000000000 -0400
+++ /Applications/Xcode9-beta2.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCameraCalibrationData.h 2017-06-11 18:48:49.000000000 -0400
@@ -87,7 +87,7 @@
An NSData of floats describing the camera lens' radial distortions.
@discussion
- Images captured by a camera are geometrically warped by radial distortions in the lens. In order to project from the 2D image plane back into the 3D world, the images must be distortion corrected, or made rectilinear. Lens distortion is modeled using a one-dimensional lookup table of 32-bit float values evenly distributed along a radius from the center of the distortion to the farthest corner, with each value representing an elongation or compression of the radius (1.0 for any given point indicates no elongation). This model assumes radially symmetric lens distortion. When dealing with AVDepthData, the disparity / depth map representations are geometrically distorted to align with images produced by the camera. For more information, see the reference implementation below.
+ Images captured by a camera are geometrically warped by radial distortions in the lens. In order to project from the 2D image plane back into the 3D world, the images must be distortion corrected, or made rectilinear. Lens distortion is modeled using a one-dimensional lookup table of 32-bit float values evenly distributed along a radius from the center of the distortion to the farthest corner, with each value representing an elongation or compression of the radius (0.0 for any given point indicates no elongation). This model assumes radially symmetric lens distortion. When dealing with AVDepthData, the disparity / depth map representations are geometrically distorted to align with images produced by the camera. For more information, see the reference implementation below.
*/
@property(nonatomic, readonly) NSData *lensDistortionLookupTable;
@@ -116,12 +116,14 @@
To apply distortion correction to an image, you'd begin with an empty destination buffer and iterate through it row by row, calling the sample implementation below for each point in the output image, passing the lensDistortionLookupTable to find the corresponding value in the distorted image, and write it to your output buffer. Please note that the "point", "opticalCenter", and "imageSize" parameters below must be in the same coordinate system, i.e. both at full resolution, or both scaled to a different resolution but with the same aspect ratio.
+ The reference function below returns floating-point x and y values. If you wish to match the results with actual pixels in a bitmap, you should either round to the nearest integer value or interpolate from surrounding integer positions (i.e. bilinear interpolation from the 4 surrounding pixels).
+
- (CGPoint)lensDistortionPointForPoint:(CGPoint)point
lookupTable:(NSData *)lookupTable
distortionOpticalCenter:(CGPoint)opticalCenter
imageSize:(CGSize)imageSize
{
- // The lookup table holds the radial magnification for n linearly spaced radii.
+ // The lookup table holds the relative radial magnification for n linearly spaced radii.
// The first position corresponds to radius = 0
// The last position corresponds to the largest radius found in the image.
@@ -137,7 +139,7 @@
// Determine the radius of the given point.
float r_point = sqrtf( v_point_x * v_point_x + v_point_y * v_point_y );
- // Look up the radial magnification to apply in the provided lookup table
+ // Look up the relative radial magnification to apply in the provided lookup table
float magnification;
const float *lookupTableValues = lookupTable.bytes;
NSUInteger lookupTableCount = lookupTable.length / sizeof(float);
@@ -158,8 +160,8 @@
}
// Apply radial magnification
- float new_v_point_x = magnification * v_point_x;
- float new_v_point_y = magnification * v_point_y;
+ float new_v_point_x = v_point_x + magnification * v_point_x;
+ float new_v_point_y = v_point_y + magnification * v_point_y;
// Construct output
return CGPointMake( opticalCenter.x + new_v_point_x, opticalCenter.y + new_v_point_y );
diff -ruN /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVContentKeySession.h /Applications/Xcode9-beta2.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVContentKeySession.h
--- /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVContentKeySession.h 2017-05-24 00:28:08.000000000 -0400
+++ /Applications/Xcode9-beta2.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVContentKeySession.h 2017-06-12 01:08:15.000000000 -0400
@@ -191,10 +191,10 @@
An opaque identifier for the application. The contents of this identifier depend on the particular protocol in use by the entity that controls the use of the media data.
@param storageURL
URL to a directory previously used with one or more instances of AVContentKeySession for the storage of expired session reports.
- @result An NSArray containing instances of NSDictionary, each containing a pending expired session report. These contents depend on the particular protocol in use by the entity that controls the use of the media data.
+ @result An NSArray containing instances of NSData, each containing a pending expired session report as a property-list serialization of an NSDictionary object. The contents of expired session reports depend on the particular protocol in use by the entity that controls the use of the media data.
@discussion Note that no reports for sessions still in progress will be included.
*/
-+ (NSArray <NSDictionary *> *)pendingExpiredSessionReportsWithAppIdentifier:(NSData *)appIdentifier storageDirectoryAtURL:(NSURL *)storageURL;
++ (NSArray <NSData *> *)pendingExpiredSessionReportsWithAppIdentifier:(NSData *)appIdentifier storageDirectoryAtURL:(NSURL *)storageURL;
/*!
@method removePendingExpiredSessionReports:withAppIdentifier:storageDirectoryAtURL:
@@ -207,7 +207,7 @@
URL to a writable folder.
@discussion This method is most suitable for use only after the specified expired session reports have been sent to the entity that controls the use of the media data and the entity has acknowledged their receipt.
*/
-+ (void)removePendingExpiredSessionReports:(NSArray <NSDictionary *> *)expiredSessionReports withAppIdentifier:(NSData *)appIdentifier storageDirectoryAtURL:(NSURL *)storageURL;
++ (void)removePendingExpiredSessionReports:(NSArray <NSData *> *)expiredSessionReports withAppIdentifier:(NSData *)appIdentifier storageDirectoryAtURL:(NSURL *)storageURL;
@end
diff -ruN /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVFoundation.apinotes /Applications/Xcode9-beta2.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVFoundation.apinotes
--- /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVFoundation.apinotes 2017-05-23 21:01:42.000000000 -0400
+++ /Applications/Xcode9-beta2.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVFoundation.apinotes 2017-06-12 01:08:13.000000000 -0400
@@ -147,6 +147,15 @@
MethodKind: Class
Availability: nonswift
AvailabilityMsg: 'use object initializers instead'
+ - Selector: 'supportedPhotoCodecTypesForFileType:'
+ SwiftName: 'supportedPhotoCodecTypes(for:)'
+ MethodKind: Instance
+ - Selector: 'supportedPhotoPixelFormatTypesForFileType:'
+ SwiftName: 'supportedPhotoPixelFormatTypes(for:)'
+ MethodKind: Instance
+ - Selector: 'supportedRawPhotoPixelFormatTypesForFileType:'
+ SwiftName: 'supportedRawPhotoPixelFormatTypes(for:)'
+ MethodKind: Instance
- Name: AVCaptureStillImageOutput
Methods:
- Selector: 'new'
@@ -165,6 +174,9 @@
- Selector: 'recommendedVideoSettingsForAssetWriterWithOutputFileType:'
SwiftName: 'recommendedVideoSettingsForAssetWriter(writingTo:)'
MethodKind: Instance
+ Properties:
+ - Name: availableVideoCVPixelFormatTypes
+ SwiftName: availableVideoPixelFormatTypes
- Name: AVCaptureVideoPreviewLayer
Methods:
- Selector: 'captureDevicePointOfInterestForPoint:'
@@ -518,6 +530,8 @@
SwiftName: AVCaptureDevice.TorchMode
- Name: AVCaptureWhiteBalanceMode
SwiftName: AVCaptureDevice.WhiteBalanceMode
+- Name: AVDepthDataAccuracy
+ SwiftName: AVDepthData.Accuracy
- Name: AVError
NSErrorDomain: AVFoundationErrorDomain
Typedefs:
@@ -1435,6 +1449,7 @@
Nullability: [ U, U ]
Properties:
- Name: availableVideoCVPixelFormatTypes
+ SwiftName: availableVideoCVPixelFormatTypes
PropertyKind: Instance
Nullability: U
Type: 'NSArray *'
diff -ruN /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVFoundation.h /Applications/Xcode9-beta2.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVFoundation.h
--- /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVFoundation.h 2017-05-25 06:23:45.000000000 -0400
+++ /Applications/Xcode9-beta2.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVFoundation.h 2017-06-14 05:48:59.000000000 -0400
@@ -39,6 +39,7 @@
#if TARGET_OS_IPHONE
#import <AVFoundation/AVAssetDownloadTask.h>
+#import <AVFoundation/AVAssetDownloadStorageManager.h>
#endif
#if (TARGET_OS_IPHONE || defined(__MAC_10_7))
@@ -84,6 +85,7 @@
#import <AVFoundation/AVPlayerLooper.h>
#import <AVFoundation/AVPlayerMediaSelectionCriteria.h>
#import <AVFoundation/AVQueuedSampleBufferRendering.h>
+#import <AVFoundation/AVRouteDetector.h>
#import <AVFoundation/AVSampleBufferAudioRenderer.h>
#import <AVFoundation/AVSampleBufferDisplayLayer.h>
#import <AVFoundation/AVSampleBufferRenderSynchronizer.h>
diff -ruN /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVRouteDetector.h /Applications/Xcode9-beta2.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVRouteDetector.h
--- /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVRouteDetector.h 1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode9-beta2.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVRouteDetector.h 2017-06-14 05:49:03.000000000 -0400
@@ -0,0 +1,55 @@
+/*
+ File: AVRouteDetector.h
+
+ Framework: AVFoundation
+
+ Copyright 2017 Apple Inc. All rights reserved.
+
+ */
+
+#import <AVFoundation/AVBase.h>
+#import <Foundation/Foundation.h>
+
+@class AVRouteDetectorInternal;
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*!
+ @class AVRouteDetector
+ @abstract AVRouteDetector detects the presence of media playback routes.
+ @discussion
+ If route detection is enabled (it is disabled by default), AVRouteDetector reports whether or not multiple playback routes have been detected. If this is the case, AVKit's AVRoutePickerView can be used to allow users to pick from the set of available routes.
+ */
+
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0)) API_UNAVAILABLE(watchos)
+@interface AVRouteDetector : NSObject
+{
+@private
+ AVRouteDetectorInternal *_routeDetectorInternal;
+}
+
+/*!
+ @property routeDetectionEnabled
+ @abstract Whether or not route detection is enabled. The default value is NO.
+ @discussion
+ Route detection significantly increases power consumption and must be turned off when it's no longer needed.
+ */
+@property (getter=isRouteDetectionEnabled) BOOL routeDetectionEnabled;
+
+/*!
+ @property multipleRoutesDetected
+ @abstract This property is YES if, in addition to the local playback route, at least one more playback route has been detected.
+ @discussion
+ If multiple route have been detected, AVKit's AVRoutePickerView can be used to allow users to pick from the set of available routes. When the values of this property changes AVRouteDetectorMultipleRoutesDetectedDidChangeNotification is posted.
+ */
+@property (readonly) BOOL multipleRoutesDetected;
+
+/*!
+ @constant AVRouteDetectorMultipleRoutesDetectedDidChangeNotification
+ @abstract Posted when the value of multipleRoutesDetected changes.
+ */
+AVF_EXPORT NSNotificationName const AVRouteDetectorMultipleRoutesDetectedDidChangeNotification API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0)) API_UNAVAILABLE(watchos);
+
+@end
+
+NS_ASSUME_NONNULL_END