DirectPlayProfile.cs 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. using System.Collections.Generic;
  2. using System.Linq;
  3. namespace MediaBrowser.Controller.Dlna
  4. {
  5. public class DirectPlayProfile
  6. {
  7. public string Container { get; set; }
  8. public string AudioCodec { get; set; }
  9. public string VideoCodec { get; set; }
  10. public DlnaProfileType Type { get; set; }
  11. public List<ProfileCondition> Conditions { get; set; }
  12. public DirectPlayProfile()
  13. {
  14. Conditions = new List<ProfileCondition>();
  15. }
  16. public List<string> GetContainers()
  17. {
  18. return (Container ?? string.Empty).Split(',').Where(i => !string.IsNullOrWhiteSpace(i)).ToList();
  19. }
  20. public List<string> GetAudioCodecs()
  21. {
  22. return (AudioCodec ?? string.Empty).Split(',').Where(i => !string.IsNullOrWhiteSpace(i)).ToList();
  23. }
  24. public List<string> GetVideoCodecs()
  25. {
  26. return (VideoCodec ?? string.Empty).Split(',').Where(i => !string.IsNullOrWhiteSpace(i)).ToList();
  27. }
  28. }
  29. public enum DlnaProfileType
  30. {
  31. Audio = 0,
  32. Video = 1,
  33. Photo = 2
  34. }
  35. }