#pragma warning disable CA1819 // Properties should not return arrays using System; using System.Xml.Serialization; namespace MediaBrowser.Model.Dlna { /// /// A represents a set of metadata which determines which content a certain device is able to play. ///
/// Specifically, it defines the supported containers and /// codecs (video and/or audio, including codec profiles and levels) /// the device is able to direct play (without transcoding or remuxing), /// as well as which containers/codecs to transcode to in case it isn't. ///
public class DeviceProfile { /// /// Gets or sets the name of this device profile. /// public string? Name { get; set; } /// /// Gets or sets the Id. /// [XmlIgnore] public string? Id { get; set; } /// /// Gets or sets the maximum allowed bitrate for all streamed content. /// public int? MaxStreamingBitrate { get; set; } = 8000000; /// /// Gets or sets the maximum allowed bitrate for statically streamed content (= direct played files). /// public int? MaxStaticBitrate { get; set; } = 8000000; /// /// Gets or sets the maximum allowed bitrate for transcoded music streams. /// public int? MusicStreamingTranscodingBitrate { get; set; } = 128000; /// /// Gets or sets the maximum allowed bitrate for statically streamed (= direct played) music files. /// public int? MaxStaticMusicBitrate { get; set; } = 8000000; /// /// Gets or sets the direct play profiles. /// public DirectPlayProfile[] DirectPlayProfiles { get; set; } = Array.Empty(); /// /// Gets or sets the transcoding profiles. /// public TranscodingProfile[] TranscodingProfiles { get; set; } = Array.Empty(); /// /// Gets or sets the container profiles. /// public ContainerProfile[] ContainerProfiles { get; set; } = Array.Empty(); /// /// Gets or sets the codec profiles. /// public CodecProfile[] CodecProfiles { get; set; } = Array.Empty(); /// /// Gets or sets the subtitle profiles. /// public SubtitleProfile[] SubtitleProfiles { get; set; } = Array.Empty(); } }