Files
plexcsharp/LukeHagar/PlexAPI/SDK/Models/Requests/StartTranscodeSessionRequest.cs
speakeasybot c0836c3b34 ## Csharp SDK Changes:
* `PlexApi.LibraryPlaylists.AddPlaylistItems()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LibraryPlaylists.ClearPlaylistItems()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LibraryCollections.MoveCollectionItem()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LibraryCollections.DeleteCollectionItem()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LibraryCollections.AddCollectionItems()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Content.GetSonicallySimilar()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Butler.StopTask()`:  `request` **Changed** **Breaking** ⚠️
* `PlexApi.Butler.StartTask()`:  `request` **Changed** **Breaking** ⚠️
* `PlexApi.Content.GetSonicPath()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.DownloadQueue.GetItemDecision()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Hubs.GetAllHubs()`: 
  *  `request.OnlyTransient` **Changed**
  *  `response.mediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Hubs.GetContinueWatching()`:  `response.mediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Hubs.GetPromotedHubs()`:  `response.mediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Hubs.GetMetadataHubs()`: 
  *  `request.OnlyTransient` **Changed**
  *  `response.mediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Hubs.GetPostplayHubs()`: 
  *  `request.OnlyTransient` **Changed**
  *  `response.mediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Hubs.GetRelatedHubs()`: 
  *  `request.OnlyTransient` **Changed**
  *  `response.mediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Hubs.GetSectionHubs()`: 
  *  `request.OnlyTransient` **Changed**
  *  `response.mediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Content.GetAllLeaves()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Content.ListContent()`: 
  *  `request` **Changed**
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Search.SearchHubs()`:  `response.mediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Content.GetAlbums()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetLibraryItems()`: 
  *  `request.MediaQuery` **Changed**
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.IngestTransientItem()`: 
  *  `request` **Changed**
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetLibraryMatches()`: 
  *  `request` **Changed** **Breaking** ⚠️
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Content.GetMetadataItem()`: 
  *  `request` **Changed**
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetSections()`:  `response.mediaContainer.Directory.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.AddSection()`: 
  *  `request` **Changed**
  *  `response.mediaContainer.Directory.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetTags()`: 
  *  `request.Type` **Changed** **Breaking** ⚠️
* `PlexApi.Content.GetCollectionItems()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetAllItemLeaves()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Status.ListSessions()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.PlayQueue.MovePlayQueueItem()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetExtras()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.PlayQueue.DeletePlayQueueItem()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.PlayQueue.Unshuffle()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.ListMatches()`: 
  *  `request.Manual` **Changed**
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.ListSonicallySimilar()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.PlayQueue.Shuffle()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetRelatedItems()`:  `response.mediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.ListSimilar()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.PlayQueue.ResetPlayQueue()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetItemTree()`:  `response.mediaContainer.MetadataItem.[]` **Changed** **Breaking** ⚠️
* `PlexApi.PlayQueue.ClearPlayQueue()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.PlayQueue.AddToPlayQueue()`: 
  *  `request.Next` **Changed**
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetCommon()`: 
  *  `request.MediaQuery` **Changed**
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetPerson()`:  `response.mediaContainer.Directory.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.ListPersonMedia()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.PlayQueue.GetPlayQueue()`: 
  *  `request` **Changed**
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetLibraryDetails()`: 
  *  `request.IncludeDetails` **Changed**
  *  `response.mediaContainer.Directory.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LibraryPlaylists.MovePlaylistItem()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.Autocomplete()`: 
  *  `request.MediaQuery` **Changed**
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetCollections()`: 
  *  `request.MediaQuery` **Changed**
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LibraryPlaylists.GetPlaylistGeneratorItems()`:  `response.mediaContainer.Metadata` **Changed** **Breaking** ⚠️
* `PlexApi.LibraryPlaylists.DeletePlaylistItem()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Search.VoiceSearchHubs()`: 
  *  `request.Type` **Changed** **Breaking** ⚠️
  *  `response.mediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LibraryPlaylists.CreatePlaylist()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Playlist.GetPlaylistItems()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Playlist.GetPlaylist()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Playlist.ListPlaylists()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Collections.CreateCollection()`: 
  *  `request.Type` **Changed** **Breaking** ⚠️
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.DvRs.TuneChannel()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LiveTv.GetSessions()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LiveTv.GetLiveTvSession()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Transcoder.MakeDecision()`: 
  *  `request` **Changed**
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Subscriptions.GetAllSubscriptions()`: 
  *  `request` **Changed**
  *  `response.mediaContainer.MediaSubscription.[].MediaGrabOperation.[].Metadata` **Changed** **Breaking** ⚠️
* `PlexApi.Subscriptions.CreateSubscription()`:  `response.mediaContainer.MediaSubscription.[].MediaGrabOperation.[].Metadata` **Changed** **Breaking** ⚠️
* `PlexApi.Subscriptions.GetScheduledRecordings()`:  `response.mediaContainer.MediaGrabOperation.[].Metadata` **Changed** **Breaking** ⚠️
* `PlexApi.Subscriptions.GetTemplate()`:  `response.mediaContainer.SubscriptionTemplate.[].MediaSubscription.[].MediaGrabOperation.[].Metadata` **Changed** **Breaking** ⚠️
* `PlexApi.Subscriptions.GetSubscription()`: 
  *  `request` **Changed**
  *  `response.mediaContainer.MediaSubscription.[].MediaGrabOperation.[].Metadata` **Changed** **Breaking** ⚠️
* `PlexApi.Subscriptions.EditSubscriptionPreferences()`:  `response.mediaContainer.MediaSubscription.[].MediaGrabOperation.[].Metadata` **Changed** **Breaking** ⚠️
* `PlexApi.Subscriptions.ReorderSubscription()`:  `response.mediaContainer.MediaSubscription.[].MediaGrabOperation.[].Metadata` **Changed** **Breaking** ⚠️
* `PlexApi.Library.AddSubtitles()`:  `request` **Changed**
* `PlexApi.LibraryPlaylists.UploadPlaylist()`: 
  *  `request.Force` **Changed**
* `PlexApi.Transcoder.TranscodeSubtitles()`:  `request` **Changed**
* `PlexApi.Transcoder.StartTranscodeSession()`:  `request` **Changed**
* `PlexApi.Library.GetMediaPart()`: 
  *  `request.Download` **Changed**
* `PlexApi.Library.DetectIntros()`: 
  *  `request.Force` **Changed**
* `PlexApi.Library.GetSectionImage()`: 
  *  `request.MediaQuery` **Changed**
* `PlexApi.Library.DeleteMediaItem()`: 
  *  `request.Proxy` **Changed**
* `PlexApi.Library.RefreshItemsMetadata()`: 
  *  `request.MarkUpdated` **Changed**
* `PlexApi.Authentication.Post-Users-Sign-In-Data()`: **Added**
* `PlexApi.Authentication.GetTokenDetails()`: **Added**
* `PlexApi.Library.DetectCredits()`:  `request` **Changed**
* `PlexApi.Library.SetStreamSelection()`: 
  *  `request.AllParts` **Changed**
* `PlexApi.Library.UpdateItems()`: 
  *  `request.Field.locked` **Changed**
* `PlexApi.PlayQueue.CreatePlayQueue()`:  `request` **Changed**
* `PlexApi.Library.DeleteLibrarySection()`: 
  *  `request.Async` **Changed**
* `PlexApi.Library.GetAugmentationStatus()`: 
  *  `request.Wait` **Changed**
* `PlexApi.Transcoder.TranscodeImage()`:  `request` **Changed**
* `PlexApi.Devices.ModifyDevice()`: 
  *  `request.Enabled` **Changed**
* `PlexApi.Library.DetectVoiceActivity()`:  `request` **Changed**
* `PlexApi.Library.GetStream()`: 
  *  `request.AutoAdjustSubtitle` **Changed**
* `PlexApi.Library.StartBifGeneration()`: 
  *  `request.Force` **Changed**
* `PlexApi.Library.GetFirstCharacters()`: 
  *  `request.MediaQuery` **Changed**
* `PlexApi.UltraBlur.GetImage()`: 
  *  `request.Noise` **Changed**
* `PlexApi.Library.GenerateThumbs()`: 
  *  `request.Force` **Changed**
* `PlexApi.Updater.ApplyUpdates()`:  `request` **Changed**
* `PlexApi.Updater.CheckUpdates()`: 
  *  `request.Download` **Changed**
* `PlexApi.Library.DeleteMetadataItem()`: 
  *  `request.Proxy` **Changed**
* `PlexApi.Library.OptimizeDatabase()`: 
  *  `request.Async` **Changed**
* `PlexApi.Library.RefreshSection()`: 
  *  `request.Force` **Changed**
* `PlexApi.Hubs.UpdateHubVisibility()`:  `request` **Changed**
* `PlexApi.Hubs.CreateCustomHub()`:  `request` **Changed**
* `PlexApi.DownloadQueue.AddDownloadQueueItems()`:  `request` **Changed**
* `PlexApi.Timeline.Report()`:  `request` **Changed**
* `PlexApi.General.GetSourceConnectionInformation()`: 
  *  `request.Refresh` **Changed**
* `PlexApi.Plex.Get-Server-Resources()`: **Added**
* `PlexApi.Users.Get-Users()`: **Added**
2025-12-01 00:32:52 +00:00

293 lines
13 KiB
C#

//------------------------------------------------------------------------------
// <auto-generated>
// 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.
// </auto-generated>
//------------------------------------------------------------------------------
#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 StartTranscodeSessionRequest
{
/// <summary>
/// Indicates the client accepts the indicated media types
/// </summary>
[SpeakeasyMetadata("header:style=simple,explode=false,name=accepts")]
public Accepts? Accepts { get; set; } = LukeHagar.PlexAPI.SDK.Models.Components.Accepts.ApplicationXml;
/// <summary>
/// An opaque identifier unique to the client
/// </summary>
[SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Client-Identifier")]
public string? ClientIdentifier { get; set; }
/// <summary>
/// The name of the client product
/// </summary>
[SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Product")]
public string? Product { get; set; }
/// <summary>
/// The version of the client application
/// </summary>
[SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Version")]
public string? Version { get; set; }
/// <summary>
/// The platform of the client
/// </summary>
[SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Platform")]
public string? Platform { get; set; }
/// <summary>
/// The version of the platform
/// </summary>
[SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Platform-Version")]
public string? PlatformVersion { get; set; }
/// <summary>
/// A relatively friendly name for the client device
/// </summary>
[SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Device")]
public string? Device { get; set; }
/// <summary>
/// A potentially less friendly identifier for the device model
/// </summary>
[SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Model")]
public string? Model { get; set; }
/// <summary>
/// The device vendor
/// </summary>
[SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Device-Vendor")]
public string? DeviceVendor { get; set; }
/// <summary>
/// A friendly name for the client
/// </summary>
[SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Device-Name")]
public string? DeviceName { get; set; }
/// <summary>
/// The marketplace on which the client application is distributed
/// </summary>
[SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Marketplace")]
public string? Marketplace { get; set; }
/// <summary>
/// Type of transcode media
/// </summary>
[SpeakeasyMetadata("pathParam:style=simple,explode=false,name=transcodeType")]
public TranscodeType TranscodeType { get; set; } = default!;
/// <summary>
/// Transcode session UUID
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=transcodeSessionId")]
public string? TranscodeSessionId { get; set; }
/// <summary>
/// Extension <br/>
///
/// <remarks>
///
/// </remarks>
/// </summary>
[SpeakeasyMetadata("pathParam:style=simple,explode=false,name=extension")]
public Extension Extension { get; set; } = default!;
/// <summary>
/// Indicates how incompatible advanced subtitles (such as ass/ssa) should be included: * &apos;burn&apos; - Burn incompatible advanced text subtitles into the video stream * &apos;text&apos; - Transcode incompatible advanced text subtitles to a compatible text format, even if some markup is lost<br/>
///
/// <remarks>
///
/// </remarks>
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=advancedSubtitles")]
public Models.Components.AdvancedSubtitles? AdvancedSubtitles { get; set; }
/// <summary>
/// Percentage of original audio loudness to use when transcoding (100 is equivalent to original volume, 50 is half, 200 is double, etc)
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=audioBoost")]
public long? AudioBoost { get; set; }
/// <summary>
/// Target video number of audio channels.
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=audioChannelCount")]
public long? AudioChannelCount { get; set; }
/// <summary>
/// Indicates the client supports ABR.
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=autoAdjustQuality")]
public BoolInt? AutoAdjustQuality { get; set; } = LukeHagar.PlexAPI.SDK.Models.Components.BoolInt.False;
/// <summary>
/// Indicates if the server should adjust subtitles based on Voice Activity Data.
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=autoAdjustSubtitle")]
public BoolInt? AutoAdjustSubtitle { get; set; } = LukeHagar.PlexAPI.SDK.Models.Components.BoolInt.False;
/// <summary>
/// Indicates the client supports direct playing the indicated content.
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=directPlay")]
public BoolInt? DirectPlay { get; set; } = LukeHagar.PlexAPI.SDK.Models.Components.BoolInt.False;
/// <summary>
/// Indicates the client supports direct streaming the video of the indicated content.
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=directStream")]
public BoolInt? DirectStream { get; set; } = LukeHagar.PlexAPI.SDK.Models.Components.BoolInt.False;
/// <summary>
/// Indicates the client supports direct streaming the audio of the indicated content.
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=directStreamAudio")]
public BoolInt? DirectStreamAudio { get; set; } = LukeHagar.PlexAPI.SDK.Models.Components.BoolInt.False;
/// <summary>
/// Indicates if resolution should be adjusted for orientation.
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=disableResolutionRotation")]
public BoolInt? DisableResolutionRotation { get; set; } = LukeHagar.PlexAPI.SDK.Models.Components.BoolInt.False;
/// <summary>
/// Ignore client profiles when determining if direct play is possible. Only has an effect when directPlay=1 and both mediaIndex and partIndex are specified and neither are -1
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=hasMDE")]
public BoolInt? HasMDE { get; set; } = LukeHagar.PlexAPI.SDK.Models.Components.BoolInt.False;
/// <summary>
/// Network type of the client, can be used to help determine target bitrate.
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=location")]
public StartTranscodeSessionQueryParamLocation? Location { get; set; }
/// <summary>
/// Buffer size used in playback (in KB). Clients should specify a lower bound if not known exactly. This value could make the difference between transcoding and direct play on bandwidth constrained networks.
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=mediaBufferSize")]
public long? MediaBufferSize { get; set; }
/// <summary>
/// Index of the media to transcode. -1 or not specified indicates let the server choose.
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=mediaIndex")]
public long? MediaIndex { get; set; }
/// <summary>
/// Target bitrate for audio only files (in kbps, used to transcode).
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=musicBitrate")]
public long? MusicBitrate { get; set; }
/// <summary>
/// Offset from the start of the media (in seconds).
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=offset")]
public double? Offset { get; set; }
/// <summary>
/// Index of the part to transcode. -1 or not specified indicates the server should join parts together in a transcode
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=partIndex")]
public long? PartIndex { get; set; }
/// <summary>
/// Internal PMS path of the media to transcode.
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=path")]
public string? Path { get; set; }
/// <summary>
/// Maximum bitrate (in kbps) to use in ABR.
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=peakBitrate")]
public long? PeakBitrate { get; set; }
/// <summary>
/// Target photo resolution.
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=photoResolution")]
public string? PhotoResolution { get; set; }
/// <summary>
/// Indicates the network streaming protocol to be used for the transcode session: * &apos;http&apos; - include the file in the http response such as MKV streaming * &apos;hls&apos; - hls stream (RFC 8216) * &apos;dash&apos; - dash stream (ISO/IEC 23009-1:2022)<br/>
///
/// <remarks>
///
/// </remarks>
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=protocol")]
public StartTranscodeSessionQueryParamProtocol? Protocol { get; set; }
/// <summary>
/// Number of seconds to include in each transcoded segment
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=secondsPerSegment")]
public long? SecondsPerSegment { get; set; }
/// <summary>
/// Percentage of original subtitle size to use when burning subtitles (100 is equivalent to original size, 50 is half, ect)
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=subtitleSize")]
public long? SubtitleSize { get; set; }
/// <summary>
/// Indicates how subtitles should be included: * &apos;auto&apos; - Compute the appropriate subtitle setting automatically * &apos;burn&apos; - Burn the selected subtitle; auto if no selected subtitle * &apos;none&apos; - Ignore all subtitle streams * &apos;sidecar&apos; - The selected subtitle should be provided as a sidecar * &apos;embedded&apos; - The selected subtitle should be provided as an embedded stream * &apos;segmented&apos; - The selected subtitle should be provided as a segmented stream<br/>
///
/// <remarks>
///
/// </remarks>
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=subtitles")]
public StartTranscodeSessionQueryParamSubtitles? Subtitles { get; set; }
/// <summary>
/// Target video bitrate (in kbps).
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=videoBitrate")]
public long? VideoBitrate { get; set; }
/// <summary>
/// Target photo quality.
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=videoQuality")]
public long? VideoQuality { get; set; }
/// <summary>
/// Target maximum video resolution.
/// </summary>
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=videoResolution")]
public string? VideoResolution { get; set; }
/// <summary>
/// See <a href="#section/API-Info/Profile-Augmentations">Profile Augmentations</a> .
/// </summary>
[SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Client-Profile-Extra")]
public string? XPlexClientProfileExtra { get; set; }
/// <summary>
/// Which built in Client Profile to use in the decision. Generally should only be used to specify the Generic profile.
/// </summary>
[SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Client-Profile-Name")]
public string? XPlexClientProfileName { get; set; }
/// <summary>
/// Unique per client playback session. Used if a client can playback multiple items at a time (such as a browser with multiple tabs)
/// </summary>
[SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Session-Identifier")]
public string? XPlexSessionIdentifier { get; set; }
}
}