KodiProfile.cs 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. using MediaBrowser.Model.Dlna;
  2. using System.Xml.Serialization;
  3. namespace Emby.Dlna.Profiles
  4. {
  5. [XmlRoot("Profile")]
  6. public class KodiProfile : DefaultProfile
  7. {
  8. public KodiProfile()
  9. {
  10. Name = "Kodi";
  11. MaxStreamingBitrate = 100000000;
  12. MusicStreamingTranscodingBitrate = 1280000;
  13. TimelineOffsetSeconds = 5;
  14. Identification = new DeviceIdentification
  15. {
  16. ModelName = "Kodi",
  17. Headers = new[]
  18. {
  19. new HttpHeaderInfo {Name = "User-Agent", Value = "Kodi", Match = HeaderMatchType.Substring}
  20. }
  21. };
  22. TranscodingProfiles = new[]
  23. {
  24. new TranscodingProfile
  25. {
  26. Container = "mp3",
  27. AudioCodec = "mp3",
  28. Type = DlnaProfileType.Audio
  29. },
  30. new TranscodingProfile
  31. {
  32. Container = "ts",
  33. Type = DlnaProfileType.Video,
  34. AudioCodec = "aac",
  35. VideoCodec = "h264"
  36. },
  37. new TranscodingProfile
  38. {
  39. Container = "jpeg",
  40. Type = DlnaProfileType.Photo
  41. }
  42. };
  43. DirectPlayProfiles = new[]
  44. {
  45. new DirectPlayProfile
  46. {
  47. Container = "",
  48. Type = DlnaProfileType.Video
  49. },
  50. new DirectPlayProfile
  51. {
  52. Container = "",
  53. Type = DlnaProfileType.Audio
  54. },
  55. new DirectPlayProfile
  56. {
  57. Container = "",
  58. Type = DlnaProfileType.Photo,
  59. }
  60. };
  61. ResponseProfiles = new ResponseProfile[] { };
  62. ContainerProfiles = new ContainerProfile[] { };
  63. CodecProfiles = new CodecProfile[] { };
  64. SubtitleProfiles = new[]
  65. {
  66. new SubtitleProfile
  67. {
  68. Format = "srt",
  69. Method = SubtitleDeliveryMethod.External,
  70. },
  71. new SubtitleProfile
  72. {
  73. Format = "sub",
  74. Method = SubtitleDeliveryMethod.External,
  75. },
  76. new SubtitleProfile
  77. {
  78. Format = "srt",
  79. Method = SubtitleDeliveryMethod.Embed,
  80. DidlMode = "",
  81. },
  82. new SubtitleProfile
  83. {
  84. Format = "ass",
  85. Method = SubtitleDeliveryMethod.Embed,
  86. DidlMode = "",
  87. },
  88. new SubtitleProfile
  89. {
  90. Format = "ssa",
  91. Method = SubtitleDeliveryMethod.Embed,
  92. DidlMode = "",
  93. },
  94. new SubtitleProfile
  95. {
  96. Format = "smi",
  97. Method = SubtitleDeliveryMethod.Embed,
  98. DidlMode = "",
  99. },
  100. new SubtitleProfile
  101. {
  102. Format = "dvdsub",
  103. Method = SubtitleDeliveryMethod.Embed,
  104. DidlMode = "",
  105. },
  106. new SubtitleProfile
  107. {
  108. Format = "pgs",
  109. Method = SubtitleDeliveryMethod.Embed,
  110. DidlMode = "",
  111. },
  112. new SubtitleProfile
  113. {
  114. Format = "pgssub",
  115. Method = SubtitleDeliveryMethod.Embed,
  116. DidlMode = "",
  117. },
  118. new SubtitleProfile
  119. {
  120. Format = "sub",
  121. Method = SubtitleDeliveryMethod.Embed,
  122. DidlMode = "",
  123. }
  124. };
  125. }
  126. }
  127. }