title | description | author | ms.author | ms.date | ms.topic | ms.assetid | ms.prod |
---|---|---|---|---|---|---|---|
Xamarin.Mac SDK API diff |
List of API changes for Xamarin.Mac. |
spouliot |
sepoulio |
8/25/2023 |
article |
f833f3cb-eea7-c1b8-a706-dfbb597746ea |
xamarin |
Added method:
public virtual Cinematic.CNCompositionInfo AddTracks (Cinematic.CNAssetInfo assetInfo, int preferredStartingTrackID);
Added field:
public static const string CinematicLibrary = "/System/Library/Frameworks/Cinematic.framework/Cinematic";
public class CNAssetInfo : Foundation.NSObject {
// constructors
protected CNAssetInfo (Foundation.NSObjectFlag t);
protected CNAssetInfo (IntPtr handle);
// properties
public virtual AVFoundation.AVAssetTrack[] AllCinematicTracks { get; }
public virtual AVFoundation.AVAsset Asset { get; }
public virtual AVFoundation.AVAssetTrack CinematicDisparityTrack { get; }
public virtual AVFoundation.AVAssetTrack CinematicMetadataTrack { get; }
public virtual AVFoundation.AVAssetTrack CinematicVideoTrack { get; }
public override IntPtr ClassHandle { get; }
public virtual AVFoundation.AVAssetTrack FrameTimingTrack { get; }
public virtual CoreGraphics.CGSize NaturalSize { get; }
public virtual CoreGraphics.CGSize PreferredSize { get; }
public virtual CoreGraphics.CGAffineTransform PreferredTransform { get; }
public virtual Foundation.NSNumber[] SampleDataTrackIds { get; }
public virtual CoreMedia.CMTimeRange TimeRange { get; }
public virtual Foundation.NSNumber[] VideoCompositionTrackIds { get; }
public virtual AVFoundation.AVAssetTrack[] VideoCompositionTracks { get; }
// methods
public static void CheckIfCinematic (AVFoundation.AVAsset asset, System.Action<bool> completionHandler);
public static System.Threading.Tasks.Task<bool> CheckIfCinematicAsync (AVFoundation.AVAsset asset);
public static void LoadFromAsset (AVFoundation.AVAsset asset, System.Action<CNAssetInfo,Foundation.NSError> completionHandler);
public static System.Threading.Tasks.Task<CNAssetInfo> LoadFromAssetAsync (AVFoundation.AVAsset asset);
}
public class CNBoundsPrediction : Foundation.NSObject, Foundation.INSCopying, Foundation.INSMutableCopying, ObjCRuntime.INativeObject, System.IDisposable {
// constructors
public CNBoundsPrediction ();
protected CNBoundsPrediction (Foundation.NSObjectFlag t);
protected CNBoundsPrediction (IntPtr handle);
// properties
public override IntPtr ClassHandle { get; }
public virtual float Confidence { get; set; }
public virtual CoreGraphics.CGRect NormalizedBounds { get; set; }
// methods
public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
public virtual Foundation.NSObject MutableCopy (Foundation.NSZone zone);
}
[Serializable]
public enum CNCinematicErrorCode {
Cancelled = 7,
Incompatible = 6,
Incomplete = 3,
Malformed = 4,
Unknown = 1,
Unreadable = 2,
Unsupported = 5,
}
public static class CNCinematicErrorCodeExtensions {
// methods
public static Foundation.NSString GetDomain (this CNCinematicErrorCode self);
}
public class CNCompositionInfo : Cinematic.CNAssetInfo {
// constructors
public CNCompositionInfo ();
protected CNCompositionInfo (Foundation.NSObjectFlag t);
protected CNCompositionInfo (IntPtr handle);
// properties
public override IntPtr ClassHandle { get; }
// methods
public virtual bool InsertTimeRange (CoreMedia.CMTimeRange timeRange, CNAssetInfo assetInfo, CoreMedia.CMTime startTime, out Foundation.NSError outError);
}
public class CNCustomDetectionTrack : Cinematic.CNDetectionTrack {
// constructors
public CNCustomDetectionTrack ();
protected CNCustomDetectionTrack (Foundation.NSObjectFlag t);
protected CNCustomDetectionTrack (IntPtr handle);
public CNCustomDetectionTrack (CNDetection[] detections, bool applySmoothing);
// properties
public virtual CNDetection[] AllDetections { get; }
public override IntPtr ClassHandle { get; }
}
public class CNDecision : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
// constructors
protected CNDecision (Foundation.NSObjectFlag t);
protected CNDecision (IntPtr handle);
public CNDecision (CoreMedia.CMTime time, long detectionId, bool isStrong, CNDecisionIdentifierType identifierType);
// properties
public override IntPtr ClassHandle { get; }
public virtual long DetectionGroupId { get; }
public virtual long DetectionId { get; }
public virtual bool GroupDecision { get; }
public virtual bool StrongDecision { get; }
public virtual CoreMedia.CMTime Time { get; }
public virtual bool UserDecision { get; }
// methods
public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}
[Serializable]
public enum CNDecisionIdentifierType {
Group = 1,
Single = 0,
}
public class CNDetection : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
// constructors
protected CNDetection (Foundation.NSObjectFlag t);
protected CNDetection (IntPtr handle);
public CNDetection (CoreMedia.CMTime time, CNDetectionType detectionType, CoreGraphics.CGRect normalizedRect, float focusDisparity);
// properties
public override IntPtr ClassHandle { get; }
public virtual long DetectionGroupId { get; }
public virtual long DetectionId { get; }
public virtual CNDetectionType DetectionType { get; }
public virtual float FocusDisparity { get; }
public virtual CoreGraphics.CGRect NormalizedRect { get; }
public virtual CoreMedia.CMTime Time { get; }
// methods
public static string AccessibilityLabelForDetectionType (CNDetectionType detectionType);
public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
public static float DisparityInNormalizedRect (CoreGraphics.CGRect normalizedRect, CoreVideo.CVPixelBuffer sourceDisparity, CNDetectionType detectionType, float priorDisparity);
public static bool IsValidDetectionGroupId (long detectionGroupId);
public static bool IsValidDetectionId (long detectionId);
}
public class CNDetectionTrack : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
// constructors
protected CNDetectionTrack (Foundation.NSObjectFlag t);
protected CNDetectionTrack (IntPtr handle);
// properties
public override IntPtr ClassHandle { get; }
public virtual long DetectionGroupId { get; }
public virtual long DetectionId { get; }
public virtual CNDetectionType DetectionType { get; }
public virtual bool Discrete { get; }
public virtual bool UserCreated { get; }
// methods
public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
public virtual CNDetection GetDetectionAtOrBeforeTime (CoreMedia.CMTime time);
public virtual CNDetection GetDetectionNearestTime (CoreMedia.CMTime time);
public virtual CNDetection[] GetDetectionsInTimeRange (CoreMedia.CMTimeRange timeRange);
}
[Serializable]
public enum CNDetectionType {
AutoFocus = 100,
CatBody = 4,
CatHead = 9,
Custom = 102,
DogBody = 5,
DogHead = 10,
FixedFocus = 101,
HumanFace = 1,
HumanHead = 2,
HumanTorso = 3,
SportsBall = 11,
Unknown = 0,
}
public class CNFixedDetectionTrack : Cinematic.CNDetectionTrack {
// constructors
public CNFixedDetectionTrack ();
public CNFixedDetectionTrack (CNDetection originalDetection);
protected CNFixedDetectionTrack (Foundation.NSObjectFlag t);
protected CNFixedDetectionTrack (IntPtr handle);
public CNFixedDetectionTrack (float focusDisparity);
// properties
public override IntPtr ClassHandle { get; }
public virtual float FocusDisparity { get; }
public virtual CNDetection OriginalDetection { get; }
}
public class CNObjectTracker : Foundation.NSObject {
// constructors
protected CNObjectTracker (Foundation.NSObjectFlag t);
public CNObjectTracker (Metal.IMTLCommandQueue commandQueue);
protected CNObjectTracker (IntPtr handle);
// properties
public override IntPtr ClassHandle { get; }
public virtual CNDetectionTrack FinishDetectionTrack { get; }
public static bool IsSupported { get; }
// methods
public virtual CNBoundsPrediction ContinueTracking (CoreMedia.CMTime atTime, CoreVideo.CVPixelBuffer sourceImage, CoreVideo.CVPixelBuffer sourceDisparity);
public virtual CNBoundsPrediction FindObject (CoreGraphics.CGPoint point, CoreVideo.CVPixelBuffer sourceImage);
public virtual void ResetDetectionTrack ();
public virtual bool StartTracking (CoreMedia.CMTime atTime, CoreGraphics.CGRect normalizedBounds, CoreVideo.CVPixelBuffer sourceImage, CoreVideo.CVPixelBuffer sourceDisparity);
}
[Serializable]
public enum CNRenderingQuality {
Export = 2,
ExportHigh = 3,
Preview = 1,
Thumbnail = 0,
}
public class CNRenderingSession : Foundation.NSObject {
// constructors
protected CNRenderingSession (Foundation.NSObjectFlag t);
protected CNRenderingSession (IntPtr handle);
public CNRenderingSession (Metal.IMTLCommandQueue commandQueue, CNRenderingSessionAttributes sessionAttributes, CoreGraphics.CGAffineTransform preferredTransform, CNRenderingQuality quality);
// properties
public override IntPtr ClassHandle { get; }
public virtual Metal.IMTLCommandQueue CommandQueue { get; }
public static Foundation.NSNumber[] DestinationPixelFormatTypes { get; }
public virtual CoreGraphics.CGAffineTransform PreferredTransform { get; }
public virtual CNRenderingQuality Quality { get; }
public virtual CNRenderingSessionAttributes SessionAttributes { get; }
public static Foundation.NSNumber[] SourcePixelFormatTypes { get; }
// methods
public virtual bool EncodeRender (Metal.IMTLCommandBuffer commandBuffer, CNRenderingSessionFrameAttributes frameAttributes, CoreVideo.CVPixelBuffer sourceImage, CoreVideo.CVPixelBuffer sourceDisparity, CoreVideo.CVPixelBuffer destinationImage);
public virtual bool EncodeRender (Metal.IMTLCommandBuffer commandBuffer, CNRenderingSessionFrameAttributes frameAttributes, CoreVideo.CVPixelBuffer sourceImage, CoreVideo.CVPixelBuffer sourceDisparity, Metal.IMTLTexture destinationRgba);
public virtual bool EncodeRender (Metal.IMTLCommandBuffer commandBuffer, CNRenderingSessionFrameAttributes frameAttributes, CoreVideo.CVPixelBuffer sourceImage, CoreVideo.CVPixelBuffer sourceDisparity, Metal.IMTLTexture destinationLuma, Metal.IMTLTexture destinationChroma);
}
public class CNRenderingSessionAttributes : Foundation.NSObject {
// constructors
protected CNRenderingSessionAttributes (Foundation.NSObjectFlag t);
protected CNRenderingSessionAttributes (IntPtr handle);
// properties
public override IntPtr ClassHandle { get; }
public virtual nint RenderingVersion { get; }
// methods
public static void Load (AVFoundation.AVAsset asset, System.Action<CNRenderingSessionAttributes,Foundation.NSError> completionHandler);
public static System.Threading.Tasks.Task<CNRenderingSessionAttributes> LoadAsync (AVFoundation.AVAsset asset);
}
public class CNRenderingSessionFrameAttributes : Foundation.NSObject, Foundation.INSCopying, Foundation.INSMutableCopying, ObjCRuntime.INativeObject, System.IDisposable {
// constructors
protected CNRenderingSessionFrameAttributes (Foundation.NSObjectFlag t);
protected CNRenderingSessionFrameAttributes (IntPtr handle);
public CNRenderingSessionFrameAttributes (AVFoundation.AVTimedMetadataGroup metadataGroup, CNRenderingSessionAttributes sessionAttributes);
public CNRenderingSessionFrameAttributes (CoreMedia.CMSampleBuffer sampleBuffer, CNRenderingSessionAttributes sessionAttributes);
// properties
public override IntPtr ClassHandle { get; }
public virtual float FNumber { get; set; }
public virtual float FocusDisparity { get; set; }
// methods
public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
public virtual Foundation.NSObject MutableCopy (Foundation.NSZone zone);
}
public class CNScript : Foundation.NSObject {
// constructors
protected CNScript (Foundation.NSObjectFlag t);
protected CNScript (IntPtr handle);
// properties
public virtual CNDetectionTrack[] AddedDetectionTracks { get; }
public virtual CNScriptChanges Changes { get; }
public override IntPtr ClassHandle { get; }
public virtual float FNumber { get; set; }
public virtual CoreMedia.CMTimeRange TimeRange { get; }
// methods
public virtual long AddDetectionTrack (CNDetectionTrack detectionTrack);
public virtual bool AddUserDecision (CNDecision decision);
public virtual CNDecision[] GetBaseDecisions (CoreMedia.CMTimeRange timeRange);
public virtual CNScriptChanges GetChangesTrimmed (CoreMedia.CMTimeRange timeRange);
public virtual CNDecision GetDecision (CoreMedia.CMTime time, CoreMedia.CMTime tolerance);
public virtual CNDecision GetDecisionAfterTime (CoreMedia.CMTime time);
public virtual CNDecision GetDecisionBeforeTime (CoreMedia.CMTime time);
public virtual CNDecision[] GetDecisions (CoreMedia.CMTimeRange timeRange);
public virtual CNDetectionTrack GetDetectionTrack (CNDecision decision);
public virtual CNDetectionTrack GetDetectionTrackForId (long detectionId);
public virtual CNScriptFrame GetFrame (CoreMedia.CMTime time, CoreMedia.CMTime tolerance);
public virtual CNScriptFrame[] GetFrames (CoreMedia.CMTimeRange timeRange);
public virtual CNDecision GetPrimaryDecision (CoreMedia.CMTime time);
public virtual CNDecision GetSecondaryDecision (CoreMedia.CMTime time);
public virtual CoreMedia.CMTimeRange GetTimeRangeOfTransitionAfterDecision (CNDecision decision);
public virtual CoreMedia.CMTimeRange GetTimeRangeOfTransitionBeforeDecision (CNDecision decision);
public virtual CNDecision[] GetUserDecisions (CoreMedia.CMTimeRange timeRange);
public static void Load (AVFoundation.AVAsset asset, CNScriptChanges changes, Foundation.NSProgress progress, System.Action<CNScript,Foundation.NSError> completionHandler);
public static System.Threading.Tasks.Task<CNScript> LoadAsync (AVFoundation.AVAsset asset, CNScriptChanges changes, Foundation.NSProgress progress);
public virtual void Reload (CNScriptChanges changes);
public virtual void RemoveAllUserDecisions ();
public virtual bool RemoveDetectionTrack (CNDetectionTrack detectionTrack);
public virtual bool RemoveUserDecision (CNDecision decision);
}
public class CNScriptChanges : Foundation.NSObject {
// constructors
public CNScriptChanges (Foundation.NSData dataRepresentation);
protected CNScriptChanges (Foundation.NSObjectFlag t);
protected CNScriptChanges (IntPtr handle);
// properties
public virtual CNDetectionTrack[] AddedDetectionTracks { get; }
public override IntPtr ClassHandle { get; }
public virtual Foundation.NSData DataRepresentation { get; }
public virtual float FNumber { get; }
public virtual CNDecision[] UserDecisions { get; }
}
public class CNScriptFrame : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
// constructors
protected CNScriptFrame (Foundation.NSObjectFlag t);
protected CNScriptFrame (IntPtr handle);
// properties
public virtual CNDetection[] AllDetections { get; }
public override IntPtr ClassHandle { get; }
public virtual CNDetection FocusDetection { get; }
public virtual float FocusDisparity { get; }
public virtual CoreMedia.CMTime Time { get; }
// methods
public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
public virtual CNDetection GetBestDetectionForGroupId (long detectionGroupId);
public virtual CNDetection GetDetectionForId (long detectionId);
}