using System; using System.Collections.Generic; using System.CodeDom.Compiler; using Matroska.Attributes; //-------------------------------------------------------------------------------------------------------- // // This C# code class was auto-generated at 06/14/2025 08:18:21. // Changes to this file may cause incorrect behavior and will be lost if the code is regenerated. // // Based on "https://github.com/ietf-wg-cellar/matroska-specification/blob/master/ebml_matroska.xml". // //-------------------------------------------------------------------------------------------------------- namespace Matroska.Models; [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class EBML : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.DocType)] public string DocType { get; set; } = null!; [MatroskaElementDescriptor(MatroskaSpecification.DocTypeExtension)] public DocTypeExtension? DocTypeExtension { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.DocTypeReadVersion)] public ulong DocTypeReadVersion { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.DocTypeVersion)] public ulong DocTypeVersion { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.EBMLMaxIDLength)] public ulong EBMLMaxIDLength { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.EBMLMaxSizeLength)] public ulong EBMLMaxSizeLength { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.EBMLReadVersion)] public ulong EBMLReadVersion { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.EBMLVersion)] public ulong EBMLVersion { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class DocTypeExtension : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.DocTypeExtensionName)] public string DocTypeExtensionName { get; set; } = null!; [MatroskaElementDescriptor(MatroskaSpecification.DocTypeExtensionVersion)] public ulong DocTypeExtensionVersion { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class Segment : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.Attachments)] public Attachments? Attachments { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.Chapters)] public Chapters? Chapters { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.Cluster, typeof(Cluster))] public List? Clusters { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.Cues)] public Cues? Cues { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.Info)] public Info Info { get; set; } = null!; [MatroskaElementDescriptor(MatroskaSpecification.SeekHead)] public SeekHead? SeekHead { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.Tags)] public Tags? Tags { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.Tracks)] public Tracks? Tracks { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class Attachments : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.AttachedFile, typeof(AttachedFile))] public List AttachedFiles { get; set; } = null!; } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class AttachedFile : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.FileData)] public byte[]? FileData { get; set; } = null!; [MatroskaElementDescriptor(MatroskaSpecification.FileDescription)] public string? FileDescription { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.FileMediaType)] public string FileMediaType { get; set; } = null!; [MatroskaElementDescriptor(MatroskaSpecification.FileName)] public string FileName { get; set; } = null!; [MatroskaElementDescriptor(MatroskaSpecification.FileReferral)] public byte[]? FileReferral { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.FileUID)] public ulong FileUID { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.FileUsedEndTime)] public ulong? FileUsedEndTime { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.FileUsedStartTime)] public ulong? FileUsedStartTime { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class Chapters : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.EditionEntry)] public EditionEntry EditionEntry { get; set; } = null!; } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class EditionEntry : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.ChapterAtom)] public ChapterAtom ChapterAtom { get; set; } = null!; [MatroskaElementDescriptor(MatroskaSpecification.EditionDisplay)] public EditionDisplay? EditionDisplay { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.EditionFlagDefault)] public ulong EditionFlagDefault { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.EditionFlagHidden)] public ulong EditionFlagHidden { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.EditionFlagOrdered)] public ulong EditionFlagOrdered { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.EditionUID)] public ulong? EditionUID { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class ChapterAtom : BaseModel { } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class ChapProcess : BaseModel { } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class ChapProcessCommand : BaseModel { } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class ChapterDisplay : BaseModel { } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class ChapterTrack : BaseModel { } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class EditionDisplay : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.EditionLanguageIETF)] public string? EditionLanguageIETF { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.EditionString)] public string EditionString { get; set; } = null!; } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class Cluster : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.BlockGroup, typeof(BlockGroup))] public List? BlockGroups { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.EncryptedBlock, typeof(EncryptedBlock))] public List? EncryptedBlocks { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.Position)] public ulong? Position { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.PrevSize)] public ulong? PrevSize { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.SilentTracks)] public SilentTracks? SilentTracks { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.SimpleBlock, typeof(SimpleBlock))] public List? SimpleBlocks { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.Timestamp)] public ulong Timestamp { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class BlockGroup : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.Block, typeof(Block))] public List Blocks { get; set; } = null!; [MatroskaElementDescriptor(MatroskaSpecification.BlockAdditions)] public BlockAdditions? BlockAdditions { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.BlockDuration)] public ulong? BlockDuration { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.BlockVirtual, typeof(BlockVirtual))] public List? BlockVirtuals { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.CodecState)] public byte[]? CodecState { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.DiscardPadding)] public long? DiscardPadding { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ReferenceBlock)] public long? ReferenceBlock { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ReferenceFrame)] public ReferenceFrame? ReferenceFrame { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ReferencePriority)] public ulong ReferencePriority { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ReferenceVirtual)] public long? ReferenceVirtual { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.Slices)] public Slices? Slices { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class BlockAdditions : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.BlockMore)] public BlockMore BlockMore { get; set; } = null!; } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class BlockMore : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.BlockAddID)] public ulong BlockAddID { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.BlockAdditional, typeof(BlockAdditional))] public List BlockAdditionals { get; set; } = null!; } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class ReferenceFrame : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.ReferenceOffset)] public ulong ReferenceOffset { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ReferenceTimestamp)] public ulong ReferenceTimestamp { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class Slices : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.TimeSlice)] public TimeSlice? TimeSlice { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class TimeSlice : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.BlockAdditionID)] public ulong? BlockAdditionID { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.Delay)] public ulong? Delay { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.FrameNumber)] public ulong? FrameNumber { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.LaceNumber)] public ulong? LaceNumber { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.SliceDuration)] public ulong? SliceDuration { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class SilentTracks : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.SilentTrackNumber)] public ulong? SilentTrackNumber { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class Cues : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.CuePoint, typeof(CuePoint))] public List CuePoints { get; set; } = null!; } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class CuePoint : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.CueTime)] public ulong CueTime { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.CueTrackPositions)] public CueTrackPositions CueTrackPositions { get; set; } = null!; } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class CueTrackPositions : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.CueBlockNumber)] public ulong? CueBlockNumber { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.CueClusterPosition)] public ulong CueClusterPosition { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.CueCodecState)] public ulong CueCodecState { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.CueDuration)] public ulong? CueDuration { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.CueReference, typeof(CueReference))] public List? CueReferences { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.CueRelativePosition)] public ulong? CueRelativePosition { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.CueTrack)] public ulong CueTrack { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class CueReference : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.CueRefCluster)] public ulong CueRefCluster { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.CueRefCodecState)] public ulong? CueRefCodecState { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.CueRefNumber)] public ulong? CueRefNumber { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.CueRefTime)] public ulong CueRefTime { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class Info : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.ChapterTranslate)] public ChapterTranslate? ChapterTranslate { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.DateUTC)] public DateTime? DateUTC { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.Duration)] public double? Duration { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.MuxingApp)] public string MuxingApp { get; set; } = null!; [MatroskaElementDescriptor(MatroskaSpecification.NextFilename)] public string? NextFilename { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.NextUUID)] public byte[]? NextUUID { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.PrevFilename)] public string? PrevFilename { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.PrevUUID)] public byte[]? PrevUUID { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.SegmentFamily)] public byte[]? SegmentFamily { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.SegmentFilename)] public string? SegmentFilename { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.SegmentUUID)] public byte[]? SegmentUUID { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.TimestampScale)] public ulong TimestampScale { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.Title)] public string? Title { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.WritingApp)] public string WritingApp { get; set; } = null!; } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class ChapterTranslate : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.ChapterTranslateCodec)] public ulong ChapterTranslateCodec { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ChapterTranslateEditionUID)] public ulong? ChapterTranslateEditionUID { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ChapterTranslateID)] public byte[]? ChapterTranslateID { get; set; } = null!; } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class SeekHead : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.Seek)] public Seek Seek { get; set; } = null!; } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class Seek : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.SeekID)] public byte[]? SeekID { get; set; } = null!; [MatroskaElementDescriptor(MatroskaSpecification.SeekPosition)] public ulong SeekPosition { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class Tags : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.Tag, typeof(TagItem))] public List TagItems { get; set; } = null!; } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class TagItem : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.SimpleTag, typeof(SimpleTag))] public List SimpleTags { get; set; } = null!; [MatroskaElementDescriptor(MatroskaSpecification.Targets)] public Targets Targets { get; set; } = null!; } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class Targets : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.TagAttachmentUID)] public ulong? TagAttachmentUID { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.TagChapterUID)] public ulong? TagChapterUID { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.TagEditionUID)] public ulong? TagEditionUID { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.TagTrackUID)] public ulong? TagTrackUID { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.TargetType)] public string? TargetType { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.TargetTypeValue)] public ulong TargetTypeValue { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class Tracks : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.TrackEntry, typeof(TrackEntry))] public List TrackEntries { get; set; } = null!; } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class TrackEntry : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.AttachmentLink)] public ulong? AttachmentLink { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.Audio)] public Audio? Audio { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.BlockAdditionMapping)] public BlockAdditionMapping? BlockAdditionMapping { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.CodecDecodeAll)] public ulong CodecDecodeAll { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.CodecDelay)] public ulong CodecDelay { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.CodecDownloadURL)] public string? CodecDownloadURL { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.CodecID)] public string CodecID { get; set; } = null!; [MatroskaElementDescriptor(MatroskaSpecification.CodecInfoURL)] public string? CodecInfoURL { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.CodecName)] public string? CodecName { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.CodecPrivate)] public byte[]? CodecPrivate { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.CodecSettings)] public string? CodecSettings { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ContentEncodings)] public ContentEncodings? ContentEncodings { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.DefaultDecodedFieldDuration)] public ulong? DefaultDecodedFieldDuration { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.DefaultDuration)] public ulong? DefaultDuration { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.FlagCommentary)] public ulong? FlagCommentary { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.FlagDefault)] public ulong FlagDefault { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.FlagEnabled)] public ulong FlagEnabled { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.FlagForced)] public ulong FlagForced { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.FlagHearingImpaired)] public ulong? FlagHearingImpaired { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.FlagLacing)] public ulong FlagLacing { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.FlagOriginal)] public ulong? FlagOriginal { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.FlagTextDescriptions)] public ulong? FlagTextDescriptions { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.FlagVisualImpaired)] public ulong? FlagVisualImpaired { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.Language)] public string Language { get; set; } = null!; [MatroskaElementDescriptor(MatroskaSpecification.LanguageBCP47)] public string? LanguageBCP47 { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.MaxBlockAdditionID)] public ulong MaxBlockAdditionID { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.MaxCache)] public ulong? MaxCache { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.MinCache)] public ulong MinCache { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.Name)] public string? Name { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.SeekPreRoll)] public ulong SeekPreRoll { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.TrackNumber)] public ulong TrackNumber { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.TrackOffset)] public long? TrackOffset { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.TrackOperation)] public TrackOperation? TrackOperation { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.TrackOverlay)] public ulong? TrackOverlay { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.TrackTimestampScale)] public double TrackTimestampScale { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.TrackTranslate)] public TrackTranslate? TrackTranslate { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.TrackType)] public ulong TrackType { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.TrackUID)] public ulong TrackUID { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.TrickMasterTrackSegmentUID)] public byte[]? TrickMasterTrackSegmentUID { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.TrickMasterTrackUID)] public ulong? TrickMasterTrackUID { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.TrickTrackFlag)] public ulong? TrickTrackFlag { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.TrickTrackSegmentUID)] public byte[]? TrickTrackSegmentUID { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.TrickTrackUID)] public ulong? TrickTrackUID { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.Video)] public Video? Video { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class Audio : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.BitDepth)] public ulong? BitDepth { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ChannelPositions)] public byte[]? ChannelPositions { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.Channels)] public ulong Channels { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.Emphasis)] public ulong Emphasis { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.OutputSamplingFrequency)] public double? OutputSamplingFrequency { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.SamplingFrequency)] public double SamplingFrequency { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class BlockAdditionMapping : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.BlockAddIDExtraData)] public byte[]? BlockAddIDExtraData { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.BlockAddIDName)] public string? BlockAddIDName { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.BlockAddIDType)] public ulong BlockAddIDType { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.BlockAddIDValue)] public ulong? BlockAddIDValue { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class ContentEncodings : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.ContentEncoding, typeof(ContentEncodingItem))] public List ContentEncodingItems { get; set; } = null!; } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class ContentEncodingItem : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.ContentCompression, typeof(ContentCompression))] public List? ContentCompressions { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ContentEncodingOrder)] public ulong ContentEncodingOrder { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ContentEncodingScope)] public ulong ContentEncodingScope { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ContentEncodingType)] public ulong ContentEncodingType { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ContentEncryption)] public ContentEncryption? ContentEncryption { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class ContentCompression : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.ContentCompAlgo)] public ulong ContentCompAlgo { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ContentCompSettings)] public byte[]? ContentCompSettings { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class ContentEncryption : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.ContentEncAESSettings)] public ContentEncAESSettings? ContentEncAESSettings { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ContentEncAlgo)] public ulong ContentEncAlgo { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ContentEncKeyID)] public byte[]? ContentEncKeyID { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ContentSigAlgo)] public ulong? ContentSigAlgo { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ContentSigHashAlgo)] public ulong? ContentSigHashAlgo { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ContentSigKeyID)] public byte[]? ContentSigKeyID { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ContentSignature)] public byte[]? ContentSignature { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class ContentEncAESSettings : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.AESSettingsCipherMode)] public ulong AESSettingsCipherMode { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class TrackOperation : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.TrackCombinePlanes)] public TrackCombinePlanes? TrackCombinePlanes { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.TrackJoinBlocks)] public TrackJoinBlocks? TrackJoinBlocks { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class TrackCombinePlanes : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.TrackPlane)] public TrackPlane TrackPlane { get; set; } = null!; } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class TrackPlane : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.TrackPlaneType)] public ulong TrackPlaneType { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.TrackPlaneUID)] public ulong TrackPlaneUID { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class TrackJoinBlocks : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.TrackJoinUID)] public ulong TrackJoinUID { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class TrackTranslate : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.TrackTranslateCodec)] public ulong TrackTranslateCodec { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.TrackTranslateEditionUID)] public ulong? TrackTranslateEditionUID { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.TrackTranslateTrackID)] public byte[]? TrackTranslateTrackID { get; set; } = null!; } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class Video : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.AlphaMode)] public ulong AlphaMode { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.AspectRatioType)] public ulong? AspectRatioType { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.Colour)] public Colour? Colour { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.DisplayHeight)] public ulong? DisplayHeight { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.DisplayUnit)] public ulong DisplayUnit { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.DisplayWidth)] public ulong? DisplayWidth { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.FieldOrder)] public ulong FieldOrder { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.FlagInterlaced)] public ulong FlagInterlaced { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.FrameRate)] public double? FrameRate { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.GammaValue)] public double? GammaValue { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.OldStereoMode)] public ulong? OldStereoMode { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.PixelCropBottom)] public ulong PixelCropBottom { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.PixelCropLeft)] public ulong PixelCropLeft { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.PixelCropRight)] public ulong PixelCropRight { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.PixelCropTop)] public ulong PixelCropTop { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.PixelHeight)] public ulong PixelHeight { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.PixelWidth)] public ulong PixelWidth { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.Projection)] public Projection? Projection { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.StereoMode)] public ulong StereoMode { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.UncompressedFourCC)] public byte[]? UncompressedFourCC { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class Colour : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.BitsPerChannel)] public ulong BitsPerChannel { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.CbSubsamplingHorz)] public ulong? CbSubsamplingHorz { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.CbSubsamplingVert)] public ulong? CbSubsamplingVert { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ChromaSitingHorz)] public ulong ChromaSitingHorz { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ChromaSitingVert)] public ulong ChromaSitingVert { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ChromaSubsamplingHorz)] public ulong? ChromaSubsamplingHorz { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ChromaSubsamplingVert)] public ulong? ChromaSubsamplingVert { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.MasteringMetadata)] public MasteringMetadata? MasteringMetadata { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.MatrixCoefficients)] public ulong MatrixCoefficients { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.MaxCLL)] public ulong? MaxCLL { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.MaxFALL)] public ulong? MaxFALL { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.Primaries)] public ulong Primaries { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.Range)] public ulong Range { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.TransferCharacteristics)] public ulong TransferCharacteristics { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class MasteringMetadata : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.LuminanceMax)] public double? LuminanceMax { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.LuminanceMin)] public double? LuminanceMin { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.PrimaryBChromaticityX)] public double? PrimaryBChromaticityX { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.PrimaryBChromaticityY)] public double? PrimaryBChromaticityY { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.PrimaryGChromaticityX)] public double? PrimaryGChromaticityX { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.PrimaryGChromaticityY)] public double? PrimaryGChromaticityY { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.PrimaryRChromaticityX)] public double? PrimaryRChromaticityX { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.PrimaryRChromaticityY)] public double? PrimaryRChromaticityY { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.WhitePointChromaticityX)] public double? WhitePointChromaticityX { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.WhitePointChromaticityY)] public double? WhitePointChromaticityY { get; set; } } [GeneratedCode("MatroskaModels.tt", "1.0.0.0")] public sealed class Projection : BaseModel { [MatroskaElementDescriptor(MatroskaSpecification.ProjectionPosePitch)] public double ProjectionPosePitch { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ProjectionPoseRoll)] public double ProjectionPoseRoll { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ProjectionPoseYaw)] public double ProjectionPoseYaw { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ProjectionPrivate)] public byte[]? ProjectionPrivate { get; set; } [MatroskaElementDescriptor(MatroskaSpecification.ProjectionType)] public ulong ProjectionType { get; set; } }