MatroskaVideoTrack

MatroskaVideoTrack class

Represents video metadata in a Matroska video.

public class MatroskaVideoTrack : MatroskaTrack

Properties

Name Description
AlphaMode { get; } Gets the alpha Video Mode. Presence of this Element indicates that the BlockAdditional Element could contain Alpha data.
CodecID { get; } Gets an ID corresponding to the codec.
CodecName { get; } Gets a human-readable string specifying the codec.
Count { get; } Gets the number of metadata properties.
DefaultDuration { get; } Gets the number of nanoseconds (not scaled via TimecodeScale) per frame.
DisplayHeight { get; } Gets the height of the video frames to display. Applies to the video frame after cropping (PixelCrop* Elements).
DisplayUnit { get; } Gets the how DisplayWidthand DisplayHeight are interpreted.
DisplayWidth { get; } Gets the width of the video frames to display. Applies to the video frame after cropping (PixelCrop* Elements).
FieldOrder { get; } Gets declare the field ordering of the video. If FlagInterlaced is not set to 1, this Element MUST be ignored.
FlagEnabled { get; } Gets the enabled flag, true if the track is usable.
FlagInterlaced { get; } Gets a flag to declare if the video is known to be progressive or interlaced and if applicable to declare details about the interlacement.
Item { get; } Gets the MetadataProperty with the specified name.
Keys { get; } Gets a collection of the metadata property names.
Language { get; } Gets the language of the track in the Matroska languages form. This Element MUST be ignored if the LanguageIetf Element is used in the same TrackEntry.
LanguageIetf { get; } Gets the language of the track according to BCP 47 and using the IANA Language Subtag Registry. If this Element is used, then any Language Elements used in the same TrackEntry MUST be ignored.
MetadataType { get; } Gets the metadata type.
Name { get; } Gets the human-readable track name.
PixelCropBottom { get; } Gets the number of video pixels to remove at the bottom of the image.
PixelCropLeft { get; } Gets the number of video pixels to remove on the left of the image.
PixelCropRight { get; } Gets the number of video pixels to remove on the right of the image.
PixelCropTop { get; } Gets the number of video pixels to remove at the top of the image.
PixelHeight { get; } Gets the height of the encoded video frames in pixels.
PixelWidth { get; } Gets the width of the encoded video frames in pixels.
PropertyDescriptors { get; } Gets a collection of descriptors that contain information about properties accessible through the GroupDocs.Metadata search engine.
StereoMode { get; } Gets the stereo-3D video mode.
TrackNumber { get; } Gets the track number as used in the Block Header. Using more than 127 tracks is not encouraged, though the design allows an unlimited number.
TrackType { get; } Gets the type of the track.
TrackUid { get; } Gets the unique ID to identify the Track. This SHOULD be kept the same when making a direct stream copy of the Track to another file.

Methods

Name Description
virtual AddProperties(Func<MetadataProperty, bool>, PropertyValue) Adds known metadata properties satisfying the specified predicate. The operation is recursive so it affects all nested packages as well.
Contains(string) Determines whether the package contains a metadata property with the specified name.
virtual FindProperties(Func<MetadataProperty, bool>) Finds the metadata properties satisfying the specified predicate. The search is recursive so it affects all nested packages as well.
GetEnumerator() Returns an enumerator that iterates through the collection.
virtual RemoveProperties(Func<MetadataProperty, bool>) Removes metadata properties satisfying the specified predicate.
virtual Sanitize() Removes writable metadata properties from the package. The operation is recursive so it affects all nested packages as well.
virtual SetProperties(Func<MetadataProperty, bool>, PropertyValue) Sets known metadata properties satisfying the specified predicate. The operation is recursive so it affects all nested packages as well. This method is a combination of AddProperties and UpdateProperties. If an existing property satisfies the predicate its value is updated. If there is a known property missing in the package that satisfies the predicate it is added to the package.
virtual UpdateProperties(Func<MetadataProperty, bool>, PropertyValue) Updates known metadata properties satisfying the specified predicate. The operation is recursive so it affects all nested packages as well.

Remarks

Learn more

See Also