2020-02-04 00:49:27 +00:00
|
|
|
#pragma warning disable CS1591
|
|
|
|
|
2021-05-01 11:06:10 +00:00
|
|
|
using System.ComponentModel.DataAnnotations;
|
2019-01-13 20:02:23 +00:00
|
|
|
using System.Xml.Serialization;
|
2018-12-27 23:27:57 +00:00
|
|
|
|
|
|
|
namespace MediaBrowser.Model.Dlna
|
|
|
|
{
|
|
|
|
public class DirectPlayProfile
|
|
|
|
{
|
|
|
|
[XmlAttribute("container")]
|
2021-05-01 11:06:10 +00:00
|
|
|
public string? Container { get; set; }
|
2018-12-27 23:27:57 +00:00
|
|
|
|
|
|
|
[XmlAttribute("audioCodec")]
|
2021-05-01 11:06:10 +00:00
|
|
|
public string? AudioCodec { get; set; }
|
2018-12-27 23:27:57 +00:00
|
|
|
|
|
|
|
[XmlAttribute("videoCodec")]
|
2021-05-01 11:06:10 +00:00
|
|
|
public string? VideoCodec { get; set; }
|
2018-12-27 23:27:57 +00:00
|
|
|
|
2021-05-01 11:06:10 +00:00
|
|
|
[Required]
|
2018-12-27 23:27:57 +00:00
|
|
|
[XmlAttribute("type")]
|
|
|
|
public DlnaProfileType Type { get; set; }
|
|
|
|
|
|
|
|
public bool SupportsContainer(string container)
|
|
|
|
{
|
|
|
|
return ContainerProfile.ContainsContainer(Container, container);
|
|
|
|
}
|
|
|
|
|
|
|
|
public bool SupportsVideoCodec(string codec)
|
|
|
|
{
|
2020-04-07 11:23:53 +00:00
|
|
|
return Type == DlnaProfileType.Video && ContainerProfile.ContainsContainer(VideoCodec, codec);
|
2018-12-27 23:27:57 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
public bool SupportsAudioCodec(string codec)
|
|
|
|
{
|
2021-05-01 11:06:10 +00:00
|
|
|
return (Type is DlnaProfileType.Audio or DlnaProfileType.Video) && ContainerProfile.ContainsContainer(AudioCodec, codec);
|
2018-12-27 23:27:57 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|