//------------------------------------------------------------------------------
//
// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
//
// Changes to this file may cause incorrect behavior and will be lost when
// the code is regenerated.
//
//------------------------------------------------------------------------------
#nullable enable
namespace LukeHagar.PlexAPI.SDK.Models.Requests
{
using LukeHagar.PlexAPI.SDK.Utils;
using Newtonsoft.Json;
public class GetMediaMetaDataStream
{
///
/// Unique stream identifier.
///
[JsonProperty("id")]
public long Id { get; set; } = default!;
///
/// Stream type (1=video, 2=audio, 3=subtitle).
///
[JsonProperty("streamType")]
public int StreamType { get; set; } = default!;
///
/// Indicates if this stream is default.
///
[JsonProperty("default")]
public bool? Default { get; set; }
///
/// Codec used by the stream.
///
[JsonProperty("codec")]
public string Codec { get; set; } = default!;
///
/// Index of the stream.
///
[JsonProperty("index")]
public int Index { get; set; } = default!;
///
/// Bitrate of the stream.
///
[JsonProperty("bitrate")]
public int? Bitrate { get; set; }
///
/// Language of the stream.
///
[JsonProperty("language")]
public string Language { get; set; } = default!;
///
/// Language tag (e.g., en).
///
[JsonProperty("languageTag")]
public string LanguageTag { get; set; } = default!;
///
/// ISO language code.
///
[JsonProperty("languageCode")]
public string LanguageCode { get; set; } = default!;
///
/// Indicates whether header compression is enabled.
///
[JsonProperty("headerCompression")]
public bool? HeaderCompression { get; set; }
///
/// Dolby Vision BL compatibility ID.
///
[JsonProperty("DOVIBLCompatID")]
public int? DOVIBLCompatID { get; set; }
///
/// Indicates if Dolby Vision BL is present.
///
[JsonProperty("DOVIBLPresent")]
public bool? DOVIBLPresent { get; set; }
///
/// Indicates if Dolby Vision EL is present.
///
[JsonProperty("DOVIELPresent")]
public bool? DOVIELPresent { get; set; }
///
/// Dolby Vision level.
///
[JsonProperty("DOVILevel")]
public int? DOVILevel { get; set; }
///
/// Indicates if Dolby Vision is present.
///
[JsonProperty("DOVIPresent")]
public bool? DOVIPresent { get; set; }
///
/// Dolby Vision profile.
///
[JsonProperty("DOVIProfile")]
public int? DOVIProfile { get; set; }
///
/// Indicates if Dolby Vision RPU is present.
///
[JsonProperty("DOVIRPUPresent")]
public bool? DOVIRPUPresent { get; set; }
///
/// Dolby Vision version.
///
[JsonProperty("DOVIVersion")]
public string? DOVIVersion { get; set; }
///
/// Bit depth of the video stream.
///
[JsonProperty("bitDepth")]
public int? BitDepth { get; set; }
///
/// Chroma sample location.
///
[JsonProperty("chromaLocation")]
public string? ChromaLocation { get; set; }
///
/// Chroma subsampling format.
///
[JsonProperty("chromaSubsampling")]
public string? ChromaSubsampling { get; set; }
///
/// Coded video height.
///
[JsonProperty("codedHeight")]
public int? CodedHeight { get; set; }
///
/// Coded video width.
///
[JsonProperty("codedWidth")]
public int? CodedWidth { get; set; }
///
/// Color primaries used.
///
[JsonProperty("colorPrimaries")]
public string? ColorPrimaries { get; set; }
///
/// Color range (e.g., tv).
///
[JsonProperty("colorRange")]
public string? ColorRange { get; set; }
///
/// Color space.
///
[JsonProperty("colorSpace")]
public string? ColorSpace { get; set; }
///
/// Color transfer characteristics.
///
[JsonProperty("colorTrc")]
public string? ColorTrc { get; set; }
///
/// Frame rate of the stream.
///
[JsonProperty("frameRate")]
public float? FrameRate { get; set; }
///
/// Height of the video stream.
///
[JsonProperty("height")]
public int? Height { get; set; }
///
/// Video level.
///
[JsonProperty("level")]
public int? Level { get; set; }
///
/// Indicates if this is the original stream.
///
[JsonProperty("original")]
public bool? Original { get; set; }
[JsonProperty("hasScalingMatrix")]
public bool? HasScalingMatrix { get; set; }
///
/// Video profile.
///
[JsonProperty("profile")]
public string? Profile { get; set; }
[JsonProperty("scanType")]
public string? ScanType { get; set; }
///
/// Number of reference frames.
///
[JsonProperty("refFrames")]
public int? RefFrames { get; set; }
///
/// Width of the video stream.
///
[JsonProperty("width")]
public int? Width { get; set; }
///
/// Display title for the stream.
///
[JsonProperty("displayTitle")]
public string DisplayTitle { get; set; } = default!;
///
/// Extended display title for the stream.
///
[JsonProperty("extendedDisplayTitle")]
public string ExtendedDisplayTitle { get; set; } = default!;
///
/// Indicates if this stream is selected (applicable for audio streams).
///
[JsonProperty("selected")]
public bool? Selected { get; set; }
[JsonProperty("forced")]
public bool? Forced { get; set; }
///
/// Number of audio channels (for audio streams).
///
[JsonProperty("channels")]
public int? Channels { get; set; }
///
/// Audio channel layout.
///
[JsonProperty("audioChannelLayout")]
public string? AudioChannelLayout { get; set; }
///
/// Sampling rate for the audio stream.
///
[JsonProperty("samplingRate")]
public int? SamplingRate { get; set; }
///
/// Indicates if the stream can auto-sync.
///
[JsonProperty("canAutoSync")]
public bool? CanAutoSync { get; set; }
///
/// Indicates if the stream is for the hearing impaired.
///
[JsonProperty("hearingImpaired")]
public bool? HearingImpaired { get; set; }
///
/// Indicates if the stream is a dub.
///
[JsonProperty("dub")]
public bool? Dub { get; set; }
///
/// Optional title for the stream (e.g., language variant).
///
[JsonProperty("title")]
public string? Title { get; set; }
}
}