Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
163 changes: 163 additions & 0 deletions src/coremedia.cs
Original file line number Diff line number Diff line change
Expand Up @@ -187,6 +187,169 @@ enum CMFormatDescriptionChromaLocation {
DV420,
}

/// <summary>Provides vendor identifiers for media format descriptions.</summary>
[MacCatalyst (13, 1)]
[Static]
interface CMFormatDescriptionVendor {
[Field ("kCMFormatDescriptionVendor_Apple")]
NSString Apple { get; }
}

/// <summary>Provides keys for color components in text format description dictionaries.</summary>
[MacCatalyst (13, 1)]
[Static]
interface CMTextFormatDescriptionColor {
[Field ("kCMTextFormatDescriptionColor_Red")]
NSString Red { get; }

[Field ("kCMTextFormatDescriptionColor_Green")]
NSString Green { get; }

[Field ("kCMTextFormatDescriptionColor_Blue")]
NSString Blue { get; }

[Field ("kCMTextFormatDescriptionColor_Alpha")]
NSString Alpha { get; }
}

/// <summary>Provides keys for the edges of a text format description's default text box.</summary>
[MacCatalyst (13, 1)]
[Static]
interface CMTextFormatDescriptionRect {
[Field ("kCMTextFormatDescriptionRect_Top")]
NSString Top { get; }

[Field ("kCMTextFormatDescriptionRect_Left")]
NSString Left { get; }

[Field ("kCMTextFormatDescriptionRect_Bottom")]
NSString Bottom { get; }

[Field ("kCMTextFormatDescriptionRect_Right")]
NSString Right { get; }
}

/// <summary>Provides keys for default text styles in text format descriptions.</summary>
[MacCatalyst (13, 1)]
[Static]
interface CMTextFormatDescriptionStyle {
[Field ("kCMTextFormatDescriptionStyle_StartChar")]
NSString StartChar { get; }

[Field ("kCMTextFormatDescriptionStyle_Font")]
NSString Font { get; }

[Field ("kCMTextFormatDescriptionStyle_FontFace")]
NSString FontFace { get; }

[Field ("kCMTextFormatDescriptionStyle_ForegroundColor")]
NSString ForegroundColor { get; }

[Field ("kCMTextFormatDescriptionStyle_FontSize")]
NSString FontSize { get; }

[Field ("kCMTextFormatDescriptionStyle_EndChar")]
NSString EndChar { get; }

[Field ("kCMTextFormatDescriptionStyle_Height")]
NSString Height { get; }

[Field ("kCMTextFormatDescriptionStyle_Ascent")]
NSString Ascent { get; }
}

/// <summary>Provides extension keys for QuickTime and 3GPP text format descriptions.</summary>
[MacCatalyst (13, 1)]
[Static]
interface CMTextFormatDescriptionExtension {
[Field ("kCMTextFormatDescriptionExtension_DisplayFlags")]
NSString DisplayFlags { get; }

[Field ("kCMTextFormatDescriptionExtension_BackgroundColor")]
NSString BackgroundColor { get; }

[Field ("kCMTextFormatDescriptionExtension_DefaultTextBox")]
NSString DefaultTextBox { get; }

[Field ("kCMTextFormatDescriptionExtension_DefaultStyle")]
NSString DefaultStyle { get; }

[Field ("kCMTextFormatDescriptionExtension_HorizontalJustification")]
NSString HorizontalJustification { get; }

[Field ("kCMTextFormatDescriptionExtension_VerticalJustification")]
NSString VerticalJustification { get; }

[Field ("kCMTextFormatDescriptionExtension_FontTable")]
NSString FontTable { get; }

[Field ("kCMTextFormatDescriptionExtension_TextJustification")]
NSString TextJustification { get; }

[Field ("kCMTextFormatDescriptionExtension_DefaultFontName")]
NSString DefaultFontName { get; }
}

/// <summary>Provides extension keys for time-code format descriptions.</summary>
[MacCatalyst (13, 1)]
[Static]
interface CMTimeCodeFormatDescriptionExtension {
[Field ("kCMTimeCodeFormatDescriptionExtension_SourceReferenceName")]
NSString SourceReferenceName { get; }
}

/// <summary>Provides keys for a time-code format description's source reference name dictionary.</summary>
[MacCatalyst (13, 1)]
[Static]
interface CMTimeCodeFormatDescriptionKeys {
[Field ("kCMTimeCodeFormatDescriptionKey_Value")]
NSString Value { get; }

[Field ("kCMTimeCodeFormatDescriptionKey_LangCode")]
NSString LangCode { get; }
}

/// <summary>Specifies the serialization format for image descriptions.</summary>
[MacCatalyst (13, 1)]
enum CMImageDescriptionFlavor {
/// <summary>The QuickTime Movie image description format.</summary>
[Field ("kCMImageDescriptionFlavor_QuickTimeMovie")]
QuickTimeMovie,

/// <summary>The ISO family sample description format used in MP4 files.</summary>
[Field ("kCMImageDescriptionFlavor_ISOFamily")]
IsoFamily,

/// <summary>The ISO family sample description format with additional rules for 3GPP files.</summary>
[Field ("kCMImageDescriptionFlavor_3GPFamily")]
ThreeGPFamily,

/// <summary>The ISO family sample description format with Apple extensions for M4A, M4B, and M4V files.</summary>
[iOS (16, 0), TV (16, 0), MacCatalyst (16, 0)]
[Field ("kCMImageDescriptionFlavor_ISOFamilyWithAppleExtensions")]
IsoFamilyWithAppleExtensions,
}

/// <summary>Specifies the serialization format for sound descriptions.</summary>
[MacCatalyst (13, 1)]
enum CMSoundDescriptionFlavor {
/// <summary>The most backward-compatible QuickTime Movie sound description format, using version 1 where possible.</summary>
[Field ("kCMSoundDescriptionFlavor_QuickTimeMovie")]
QuickTimeMovie,

/// <summary>The QuickTime Movie version 2 sound description format, without the legacy constant-bit-rate layout.</summary>
[Field ("kCMSoundDescriptionFlavor_QuickTimeMovieV2")]
QuickTimeMovieV2,

/// <summary>The ISO family sample description format used in MP4 and M4A files.</summary>
[Field ("kCMSoundDescriptionFlavor_ISOFamily")]
IsoFamily,

/// <summary>The ISO family sample description format with additional rules for 3GPP files.</summary>
[Field ("kCMSoundDescriptionFlavor_3GPFamily")]
ThreeGPFamily,
}

enum CMMPEG2VideoProfile : int {
HDV_720p30 = 0x68647631, // 'hdv1'
HDV_1080i60 = 0x68647632, // 'hdv2'
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,4 @@
!missing-enum! CMTimeFlags not bound
!missing-field! kCMFormatDescriptionVendor_Apple not bound
!missing-field! kCMImageDescriptionFlavor_3GPFamily not bound
!missing-field! kCMImageDescriptionFlavor_ISOFamily not bound
!missing-field! kCMImageDescriptionFlavor_QuickTimeMovie not bound
!missing-field! kCMImageDescriptionFlavor_ISOFamilyWithAppleExtensions not bound
!missing-field! kCMMetadataDataType_QuickTimeMetadataDirection not bound
!missing-field! kCMMetadataDataType_QuickTimeMetadataLocation_ISO6709 not bound
!missing-field! kCMMetadataFormatDescription_StructuralDependencyKey_DependencyIsInvalidFlag not bound
Expand Down Expand Up @@ -34,35 +29,6 @@
!missing-field! kCMSampleBufferNotification_DataBecameReady not bound
!missing-field! kCMSampleBufferNotification_DataFailed not bound
!missing-field! kCMSampleBufferNotificationParameter_OSStatus not bound
!missing-field! kCMSoundDescriptionFlavor_3GPFamily not bound
!missing-field! kCMSoundDescriptionFlavor_ISOFamily not bound
!missing-field! kCMSoundDescriptionFlavor_QuickTimeMovie not bound
!missing-field! kCMSoundDescriptionFlavor_QuickTimeMovieV2 not bound
!missing-field! kCMTextFormatDescriptionColor_Alpha not bound
!missing-field! kCMTextFormatDescriptionColor_Blue not bound
!missing-field! kCMTextFormatDescriptionColor_Green not bound
!missing-field! kCMTextFormatDescriptionColor_Red not bound
!missing-field! kCMTextFormatDescriptionExtension_BackgroundColor not bound
!missing-field! kCMTextFormatDescriptionExtension_DefaultFontName not bound
!missing-field! kCMTextFormatDescriptionExtension_DefaultStyle not bound
!missing-field! kCMTextFormatDescriptionExtension_DefaultTextBox not bound
!missing-field! kCMTextFormatDescriptionExtension_DisplayFlags not bound
!missing-field! kCMTextFormatDescriptionExtension_FontTable not bound
!missing-field! kCMTextFormatDescriptionExtension_HorizontalJustification not bound
!missing-field! kCMTextFormatDescriptionExtension_TextJustification not bound
!missing-field! kCMTextFormatDescriptionExtension_VerticalJustification not bound
!missing-field! kCMTextFormatDescriptionRect_Bottom not bound
!missing-field! kCMTextFormatDescriptionRect_Left not bound
!missing-field! kCMTextFormatDescriptionRect_Right not bound
!missing-field! kCMTextFormatDescriptionRect_Top not bound
!missing-field! kCMTextFormatDescriptionStyle_Ascent not bound
!missing-field! kCMTextFormatDescriptionStyle_EndChar not bound
!missing-field! kCMTextFormatDescriptionStyle_Font not bound
!missing-field! kCMTextFormatDescriptionStyle_FontFace not bound
!missing-field! kCMTextFormatDescriptionStyle_FontSize not bound
!missing-field! kCMTextFormatDescriptionStyle_ForegroundColor not bound
!missing-field! kCMTextFormatDescriptionStyle_Height not bound
!missing-field! kCMTextFormatDescriptionStyle_StartChar not bound
!missing-field! kCMTextMarkupAlignmentType_End not bound
!missing-field! kCMTextMarkupAlignmentType_Left not bound
!missing-field! kCMTextMarkupAlignmentType_Middle not bound
Expand Down Expand Up @@ -99,9 +65,6 @@
!missing-field! kCMTimebaseNotification_EffectiveRateChanged not bound
!missing-field! kCMTimebaseNotification_TimeJumped not bound
!missing-field! kCMTimebaseNotificationKey_EventTime not bound
!missing-field! kCMTimeCodeFormatDescriptionExtension_SourceReferenceName not bound
!missing-field! kCMTimeCodeFormatDescriptionKey_LangCode not bound
!missing-field! kCMTimeCodeFormatDescriptionKey_Value not bound
!missing-field! kCMTimeIndefinite not bound
!missing-field! kCMTimeInvalid not bound
!missing-field! kCMTimeNegativeInfinity not bound
Expand Down
Loading