AngleSharp by Florian Rappl

<PackageReference Include="AngleSharp" Version="0.8.1" />

.NET API 1,172,480 bytes

 HtmlVideoElement

Represents the HTML video element.
using AngleSharp.Dom.Css; using AngleSharp.Dom.Media; using AngleSharp.Extensions; using AngleSharp.Html; using AngleSharp.Services.Media; namespace AngleSharp.Dom.Html { internal sealed class HtmlVideoElement : HTMLMediaElement<IVideoInfo>, IHtmlVideoElement, IHtmlMediaElement, IHtmlElement, IElement, INode, IEventTarget, IParentNode, IChildNode, INonDocumentTypeChildNode, IElementCssInlineStyle, IMediaController { private IVideoTrackList _videos; public override IVideoTrackList VideoTracks => _videos; public int DisplayWidth { get { return GetAttribute(AttributeNames.Width).ToInteger(OriginalWidth); } set { SetAttribute(AttributeNames.Width, value.ToString()); } } public int DisplayHeight { get { return GetAttribute(AttributeNames.Height).ToInteger(OriginalHeight); } set { SetAttribute(AttributeNames.Height, value.ToString()); } } public int OriginalWidth { get { if (_resourceTask == null) return 0; if (!_resourceTask.IsCompleted || _resourceTask.Result == null) return 0; return _resourceTask.Result.Width; } } public int OriginalHeight { get { if (_resourceTask == null) return 0; if (!_resourceTask.IsCompleted || _resourceTask.Result == null) return 0; return _resourceTask.Result.Height; } } public string Poster { get { return GetAttribute(AttributeNames.Poster); } set { SetAttribute(AttributeNames.Poster, value); } } public HtmlVideoElement(Document owner) : base(owner, Tags.Video) { _videos = null; } } }