aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Dlna
diff options
context:
space:
mode:
authortikuf <admin@nyalindee.com>2014-04-02 16:53:53 +1100
committertikuf <admin@nyalindee.com>2014-04-02 16:53:53 +1100
commit9ff262bc2ac24be2931505aa877b0c500fcb988a (patch)
tree75ef8f32fc4b7359cc48f45be58216491d624b93 /MediaBrowser.Dlna
parent8882925dab080eb236a5cc896f48ed99711d76a8 (diff)
parent6fe7264f7828aff196e19cfa3497835c5921a7f9 (diff)
Merge branch 'master' of https://github.com/MediaBrowser/MediaBrowser
Diffstat (limited to 'MediaBrowser.Dlna')
-rw-r--r--MediaBrowser.Dlna/MediaBrowser.Dlna.csproj3
-rw-r--r--MediaBrowser.Dlna/PlayTo/Device.cs44
-rw-r--r--MediaBrowser.Dlna/PlayTo/DeviceIcon.cs21
-rw-r--r--MediaBrowser.Dlna/PlayTo/DeviceInfo.cs3
-rw-r--r--MediaBrowser.Dlna/PlayTo/DlnaController.cs1
-rw-r--r--MediaBrowser.Dlna/PlayTo/PlaylistItem.cs2
-rw-r--r--MediaBrowser.Dlna/PlayTo/PlaylistItemFactory.cs4
-rw-r--r--MediaBrowser.Dlna/PlayTo/uIcon.cs48
-rw-r--r--MediaBrowser.Dlna/Profiles/DefaultProfile.cs1
-rw-r--r--MediaBrowser.Dlna/Profiles/DenonAvrProfile.cs1
-rw-r--r--MediaBrowser.Dlna/Profiles/Foobar2000Profile.cs1
-rw-r--r--MediaBrowser.Dlna/Profiles/LgTvProfile.cs1
-rw-r--r--MediaBrowser.Dlna/Profiles/LinksysDMA2100Profile.cs1
-rw-r--r--MediaBrowser.Dlna/Profiles/PanasonicVieraProfile.cs1
-rw-r--r--MediaBrowser.Dlna/Profiles/SamsungSmartTvProfile.cs1
-rw-r--r--MediaBrowser.Dlna/Profiles/SonyBlurayPlayer2013Profile.cs1
-rw-r--r--MediaBrowser.Dlna/Profiles/SonyBlurayPlayerProfile.cs1
-rw-r--r--MediaBrowser.Dlna/Profiles/SonyBravia2010Profile.cs1
-rw-r--r--MediaBrowser.Dlna/Profiles/SonyBravia2011Profile.cs1
-rw-r--r--MediaBrowser.Dlna/Profiles/SonyBravia2012Profile.cs1
-rw-r--r--MediaBrowser.Dlna/Profiles/SonyBravia2013Profile.cs1
-rw-r--r--MediaBrowser.Dlna/Profiles/SonyPs3Profile.cs1
-rw-r--r--MediaBrowser.Dlna/Profiles/WdtvLiveProfile.cs1
-rw-r--r--MediaBrowser.Dlna/Profiles/Windows81Profile.cs141
-rw-r--r--MediaBrowser.Dlna/Profiles/Xbox360Profile.cs4
-rw-r--r--MediaBrowser.Dlna/Profiles/XboxOneProfile.cs1
26 files changed, 223 insertions, 64 deletions
diff --git a/MediaBrowser.Dlna/MediaBrowser.Dlna.csproj b/MediaBrowser.Dlna/MediaBrowser.Dlna.csproj
index df1fed12f0..21e41c02af 100644
--- a/MediaBrowser.Dlna/MediaBrowser.Dlna.csproj
+++ b/MediaBrowser.Dlna/MediaBrowser.Dlna.csproj
@@ -70,6 +70,7 @@
<Compile Include="PlayTo\PlayToServerEntryPoint.cs" />
<Compile Include="PlayTo\ServiceAction.cs" />
<Compile Include="Profiles\Foobar2000Profile.cs" />
+ <Compile Include="Profiles\Windows81Profile.cs" />
<Compile Include="Ssdp\SsdpHelper.cs" />
<Compile Include="PlayTo\SsdpHttpClient.cs" />
<Compile Include="PlayTo\StateVariable.cs" />
@@ -78,7 +79,7 @@
<Compile Include="PlayTo\TransportStateEventArgs.cs" />
<Compile Include="PlayTo\uBaseObject.cs" />
<Compile Include="PlayTo\uContainer.cs" />
- <Compile Include="PlayTo\uIcon.cs" />
+ <Compile Include="PlayTo\DeviceIcon.cs" />
<Compile Include="PlayTo\uParser.cs" />
<Compile Include="PlayTo\uPnpNamespaces.cs" />
<Compile Include="Profiles\DefaultProfile.cs" />
diff --git a/MediaBrowser.Dlna/PlayTo/Device.cs b/MediaBrowser.Dlna/PlayTo/Device.cs
index c0f88f285e..6b7fb0ceed 100644
--- a/MediaBrowser.Dlna/PlayTo/Device.cs
+++ b/MediaBrowser.Dlna/PlayTo/Device.cs
@@ -1,4 +1,5 @@
-using MediaBrowser.Common.Net;
+using System.Globalization;
+using MediaBrowser.Common.Net;
using MediaBrowser.Controller.Configuration;
using MediaBrowser.Model.Logging;
using System;
@@ -453,10 +454,10 @@ namespace MediaBrowser.Dlna.PlayTo
var volume = result.Document.Descendants(uPnpNamespaces.RenderingControl + "GetVolumeResponse").Select(i => i.Element("CurrentVolume")).FirstOrDefault(i => i != null);
var volumeValue = volume == null ? null : volume.Value;
- if (volumeValue == null)
+ if (string.IsNullOrWhiteSpace(volumeValue))
return;
- Volume = Int32.Parse(volumeValue);
+ Volume = int.Parse(volumeValue, UsCulture);
//Reset the Mute value if Volume is bigger than zero
if (Volume > 0 && _muteVol > 0)
@@ -555,17 +556,17 @@ namespace MediaBrowser.Dlna.PlayTo
var durationElem = result.Document.Descendants(uPnpNamespaces.AvTransport + "GetPositionInfoResponse").Select(i => i.Element("TrackDuration")).FirstOrDefault(i => i != null);
var duration = durationElem == null ? null : durationElem.Value;
- if (duration != null)
+ if (!string.IsNullOrWhiteSpace(duration))
{
- Duration = TimeSpan.Parse(duration);
+ Duration = TimeSpan.Parse(duration, UsCulture);
}
var positionElem = result.Document.Descendants(uPnpNamespaces.AvTransport + "GetPositionInfoResponse").Select(i => i.Element("RelTime")).FirstOrDefault(i => i != null);
var position = positionElem == null ? null : positionElem.Value;
- if (position != null)
+ if (!string.IsNullOrWhiteSpace(position))
{
- Position = TimeSpan.Parse(position);
+ Position = TimeSpan.Parse(position, UsCulture);
}
var track = result.Document.Descendants("TrackMetaData").Select(i => i.Value)
@@ -701,7 +702,7 @@ namespace MediaBrowser.Dlna.PlayTo
if (icon != null)
{
- deviceProperties.Icon = uIcon.Create(icon);
+ deviceProperties.Icon = CreateIcon(icon);
}
var isRenderer = false;
@@ -746,6 +747,33 @@ namespace MediaBrowser.Dlna.PlayTo
#endregion
+ private static readonly CultureInfo UsCulture = new CultureInfo("en-US");
+ private static DeviceIcon CreateIcon(XElement element)
+ {
+ if (element == null)
+ {
+ throw new ArgumentNullException("element");
+ }
+
+ var mimeType = element.GetDescendantValue(uPnpNamespaces.ud.GetName("mimetype"));
+ var width = element.GetDescendantValue(uPnpNamespaces.ud.GetName("width"));
+ var height = element.GetDescendantValue(uPnpNamespaces.ud.GetName("height"));
+ var depth = element.GetDescendantValue(uPnpNamespaces.ud.GetName("depth"));
+ var url = element.GetDescendantValue(uPnpNamespaces.ud.GetName("url"));
+
+ var widthValue = int.Parse(width, NumberStyles.Any, UsCulture);
+ var heightValue = int.Parse(height, NumberStyles.Any, UsCulture);
+
+ return new DeviceIcon
+ {
+ Depth = depth,
+ Height = heightValue,
+ MimeType = mimeType,
+ Url = url,
+ Width = widthValue
+ };
+ }
+
private static DeviceService Create(XElement element)
{
var type = element.GetDescendantValue(uPnpNamespaces.ud.GetName("serviceType"));
diff --git a/MediaBrowser.Dlna/PlayTo/DeviceIcon.cs b/MediaBrowser.Dlna/PlayTo/DeviceIcon.cs
new file mode 100644
index 0000000000..a46abdd745
--- /dev/null
+++ b/MediaBrowser.Dlna/PlayTo/DeviceIcon.cs
@@ -0,0 +1,21 @@
+
+namespace MediaBrowser.Dlna.PlayTo
+{
+ public class DeviceIcon
+ {
+ public string Url { get; set; }
+
+ public string MimeType { get; set; }
+
+ public int Width { get; set; }
+
+ public int Height { get; set; }
+
+ public string Depth { get; set; }
+
+ public override string ToString()
+ {
+ return string.Format("{0}x{1}", Height, Width);
+ }
+ }
+}
diff --git a/MediaBrowser.Dlna/PlayTo/DeviceInfo.cs b/MediaBrowser.Dlna/PlayTo/DeviceInfo.cs
index 122549c7d3..71b06c8ee1 100644
--- a/MediaBrowser.Dlna/PlayTo/DeviceInfo.cs
+++ b/MediaBrowser.Dlna/PlayTo/DeviceInfo.cs
@@ -1,5 +1,6 @@
using MediaBrowser.Controller.Dlna;
using System.Collections.Generic;
+using MediaBrowser.Model.Dlna;
namespace MediaBrowser.Dlna.PlayTo
{
@@ -46,7 +47,7 @@ namespace MediaBrowser.Dlna.PlayTo
}
}
- public uIcon Icon { get; set; }
+ public DeviceIcon Icon { get; set; }
private readonly List<DeviceService> _services = new List<DeviceService>();
public List<DeviceService> Services
diff --git a/MediaBrowser.Dlna/PlayTo/DlnaController.cs b/MediaBrowser.Dlna/PlayTo/DlnaController.cs
index 96df8c8622..a584408c53 100644
--- a/MediaBrowser.Dlna/PlayTo/DlnaController.cs
+++ b/MediaBrowser.Dlna/PlayTo/DlnaController.cs
@@ -6,6 +6,7 @@ using MediaBrowser.Controller.Entities.Audio;
using MediaBrowser.Controller.Library;
using MediaBrowser.Controller.Persistence;
using MediaBrowser.Controller.Session;
+using MediaBrowser.Model.Dlna;
using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Logging;
using MediaBrowser.Model.Session;
diff --git a/MediaBrowser.Dlna/PlayTo/PlaylistItem.cs b/MediaBrowser.Dlna/PlayTo/PlaylistItem.cs
index 9f990bcb7b..be6e9a0c94 100644
--- a/MediaBrowser.Dlna/PlayTo/PlaylistItem.cs
+++ b/MediaBrowser.Dlna/PlayTo/PlaylistItem.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Controller.Dlna;
+using MediaBrowser.Model.Dlna;
namespace MediaBrowser.Dlna.PlayTo
{
diff --git a/MediaBrowser.Dlna/PlayTo/PlaylistItemFactory.cs b/MediaBrowser.Dlna/PlayTo/PlaylistItemFactory.cs
index 6a42e6a756..34394fa32d 100644
--- a/MediaBrowser.Dlna/PlayTo/PlaylistItemFactory.cs
+++ b/MediaBrowser.Dlna/PlayTo/PlaylistItemFactory.cs
@@ -1,6 +1,7 @@
using MediaBrowser.Controller.Dlna;
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Entities.Audio;
+using MediaBrowser.Model.Dlna;
using MediaBrowser.Model.Entities;
using System;
using System.Collections.Generic;
@@ -184,7 +185,6 @@ namespace MediaBrowser.Dlna.PlayTo
}
break;
}
- case ProfileConditionValue.Filesize:
case ProfileConditionValue.AudioProfile:
case ProfileConditionValue.Has64BitOffsets:
case ProfileConditionValue.VideoBitDepth:
@@ -444,8 +444,6 @@ namespace MediaBrowser.Dlna.PlayTo
return audioStream == null ? null : audioStream.BitRate;
case ProfileConditionValue.AudioChannels:
return audioStream == null ? null : audioStream.Channels;
- case ProfileConditionValue.Filesize:
- return new FileInfo(mediaPath).Length;
case ProfileConditionValue.VideoBitrate:
return videoStream == null ? null : videoStream.BitRate;
case ProfileConditionValue.VideoFramerate:
diff --git a/MediaBrowser.Dlna/PlayTo/uIcon.cs b/MediaBrowser.Dlna/PlayTo/uIcon.cs
deleted file mode 100644
index 79bbbc1efa..0000000000
--- a/MediaBrowser.Dlna/PlayTo/uIcon.cs
+++ /dev/null
@@ -1,48 +0,0 @@
-using System;
-using System.Xml.Linq;
-
-namespace MediaBrowser.Dlna.PlayTo
-{
- public class uIcon
- {
- public string Url { get; private set; }
-
- public string MimeType { get; private set; }
-
- public int Width { get; private set; }
-
- public int Height { get; private set; }
-
- public string Depth { get; private set; }
-
- public uIcon(string mimeType, string width, string height, string depth, string url)
- {
- MimeType = mimeType;
- Width = (!string.IsNullOrEmpty(width)) ? int.Parse(width) : 0;
- Height = (!string.IsNullOrEmpty(height)) ? int.Parse(height) : 0;
- Depth = depth;
- Url = url;
- }
-
- public static uIcon Create(XElement element)
- {
- if (element == null)
- {
- throw new ArgumentNullException("element");
- }
-
- var mimeType = element.GetDescendantValue(uPnpNamespaces.ud.GetName("mimetype"));
- var width = element.GetDescendantValue(uPnpNamespaces.ud.GetName("width"));
- var height = element.GetDescendantValue(uPnpNamespaces.ud.GetName("height"));
- var depth = element.GetDescendantValue(uPnpNamespaces.ud.GetName("depth"));
- var url = element.GetDescendantValue(uPnpNamespaces.ud.GetName("url"));
-
- return new uIcon(mimeType, width, height, depth, url);
- }
-
- public override string ToString()
- {
- return string.Format("{0}x{1}", Height, Width);
- }
- }
-}
diff --git a/MediaBrowser.Dlna/Profiles/DefaultProfile.cs b/MediaBrowser.Dlna/Profiles/DefaultProfile.cs
index e6b5668faf..13bf467c62 100644
--- a/MediaBrowser.Dlna/Profiles/DefaultProfile.cs
+++ b/MediaBrowser.Dlna/Profiles/DefaultProfile.cs
@@ -1,5 +1,6 @@
using MediaBrowser.Controller.Dlna;
using System.Xml.Serialization;
+using MediaBrowser.Model.Dlna;
namespace MediaBrowser.Dlna.Profiles
{
diff --git a/MediaBrowser.Dlna/Profiles/DenonAvrProfile.cs b/MediaBrowser.Dlna/Profiles/DenonAvrProfile.cs
index 3c5064ad62..2f2d4f3ceb 100644
--- a/MediaBrowser.Dlna/Profiles/DenonAvrProfile.cs
+++ b/MediaBrowser.Dlna/Profiles/DenonAvrProfile.cs
@@ -1,5 +1,6 @@
using System.Xml.Serialization;
using MediaBrowser.Controller.Dlna;
+using MediaBrowser.Model.Dlna;
namespace MediaBrowser.Dlna.Profiles
{
diff --git a/MediaBrowser.Dlna/Profiles/Foobar2000Profile.cs b/MediaBrowser.Dlna/Profiles/Foobar2000Profile.cs
index 198b0a73a2..1eae3fa934 100644
--- a/MediaBrowser.Dlna/Profiles/Foobar2000Profile.cs
+++ b/MediaBrowser.Dlna/Profiles/Foobar2000Profile.cs
@@ -1,5 +1,6 @@
using MediaBrowser.Controller.Dlna;
using System.Xml.Serialization;
+using MediaBrowser.Model.Dlna;
namespace MediaBrowser.Dlna.Profiles
{
diff --git a/MediaBrowser.Dlna/Profiles/LgTvProfile.cs b/MediaBrowser.Dlna/Profiles/LgTvProfile.cs
index ccf36e8447..cce33ae100 100644
--- a/MediaBrowser.Dlna/Profiles/LgTvProfile.cs
+++ b/MediaBrowser.Dlna/Profiles/LgTvProfile.cs
@@ -1,5 +1,6 @@
using System.Xml.Serialization;
using MediaBrowser.Controller.Dlna;
+using MediaBrowser.Model.Dlna;
namespace MediaBrowser.Dlna.Profiles
{
diff --git a/MediaBrowser.Dlna/Profiles/LinksysDMA2100Profile.cs b/MediaBrowser.Dlna/Profiles/LinksysDMA2100Profile.cs
index a64cd24f31..e7542ea9e5 100644
--- a/MediaBrowser.Dlna/Profiles/LinksysDMA2100Profile.cs
+++ b/MediaBrowser.Dlna/Profiles/LinksysDMA2100Profile.cs
@@ -1,5 +1,6 @@
using System.Xml.Serialization;
using MediaBrowser.Controller.Dlna;
+using MediaBrowser.Model.Dlna;
namespace MediaBrowser.Dlna.Profiles
{
diff --git a/MediaBrowser.Dlna/Profiles/PanasonicVieraProfile.cs b/MediaBrowser.Dlna/Profiles/PanasonicVieraProfile.cs
index ced9a7c612..178207fc6a 100644
--- a/MediaBrowser.Dlna/Profiles/PanasonicVieraProfile.cs
+++ b/MediaBrowser.Dlna/Profiles/PanasonicVieraProfile.cs
@@ -1,5 +1,6 @@
using System.Xml.Serialization;
using MediaBrowser.Controller.Dlna;
+using MediaBrowser.Model.Dlna;
namespace MediaBrowser.Dlna.Profiles
{
diff --git a/MediaBrowser.Dlna/Profiles/SamsungSmartTvProfile.cs b/MediaBrowser.Dlna/Profiles/SamsungSmartTvProfile.cs
index b008947d3f..db856eeee9 100644
--- a/MediaBrowser.Dlna/Profiles/SamsungSmartTvProfile.cs
+++ b/MediaBrowser.Dlna/Profiles/SamsungSmartTvProfile.cs
@@ -1,5 +1,6 @@
using System.Xml.Serialization;
using MediaBrowser.Controller.Dlna;
+using MediaBrowser.Model.Dlna;
namespace MediaBrowser.Dlna.Profiles
{
diff --git a/MediaBrowser.Dlna/Profiles/SonyBlurayPlayer2013Profile.cs b/MediaBrowser.Dlna/Profiles/SonyBlurayPlayer2013Profile.cs
index b64d4f6caf..833f623bf4 100644
--- a/MediaBrowser.Dlna/Profiles/SonyBlurayPlayer2013Profile.cs
+++ b/MediaBrowser.Dlna/Profiles/SonyBlurayPlayer2013Profile.cs
@@ -1,5 +1,6 @@
using System.Xml.Serialization;
using MediaBrowser.Controller.Dlna;
+using MediaBrowser.Model.Dlna;
namespace MediaBrowser.Dlna.Profiles
{
diff --git a/MediaBrowser.Dlna/Profiles/SonyBlurayPlayerProfile.cs b/MediaBrowser.Dlna/Profiles/SonyBlurayPlayerProfile.cs
index 972fc48ed7..c6319122c4 100644
--- a/MediaBrowser.Dlna/Profiles/SonyBlurayPlayerProfile.cs
+++ b/MediaBrowser.Dlna/Profiles/SonyBlurayPlayerProfile.cs
@@ -1,5 +1,6 @@
using System.Xml.Serialization;
using MediaBrowser.Controller.Dlna;
+using MediaBrowser.Model.Dlna;
namespace MediaBrowser.Dlna.Profiles
{
diff --git a/MediaBrowser.Dlna/Profiles/SonyBravia2010Profile.cs b/MediaBrowser.Dlna/Profiles/SonyBravia2010Profile.cs
index 870b97fe72..6639e18763 100644
--- a/MediaBrowser.Dlna/Profiles/SonyBravia2010Profile.cs
+++ b/MediaBrowser.Dlna/Profiles/SonyBravia2010Profile.cs
@@ -1,5 +1,6 @@
using System.Xml.Serialization;
using MediaBrowser.Controller.Dlna;
+using MediaBrowser.Model.Dlna;
namespace MediaBrowser.Dlna.Profiles
{
diff --git a/MediaBrowser.Dlna/Profiles/SonyBravia2011Profile.cs b/MediaBrowser.Dlna/Profiles/SonyBravia2011Profile.cs
index 2bba58696e..8665b892ab 100644
--- a/MediaBrowser.Dlna/Profiles/SonyBravia2011Profile.cs
+++ b/MediaBrowser.Dlna/Profiles/SonyBravia2011Profile.cs
@@ -1,5 +1,6 @@
using System.Xml.Serialization;
using MediaBrowser.Controller.Dlna;
+using MediaBrowser.Model.Dlna;
namespace MediaBrowser.Dlna.Profiles
{
diff --git a/MediaBrowser.Dlna/Profiles/SonyBravia2012Profile.cs b/MediaBrowser.Dlna/Profiles/SonyBravia2012Profile.cs
index f8a6dcfbd7..5becc6752a 100644
--- a/MediaBrowser.Dlna/Profiles/SonyBravia2012Profile.cs
+++ b/MediaBrowser.Dlna/Profiles/SonyBravia2012Profile.cs
@@ -1,5 +1,6 @@
using System.Xml.Serialization;
using MediaBrowser.Controller.Dlna;
+using MediaBrowser.Model.Dlna;
namespace MediaBrowser.Dlna.Profiles
{
diff --git a/MediaBrowser.Dlna/Profiles/SonyBravia2013Profile.cs b/MediaBrowser.Dlna/Profiles/SonyBravia2013Profile.cs
index 56eaf47f4f..4b814c3e0a 100644
--- a/MediaBrowser.Dlna/Profiles/SonyBravia2013Profile.cs
+++ b/MediaBrowser.Dlna/Profiles/SonyBravia2013Profile.cs
@@ -1,5 +1,6 @@
using System.Xml.Serialization;
using MediaBrowser.Controller.Dlna;
+using MediaBrowser.Model.Dlna;
namespace MediaBrowser.Dlna.Profiles
{
diff --git a/MediaBrowser.Dlna/Profiles/SonyPs3Profile.cs b/MediaBrowser.Dlna/Profiles/SonyPs3Profile.cs
index 06d721f52e..f746c0d3af 100644
--- a/MediaBrowser.Dlna/Profiles/SonyPs3Profile.cs
+++ b/MediaBrowser.Dlna/Profiles/SonyPs3Profile.cs
@@ -1,5 +1,6 @@
using System.Xml.Serialization;
using MediaBrowser.Controller.Dlna;
+using MediaBrowser.Model.Dlna;
namespace MediaBrowser.Dlna.Profiles
{
diff --git a/MediaBrowser.Dlna/Profiles/WdtvLiveProfile.cs b/MediaBrowser.Dlna/Profiles/WdtvLiveProfile.cs
index c3b88f7bfc..5e7c278936 100644
--- a/MediaBrowser.Dlna/Profiles/WdtvLiveProfile.cs
+++ b/MediaBrowser.Dlna/Profiles/WdtvLiveProfile.cs
@@ -1,5 +1,6 @@
using MediaBrowser.Controller.Dlna;
using System.Xml.Serialization;
+using MediaBrowser.Model.Dlna;
namespace MediaBrowser.Dlna.Profiles
{
diff --git a/MediaBrowser.Dlna/Profiles/Windows81Profile.cs b/MediaBrowser.Dlna/Profiles/Windows81Profile.cs
new file mode 100644
index 0000000000..b7c6372584
--- /dev/null
+++ b/MediaBrowser.Dlna/Profiles/Windows81Profile.cs
@@ -0,0 +1,141 @@
+using System.Xml.Serialization;
+using MediaBrowser.Model.Dlna;
+
+namespace MediaBrowser.Dlna.Profiles
+{
+ [XmlRoot("Profile")]
+ public class Windows81Profile : DefaultProfile
+ {
+ public Windows81Profile()
+ {
+ Name = "Windows 8/RT";
+
+ Identification = new DeviceIdentification
+ {
+ Manufacturer = "Microsoft SDK Customer"
+ };
+
+ TranscodingProfiles = new[]
+ {
+ new TranscodingProfile
+ {
+ Container = "mp3",
+ AudioCodec = "mp3",
+ Type = DlnaProfileType.Audio
+ },
+ new TranscodingProfile
+ {
+ Container = "ts",
+ VideoCodec = "h264",
+ AudioCodec = "aac",
+ Type = DlnaProfileType.Video,
+ VideoProfile = "Baseline"
+ }
+ };
+
+ DirectPlayProfiles = new[]
+ {
+ new DirectPlayProfile
+ {
+ Container = "mp4,mov",
+ VideoCodec = "h264,mpeg4",
+ AudioCodec = "aac,ac3,eac3,mp3,pcm",
+ Type = DlnaProfileType.Video
+ },
+
+ new DirectPlayProfile
+ {
+ Container = "ts",
+ VideoCodec = "h264",
+ AudioCodec = "aac,ac3,eac3,mp3,mp2,pcm",
+ Type = DlnaProfileType.Video
+ },
+
+ new DirectPlayProfile
+ {
+ Container = "asf",
+ VideoCodec = "wmv2,wmv3,vc1",
+ AudioCodec = "wmav2,wmapro,wmavoice",
+ Type = DlnaProfileType.Video
+ },
+
+ new DirectPlayProfile
+ {
+ Container = "avi",
+ VideoCodec = "mpeg4,msmpeg4,mjpeg",
+ AudioCodec = "mp3,ac3,eac3,mp2,pcm",
+ Type = DlnaProfileType.Video
+ },
+
+ new DirectPlayProfile
+ {
+ Container = "mp4",
+ AudioCodec = "aac",
+ Type = DlnaProfileType.Audio
+ },
+
+ new DirectPlayProfile
+ {
+ Container = "mp3",
+ AudioCodec = "mp3",
+ Type = DlnaProfileType.Audio
+ },
+
+ new DirectPlayProfile
+ {
+ Container = "jpeg",
+ Type = DlnaProfileType.Photo
+ }
+ };
+
+ CodecProfiles = new[]
+ {
+ new CodecProfile
+ {
+ Type = CodecType.Video,
+ Conditions = new []
+ {
+ new ProfileCondition
+ {
+ Condition = ProfileConditionType.LessThanEqual,
+ Property = ProfileConditionValue.VideoBitDepth,
+ Value = "8",
+ IsRequired = false
+ }
+ }
+ },
+
+ new CodecProfile
+ {
+ Type = CodecType.VideoAudio,
+ Codec = "aac,eac3",
+ Conditions = new []
+ {
+ new ProfileCondition
+ {
+ Condition = ProfileConditionType.LessThanEqual,
+ Property = ProfileConditionValue.AudioChannels,
+ Value = "8"
+ }
+ }
+ },
+
+ new CodecProfile
+ {
+ Type = CodecType.VideoAudio,
+ Codec = "ac3",
+ Conditions = new []
+ {
+ new ProfileCondition
+ {
+ Condition = ProfileConditionType.LessThanEqual,
+ Property = ProfileConditionValue.AudioChannels,
+ Value = "6"
+ }
+ }
+ }
+ };
+
+ }
+ }
+}
diff --git a/MediaBrowser.Dlna/Profiles/Xbox360Profile.cs b/MediaBrowser.Dlna/Profiles/Xbox360Profile.cs
index 3fae85f594..9ece32df54 100644
--- a/MediaBrowser.Dlna/Profiles/Xbox360Profile.cs
+++ b/MediaBrowser.Dlna/Profiles/Xbox360Profile.cs
@@ -1,5 +1,5 @@
-using System.Xml.Serialization;
-using MediaBrowser.Controller.Dlna;
+using MediaBrowser.Model.Dlna;
+using System.Xml.Serialization;
namespace MediaBrowser.Dlna.Profiles
{
diff --git a/MediaBrowser.Dlna/Profiles/XboxOneProfile.cs b/MediaBrowser.Dlna/Profiles/XboxOneProfile.cs
index 59372655c0..0615e65038 100644
--- a/MediaBrowser.Dlna/Profiles/XboxOneProfile.cs
+++ b/MediaBrowser.Dlna/Profiles/XboxOneProfile.cs
@@ -1,5 +1,6 @@
using System.Xml.Serialization;
using MediaBrowser.Controller.Dlna;
+using MediaBrowser.Model.Dlna;
namespace MediaBrowser.Dlna.Profiles
{