namespace MediaBrowser.Model.Dto
{
    /// 
    /// Class VideoStreamOptions
    /// 
    public class VideoStreamOptions : StreamOptions
    {
        /// 
        /// Gets or sets the video codec.
        /// Omit to copy
        /// 
        /// The video codec.
        public string VideoCodec { get; set; }
        /// 
        /// Gets or sets the video bit rate.
        /// 
        /// The video bit rate.
        public int? VideoBitRate { get; set; }
        /// 
        /// Gets or sets the width.
        /// 
        /// The width.
        public int? Width { get; set; }
        /// 
        /// Gets or sets the height.
        /// 
        /// The height.
        public int? Height { get; set; }
        /// 
        /// Gets or sets the width of the max.
        /// 
        /// The width of the max.
        public int? MaxWidth { get; set; }
        /// 
        /// Gets or sets the height of the max.
        /// 
        /// The height of the max.
        public int? MaxHeight { get; set; }
        /// 
        /// Gets or sets the frame rate.
        /// 
        /// The frame rate.
        public double? FrameRate { get; set; }
        /// 
        /// Gets or sets the index of the audio stream.
        /// 
        /// The index of the audio stream.
        public int? AudioStreamIndex { get; set; }
        /// 
        /// Gets or sets the index of the video stream.
        /// 
        /// The index of the video stream.
        public int? VideoStreamIndex { get; set; }
        /// 
        /// Gets or sets the index of the subtitle stream.
        /// 
        /// The index of the subtitle stream.
        public int? SubtitleStreamIndex { get; set; }
        /// 
        /// Gets or sets the profile.
        /// 
        /// The profile.
        public string Profile { get; set; }
        /// 
        /// Gets or sets the level.
        /// 
        /// The level.
        public string Level { get; set; }
        /// 
        /// Gets or sets the baseline stream audio bit rate.
        /// 
        /// The baseline stream audio bit rate.
        public int? BaselineStreamAudioBitRate { get; set; }
        /// 
        /// Gets or sets a value indicating whether [append baseline stream].
        /// 
        /// true if [append baseline stream]; otherwise, false.
        public bool AppendBaselineStream { get; set; }
        /// 
        /// Gets or sets the time stamp offset ms. Only used with HLS.
        /// 
        /// The time stamp offset ms.
        public int? TimeStampOffsetMs { get; set; }
    }
}