DirectPlayProfile.cs 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. #pragma warning disable CS1591
  2. using System.ComponentModel.DataAnnotations;
  3. using System.Xml.Serialization;
  4. namespace MediaBrowser.Model.Dlna
  5. {
  6. public class DirectPlayProfile
  7. {
  8. [XmlAttribute("container")]
  9. public string? Container { get; set; }
  10. [XmlAttribute("audioCodec")]
  11. public string? AudioCodec { get; set; }
  12. [XmlAttribute("videoCodec")]
  13. public string? VideoCodec { get; set; }
  14. [Required]
  15. [XmlAttribute("type")]
  16. public DlnaProfileType Type { get; set; }
  17. public bool SupportsContainer(string container)
  18. {
  19. return ContainerProfile.ContainsContainer(Container, container);
  20. }
  21. public bool SupportsVideoCodec(string codec)
  22. {
  23. return Type == DlnaProfileType.Video && ContainerProfile.ContainsContainer(VideoCodec, codec);
  24. }
  25. public bool SupportsAudioCodec(string codec)
  26. {
  27. return (Type == DlnaProfileType.Audio || Type == DlnaProfileType.Video) && ContainerProfile.ContainsContainer(AudioCodec, codec);
  28. }
  29. }
  30. }