//------------------------------------------------------------------------------ // // 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.Models.Components; using LukeHagar.PlexAPI.SDK.Models.Requests; using LukeHagar.PlexAPI.SDK.Utils; public class TranscodeImageRequest { /// /// Indicates the client accepts the indicated media types /// [SpeakeasyMetadata("header:style=simple,explode=false,name=accepts")] public Accepts? Accepts { get; set; } = LukeHagar.PlexAPI.SDK.Models.Components.Accepts.ApplicationXml; /// /// An opaque identifier unique to the client /// [SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Client-Identifier")] public string? ClientIdentifier { get; set; } /// /// The name of the client product /// [SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Product")] public string? Product { get; set; } /// /// The version of the client application /// [SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Version")] public string? Version { get; set; } /// /// The platform of the client /// [SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Platform")] public string? Platform { get; set; } /// /// The version of the platform /// [SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Platform-Version")] public string? PlatformVersion { get; set; } /// /// A relatively friendly name for the client device /// [SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Device")] public string? Device { get; set; } /// /// A potentially less friendly identifier for the device model /// [SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Model")] public string? Model { get; set; } /// /// The device vendor /// [SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Device-Vendor")] public string? DeviceVendor { get; set; } /// /// A friendly name for the client /// [SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Device-Name")] public string? DeviceName { get; set; } /// /// The marketplace on which the client application is distributed /// [SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Marketplace")] public string? Marketplace { get; set; } /// /// The source URL for the image to transcode. Note, if this URL requires a token such as `X-Plex-Token`, it should be given as a query parameter to this url. /// [SpeakeasyMetadata("queryParam:style=form,explode=true,name=url")] public string? Url { get; set; } /// /// The output format for the image; defaults to jpg /// [SpeakeasyMetadata("queryParam:style=form,explode=true,name=format")] public Models.Requests.Format? Format { get; set; } /// /// The desired width of the output image /// [SpeakeasyMetadata("queryParam:style=form,explode=true,name=width")] public long? Width { get; set; } /// /// The desired height of the output image /// [SpeakeasyMetadata("queryParam:style=form,explode=true,name=height")] public long? Height { get; set; } /// /// The desired quality of the output. -1 means the highest quality. Defaults to -1 /// [SpeakeasyMetadata("queryParam:style=form,explode=true,name=quality")] public long? Quality { get; set; } /// /// The background color to apply before painting the image. Only really applicable if image has transparency. Defaults to none /// [SpeakeasyMetadata("queryParam:style=form,explode=true,name=background")] public string? Background { get; set; } /// /// Indicates if image should be upscaled to the desired width/height. Defaults to false /// [SpeakeasyMetadata("queryParam:style=form,explode=true,name=upscale")] public BoolInt? Upscale { get; set; } /// /// Indicates if image should be scaled to fit the smaller dimension. By default (false) the image is scaled to fit within the width/height specified but if this parameter is true, it will allow overflowing one dimension to fit the other. Essentially it is making the width/height minimum sizes of the image or sizing the image to fill the entire width/height even if it overflows one dimension. /// [SpeakeasyMetadata("queryParam:style=form,explode=true,name=minSize")] public BoolInt? MinSize { get; set; } /// /// Obey the rotation values specified in EXIF data. Defaults to true. /// [SpeakeasyMetadata("queryParam:style=form,explode=true,name=rotate")] public BoolInt? Rotate { get; set; } /// /// Apply a blur to the image, Defaults to 0 (none) /// [SpeakeasyMetadata("queryParam:style=form,explode=true,name=blur")] public long? Blur { get; set; } /// /// Scale the image saturation by the specified percentage. Defaults to 100 /// [SpeakeasyMetadata("queryParam:style=form,explode=true,name=saturation")] public long? Saturation { get; set; } /// /// Render the image at the specified opacity percentage. Defaults to 100 /// [SpeakeasyMetadata("queryParam:style=form,explode=true,name=opacity")] public long? Opacity { get; set; } /// /// Use the specified chroma subsambling.
/// /// /// - 0: 411
/// - 1: 420
/// - 2: 422
/// - 3: 444
/// Defaults to 3 (444) ///
///
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=chromaSubsampling")] public ChromaSubsampling? ChromaSubsampling { get; set; } /// /// The color to blend with the image. Defaults to none /// [SpeakeasyMetadata("queryParam:style=form,explode=true,name=blendColor")] public string? BlendColor { get; set; } } }