Class TrackStreamUrl
The direct stream URL of a track, as NodeLink's track stream route resolved it.
public sealed record TrackStreamUrl : IEquatable<TrackStreamUrl>
- Inheritance
-
TrackStreamUrl
- Implements
- Inherited Members
Remarks
The server picks a default format when no itag was requested.
Properties
Format
The media container format, e.g. m4a or webm/opus.
[JsonPropertyName("format")]
[JsonInclude]
public string? Format { get; }
Property Value
HlsUrl
The HLS manifest URL NodeLink attached alongside a direct URL, the protocol is then
http.
[JsonPropertyName("hlsUrl")]
[JsonInclude]
public string? HlsUrl { get; }
Property Value
Remarks
When the protocol is hls the manifest itself travels in Url and this member is
null. Short-lived like Url, re-resolve instead of caching it.
Itag
The itag actually resolved, echoed by the YouTube direct path, null when the answer is SABR, HLS, a mirrored source or a non-YouTube source (which carry no itag at all).
[JsonPropertyName("itag")]
[JsonInclude]
public int? Itag { get; }
Property Value
- int?
Protocol
The streaming protocol, e.g. http, sabr or hls.
[JsonPropertyName("protocol")]
[JsonInclude]
public string? Protocol { get; }
Property Value
Url
The direct playback URL for the track.
[JsonPropertyName("url")]
[JsonInclude]
public string? Url { get; }
Property Value
Remarks
Short-lived, re-resolve instead of caching it.