namespace MediaBrowser.Model.Dto { /// <summary> /// Class VideoStreamOptions /// </summary> public class VideoStreamOptions : StreamOptions { /// <summary> /// Gets or sets the video codec. /// Omit to copy /// </summary> /// <value>The video codec.</value> public VideoCodecs? VideoCodec { get; set; } /// <summary> /// Gets or sets the video bit rate. /// </summary> /// <value>The video bit rate.</value> public int? VideoBitRate { get; set; } /// <summary> /// Gets or sets the width. /// </summary> /// <value>The width.</value> public int? Width { get; set; } /// <summary> /// Gets or sets the height. /// </summary> /// <value>The height.</value> public int? Height { get; set; } /// <summary> /// Gets or sets the width of the max. /// </summary> /// <value>The width of the max.</value> public int? MaxWidth { get; set; } /// <summary> /// Gets or sets the height of the max. /// </summary> /// <value>The height of the max.</value> public int? MaxHeight { get; set; } /// <summary> /// Gets or sets the frame rate. /// </summary> /// <value>The frame rate.</value> public double? FrameRate { get; set; } /// <summary> /// Gets or sets the index of the audio stream. /// </summary> /// <value>The index of the audio stream.</value> public int? AudioStreamIndex { get; set; } /// <summary> /// Gets or sets the index of the video stream. /// </summary> /// <value>The index of the video stream.</value> public int? VideoStreamIndex { get; set; } /// <summary> /// Gets or sets the index of the subtitle stream. /// </summary> /// <value>The index of the subtitle stream.</value> public int? SubtitleStreamIndex { get; set; } /// <summary> /// Gets or sets the profile. /// </summary> /// <value>The profile.</value> public string Profile { get; set; } /// <summary> /// Gets or sets the level. /// </summary> /// <value>The level.</value> public string Level { get; set; } } /// <summary> /// Class StreamOptions /// </summary> public class StreamOptions { /// <summary> /// Gets or sets the audio bit rate. /// </summary> /// <value>The audio bit rate.</value> public int? AudioBitRate { get; set; } /// <summary> /// Gets or sets the audio codec. /// Omit to copy the original stream /// </summary> /// <value>The audio encoding format.</value> public AudioCodecs? AudioCodec { get; set; } /// <summary> /// Gets or sets the item id. /// </summary> /// <value>The item id.</value> public string ItemId { get; set; } /// <summary> /// Gets or sets the max audio channels. /// </summary> /// <value>The max audio channels.</value> public int? MaxAudioChannels { get; set; } /// <summary> /// Gets or sets the max audio sample rate. /// </summary> /// <value>The max audio sample rate.</value> public int? MaxAudioSampleRate { get; set; } /// <summary> /// Gets or sets the start time ticks. /// </summary> /// <value>The start time ticks.</value> public long? StartTimeTicks { get; set; } /// <summary> /// Gets or sets a value indicating whether the original media should be served statically /// Only used with progressive streaming /// </summary> /// <value><c>true</c> if static; otherwise, <c>false</c>.</value> public bool? Static { get; set; } /// <summary> /// Gets or sets the output file extension. /// </summary> /// <value>The output file extension.</value> public string OutputFileExtension { get; set; } } /// <summary> /// These are the codecs the api is capable of encoding to /// </summary> public enum AudioCodecs { /// <summary> /// The aac /// </summary> Aac, /// <summary> /// The MP3 /// </summary> Mp3, /// <summary> /// The vorbis /// </summary> Vorbis, /// <summary> /// The wma /// </summary> Wma } /// <summary> /// Enum VideoCodecs /// </summary> public enum VideoCodecs { H263, /// <summary> /// The H264 /// </summary> H264, /// <summary> /// The mpeg4 /// </summary> Mpeg4, /// <summary> /// The theora /// </summary> Theora, /// <summary> /// The VPX /// </summary> Vpx, /// <summary> /// The WMV /// </summary> Wmv } }