浏览代码

update dlna profiles

Luke Pulverenti 10 年之前
父节点
当前提交
1f430baa1d
共有 28 个文件被更改,包括 91 次插入117 次删除
  1. 0 3
      MediaBrowser.Dlna/Profiles/DefaultProfile.cs
  2. 2 4
      MediaBrowser.Dlna/Profiles/Xml/BubbleUPnp.xml
  3. 2 4
      MediaBrowser.Dlna/Profiles/Xml/Default.xml
  4. 2 4
      MediaBrowser.Dlna/Profiles/Xml/Denon AVR.xml
  5. 2 4
      MediaBrowser.Dlna/Profiles/Xml/DirecTV HD-DVR.xml
  6. 2 4
      MediaBrowser.Dlna/Profiles/Xml/Dish Hopper-Joey.xml
  7. 2 4
      MediaBrowser.Dlna/Profiles/Xml/LG Smart TV.xml
  8. 2 4
      MediaBrowser.Dlna/Profiles/Xml/Linksys DMA2100.xml
  9. 2 4
      MediaBrowser.Dlna/Profiles/Xml/MediaMonkey.xml
  10. 1 2
      MediaBrowser.Dlna/Profiles/Xml/Panasonic Viera.xml
  11. 2 4
      MediaBrowser.Dlna/Profiles/Xml/Popcorn Hour.xml
  12. 1 2
      MediaBrowser.Dlna/Profiles/Xml/Samsung Smart TV.xml
  13. 1 2
      MediaBrowser.Dlna/Profiles/Xml/Sony Blu-ray Player 2013.xml
  14. 1 2
      MediaBrowser.Dlna/Profiles/Xml/Sony Blu-ray Player.xml
  15. 1 2
      MediaBrowser.Dlna/Profiles/Xml/Sony Bravia (2010).xml
  16. 1 2
      MediaBrowser.Dlna/Profiles/Xml/Sony Bravia (2011).xml
  17. 1 2
      MediaBrowser.Dlna/Profiles/Xml/Sony Bravia (2012).xml
  18. 1 2
      MediaBrowser.Dlna/Profiles/Xml/Sony Bravia (2013).xml
  19. 2 4
      MediaBrowser.Dlna/Profiles/Xml/Sony PlayStation 3.xml
  20. 2 4
      MediaBrowser.Dlna/Profiles/Xml/Vlc.xml
  21. 2 4
      MediaBrowser.Dlna/Profiles/Xml/WDTV Live.xml
  22. 1 0
      MediaBrowser.Dlna/Profiles/Xml/Xbox 360.xml
  23. 2 4
      MediaBrowser.Dlna/Profiles/Xml/Xbox One.xml
  24. 2 4
      MediaBrowser.Dlna/Profiles/Xml/foobar2000.xml
  25. 21 12
      MediaBrowser.Dlna/Server/DescriptionXmlBuilder.cs
  26. 28 28
      MediaBrowser.Server.Implementations/Photos/PhotoAlbumImageProvider.cs
  27. 3 0
      MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj
  28. 2 2
      SharedVersion.cs

+ 0 - 3
MediaBrowser.Dlna/Profiles/DefaultProfile.cs

@@ -76,9 +76,6 @@ namespace MediaBrowser.Dlna.Profiles
                     Type = DlnaProfileType.Video
                     Type = DlnaProfileType.Video
                 }
                 }
             };
             };
-
-            AddXmlRootAttribute("xmlns", "urn:schemas-upnp-org:device-1-0");
-            AddXmlRootAttribute("xmlns:dlna", "urn:schemas-dlna-org:device-1-0");
         }
         }
 
 
         public void AddXmlRootAttribute(string name, string value)
         public void AddXmlRootAttribute(string name, string value)

+ 2 - 4
MediaBrowser.Dlna/Profiles/Xml/BubbleUPnp.xml

@@ -32,10 +32,8 @@
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
-  <XmlRootAttributes>
-    <XmlAttribute name="xmlns" value="urn:schemas-upnp-org:device-1-0" />
-    <XmlAttribute name="xmlns:dlna" value="urn:schemas-dlna-org:device-1-0" />
-  </XmlRootAttributes>
+  <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
+  <XmlRootAttributes />
   <DirectPlayProfiles>
   <DirectPlayProfiles>
     <DirectPlayProfile container="avi,mpeg,mkv,ts,mp4,mov,m4v,asf,webm,ogg,ogv,iso" type="Video" />
     <DirectPlayProfile container="avi,mpeg,mkv,ts,mp4,mov,m4v,asf,webm,ogg,ogv,iso" type="Video" />
     <DirectPlayProfile container="mp3,flac,asf,off,oga,aac" type="Audio" />
     <DirectPlayProfile container="mp3,flac,asf,off,oga,aac" type="Audio" />

+ 2 - 4
MediaBrowser.Dlna/Profiles/Xml/Default.xml

@@ -26,10 +26,8 @@
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
-  <XmlRootAttributes>
-    <XmlAttribute name="xmlns" value="urn:schemas-upnp-org:device-1-0" />
-    <XmlAttribute name="xmlns:dlna" value="urn:schemas-dlna-org:device-1-0" />
-  </XmlRootAttributes>
+  <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
+  <XmlRootAttributes />
   <DirectPlayProfiles>
   <DirectPlayProfiles>
     <DirectPlayProfile container="mp3,wma" type="Audio" />
     <DirectPlayProfile container="mp3,wma" type="Audio" />
     <DirectPlayProfile container="avi,mp4" type="Video" />
     <DirectPlayProfile container="avi,mp4" type="Video" />

+ 2 - 4
MediaBrowser.Dlna/Profiles/Xml/Denon AVR.xml

@@ -31,10 +31,8 @@
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
-  <XmlRootAttributes>
-    <XmlAttribute name="xmlns" value="urn:schemas-upnp-org:device-1-0" />
-    <XmlAttribute name="xmlns:dlna" value="urn:schemas-dlna-org:device-1-0" />
-  </XmlRootAttributes>
+  <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
+  <XmlRootAttributes />
   <DirectPlayProfiles>
   <DirectPlayProfiles>
     <DirectPlayProfile container="mp3,flac,m4a,wma" type="Audio" />
     <DirectPlayProfile container="mp3,flac,m4a,wma" type="Audio" />
   </DirectPlayProfiles>
   </DirectPlayProfiles>

+ 2 - 4
MediaBrowser.Dlna/Profiles/Xml/DirecTV HD-DVR.xml

@@ -32,10 +32,8 @@
   <RequiresPlainVideoItems>true</RequiresPlainVideoItems>
   <RequiresPlainVideoItems>true</RequiresPlainVideoItems>
   <RequiresPlainFolders>true</RequiresPlainFolders>
   <RequiresPlainFolders>true</RequiresPlainFolders>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
-  <XmlRootAttributes>
-    <XmlAttribute name="xmlns" value="urn:schemas-upnp-org:device-1-0" />
-    <XmlAttribute name="xmlns:dlna" value="urn:schemas-dlna-org:device-1-0" />
-  </XmlRootAttributes>
+  <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
+  <XmlRootAttributes />
   <DirectPlayProfiles>
   <DirectPlayProfiles>
     <DirectPlayProfile container="mpeg" audioCodec="mp2" videoCodec="mpeg2video" type="Video" />
     <DirectPlayProfile container="mpeg" audioCodec="mp2" videoCodec="mpeg2video" type="Video" />
     <DirectPlayProfile container="jpeg,jpg" type="Photo" />
     <DirectPlayProfile container="jpeg,jpg" type="Photo" />

+ 2 - 4
MediaBrowser.Dlna/Profiles/Xml/Dish Hopper-Joey.xml

@@ -33,10 +33,8 @@
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
-  <XmlRootAttributes>
-    <XmlAttribute name="xmlns" value="urn:schemas-upnp-org:device-1-0" />
-    <XmlAttribute name="xmlns:dlna" value="urn:schemas-dlna-org:device-1-0" />
-  </XmlRootAttributes>
+  <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
+  <XmlRootAttributes />
   <DirectPlayProfiles>
   <DirectPlayProfiles>
     <DirectPlayProfile container="mp4,mkv,mpeg,ts" audioCodec="mp3,ac3,aac,he-aac,pcm" videoCodec="h264,mpeg2video" type="Video" />
     <DirectPlayProfile container="mp4,mkv,mpeg,ts" audioCodec="mp3,ac3,aac,he-aac,pcm" videoCodec="h264,mpeg2video" type="Video" />
     <DirectPlayProfile container="mp3" audioCodec="mp3" type="Audio" />
     <DirectPlayProfile container="mp3" audioCodec="mp3" type="Audio" />

+ 2 - 4
MediaBrowser.Dlna/Profiles/Xml/LG Smart TV.xml

@@ -32,10 +32,8 @@
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
-  <XmlRootAttributes>
-    <XmlAttribute name="xmlns" value="urn:schemas-upnp-org:device-1-0" />
-    <XmlAttribute name="xmlns:dlna" value="urn:schemas-dlna-org:device-1-0" />
-  </XmlRootAttributes>
+  <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
+  <XmlRootAttributes />
   <DirectPlayProfiles>
   <DirectPlayProfiles>
     <DirectPlayProfile container="ts" audioCodec="aac,ac3,mp3" videoCodec="h264" type="Video" />
     <DirectPlayProfile container="ts" audioCodec="aac,ac3,mp3" videoCodec="h264" type="Video" />
     <DirectPlayProfile container="mkv" audioCodec="aac,ac3,mp3" videoCodec="h264" type="Video" />
     <DirectPlayProfile container="mkv" audioCodec="aac,ac3,mp3" videoCodec="h264" type="Video" />

+ 2 - 4
MediaBrowser.Dlna/Profiles/Xml/Linksys DMA2100.xml

@@ -30,10 +30,8 @@
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
-  <XmlRootAttributes>
-    <XmlAttribute name="xmlns" value="urn:schemas-upnp-org:device-1-0" />
-    <XmlAttribute name="xmlns:dlna" value="urn:schemas-dlna-org:device-1-0" />
-  </XmlRootAttributes>
+  <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
+  <XmlRootAttributes />
   <DirectPlayProfiles>
   <DirectPlayProfiles>
     <DirectPlayProfile container="mp3,flac,m4a,wma" type="Audio" />
     <DirectPlayProfile container="mp3,flac,m4a,wma" type="Audio" />
     <DirectPlayProfile container="avi,mp4,mkv,ts" type="Video" />
     <DirectPlayProfile container="avi,mp4,mkv,ts" type="Video" />

+ 2 - 4
MediaBrowser.Dlna/Profiles/Xml/MediaMonkey.xml

@@ -32,10 +32,8 @@
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
-  <XmlRootAttributes>
-    <XmlAttribute name="xmlns" value="urn:schemas-upnp-org:device-1-0" />
-    <XmlAttribute name="xmlns:dlna" value="urn:schemas-dlna-org:device-1-0" />
-  </XmlRootAttributes>
+  <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
+  <XmlRootAttributes />
   <DirectPlayProfiles>
   <DirectPlayProfiles>
     <DirectPlayProfile container="mp3" audioCodec="mp2,mp3" type="Audio" />
     <DirectPlayProfile container="mp3" audioCodec="mp2,mp3" type="Audio" />
     <DirectPlayProfile container="mp4" audioCodec="mp4" type="Audio" />
     <DirectPlayProfile container="mp4" audioCodec="mp4" type="Audio" />

+ 1 - 2
MediaBrowser.Dlna/Profiles/Xml/Panasonic Viera.xml

@@ -33,9 +33,8 @@
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
+  <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
   <XmlRootAttributes>
   <XmlRootAttributes>
-    <XmlAttribute name="xmlns" value="urn:schemas-upnp-org:device-1-0" />
-    <XmlAttribute name="xmlns:dlna" value="urn:schemas-dlna-org:device-1-0" />
     <XmlAttribute name="xmlns:pv" value="http://www.pv.com/pvns/" />
     <XmlAttribute name="xmlns:pv" value="http://www.pv.com/pvns/" />
   </XmlRootAttributes>
   </XmlRootAttributes>
   <DirectPlayProfiles>
   <DirectPlayProfiles>

+ 2 - 4
MediaBrowser.Dlna/Profiles/Xml/Popcorn Hour.xml

@@ -26,10 +26,8 @@
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
-  <XmlRootAttributes>
-    <XmlAttribute name="xmlns" value="urn:schemas-upnp-org:device-1-0" />
-    <XmlAttribute name="xmlns:dlna" value="urn:schemas-dlna-org:device-1-0" />
-  </XmlRootAttributes>
+  <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
+  <XmlRootAttributes />
   <DirectPlayProfiles>
   <DirectPlayProfiles>
     <DirectPlayProfile container="mp4,mov" audioCodec="aac" videoCodec="h264,mpeg4" type="Video" />
     <DirectPlayProfile container="mp4,mov" audioCodec="aac" videoCodec="h264,mpeg4" type="Video" />
     <DirectPlayProfile container="ts" audioCodec="aac,ac3,eac3,mp3,mp2,pcm" videoCodec="h264" type="Video" />
     <DirectPlayProfile container="ts" audioCodec="aac,ac3,eac3,mp3,mp2,pcm" videoCodec="h264" type="Video" />

+ 1 - 2
MediaBrowser.Dlna/Profiles/Xml/Samsung Smart TV.xml

@@ -32,9 +32,8 @@
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
+  <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
   <XmlRootAttributes>
   <XmlRootAttributes>
-    <XmlAttribute name="xmlns" value="urn:schemas-upnp-org:device-1-0" />
-    <XmlAttribute name="xmlns:dlna" value="urn:schemas-dlna-org:device-1-0" />
     <XmlAttribute name="xmlns:sec" value="http://www.sec.co.kr/" />
     <XmlAttribute name="xmlns:sec" value="http://www.sec.co.kr/" />
   </XmlRootAttributes>
   </XmlRootAttributes>
   <DirectPlayProfiles>
   <DirectPlayProfiles>

+ 1 - 2
MediaBrowser.Dlna/Profiles/Xml/Sony Blu-ray Player 2013.xml

@@ -32,9 +32,8 @@
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
+  <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
   <XmlRootAttributes>
   <XmlRootAttributes>
-    <XmlAttribute name="xmlns" value="urn:schemas-upnp-org:device-1-0" />
-    <XmlAttribute name="xmlns:dlna" value="urn:schemas-dlna-org:device-1-0" />
     <XmlAttribute name="xmlns:av" value="urn:schemas-sony-com:av" />
     <XmlAttribute name="xmlns:av" value="urn:schemas-sony-com:av" />
   </XmlRootAttributes>
   </XmlRootAttributes>
   <DirectPlayProfiles>
   <DirectPlayProfiles>

+ 1 - 2
MediaBrowser.Dlna/Profiles/Xml/Sony Blu-ray Player.xml

@@ -34,9 +34,8 @@
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
+  <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
   <XmlRootAttributes>
   <XmlRootAttributes>
-    <XmlAttribute name="xmlns" value="urn:schemas-upnp-org:device-1-0" />
-    <XmlAttribute name="xmlns:dlna" value="urn:schemas-dlna-org:device-1-0" />
     <XmlAttribute name="xmlns:av" value="urn:schemas-sony-com:av" />
     <XmlAttribute name="xmlns:av" value="urn:schemas-sony-com:av" />
   </XmlRootAttributes>
   </XmlRootAttributes>
   <DirectPlayProfiles>
   <DirectPlayProfiles>

+ 1 - 2
MediaBrowser.Dlna/Profiles/Xml/Sony Bravia (2010).xml

@@ -34,9 +34,8 @@
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
+  <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
   <XmlRootAttributes>
   <XmlRootAttributes>
-    <XmlAttribute name="xmlns" value="urn:schemas-upnp-org:device-1-0" />
-    <XmlAttribute name="xmlns:dlna" value="urn:schemas-dlna-org:device-1-0" />
     <XmlAttribute name="xmlns:av" value="urn:schemas-sony-com:av" />
     <XmlAttribute name="xmlns:av" value="urn:schemas-sony-com:av" />
   </XmlRootAttributes>
   </XmlRootAttributes>
   <DirectPlayProfiles>
   <DirectPlayProfiles>

+ 1 - 2
MediaBrowser.Dlna/Profiles/Xml/Sony Bravia (2011).xml

@@ -34,9 +34,8 @@
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
+  <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
   <XmlRootAttributes>
   <XmlRootAttributes>
-    <XmlAttribute name="xmlns" value="urn:schemas-upnp-org:device-1-0" />
-    <XmlAttribute name="xmlns:dlna" value="urn:schemas-dlna-org:device-1-0" />
     <XmlAttribute name="xmlns:av" value="urn:schemas-sony-com:av" />
     <XmlAttribute name="xmlns:av" value="urn:schemas-sony-com:av" />
   </XmlRootAttributes>
   </XmlRootAttributes>
   <DirectPlayProfiles>
   <DirectPlayProfiles>

+ 1 - 2
MediaBrowser.Dlna/Profiles/Xml/Sony Bravia (2012).xml

@@ -34,9 +34,8 @@
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
+  <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
   <XmlRootAttributes>
   <XmlRootAttributes>
-    <XmlAttribute name="xmlns" value="urn:schemas-upnp-org:device-1-0" />
-    <XmlAttribute name="xmlns:dlna" value="urn:schemas-dlna-org:device-1-0" />
     <XmlAttribute name="xmlns:av" value="urn:schemas-sony-com:av" />
     <XmlAttribute name="xmlns:av" value="urn:schemas-sony-com:av" />
   </XmlRootAttributes>
   </XmlRootAttributes>
   <DirectPlayProfiles>
   <DirectPlayProfiles>

+ 1 - 2
MediaBrowser.Dlna/Profiles/Xml/Sony Bravia (2013).xml

@@ -34,9 +34,8 @@
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
+  <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
   <XmlRootAttributes>
   <XmlRootAttributes>
-    <XmlAttribute name="xmlns" value="urn:schemas-upnp-org:device-1-0" />
-    <XmlAttribute name="xmlns:dlna" value="urn:schemas-dlna-org:device-1-0" />
     <XmlAttribute name="xmlns:av" value="urn:schemas-sony-com:av" />
     <XmlAttribute name="xmlns:av" value="urn:schemas-sony-com:av" />
   </XmlRootAttributes>
   </XmlRootAttributes>
   <DirectPlayProfiles>
   <DirectPlayProfiles>

+ 2 - 4
MediaBrowser.Dlna/Profiles/Xml/Sony PlayStation 3.xml

@@ -34,10 +34,8 @@
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
-  <XmlRootAttributes>
-    <XmlAttribute name="xmlns" value="urn:schemas-upnp-org:device-1-0" />
-    <XmlAttribute name="xmlns:dlna" value="urn:schemas-dlna-org:device-1-0" />
-  </XmlRootAttributes>
+  <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
+  <XmlRootAttributes />
   <DirectPlayProfiles>
   <DirectPlayProfiles>
     <DirectPlayProfile container="avi" audioCodec="mp2,mp3" videoCodec="mpeg4" type="Video" />
     <DirectPlayProfile container="avi" audioCodec="mp2,mp3" videoCodec="mpeg4" type="Video" />
     <DirectPlayProfile container="ts" audioCodec="ac3,mp2,mp3,aac" videoCodec="mpeg1video,mpeg2video,h264" type="Video" />
     <DirectPlayProfile container="ts" audioCodec="ac3,mp2,mp3,aac" videoCodec="mpeg1video,mpeg2video,h264" type="Video" />

+ 2 - 4
MediaBrowser.Dlna/Profiles/Xml/Vlc.xml

@@ -32,10 +32,8 @@
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
-  <XmlRootAttributes>
-    <XmlAttribute name="xmlns" value="urn:schemas-upnp-org:device-1-0" />
-    <XmlAttribute name="xmlns:dlna" value="urn:schemas-dlna-org:device-1-0" />
-  </XmlRootAttributes>
+  <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
+  <XmlRootAttributes />
   <DirectPlayProfiles>
   <DirectPlayProfiles>
     <DirectPlayProfile container="avi,mpeg,mkv,ts,mp4,mov,m4v,asf,webm,ogg,ogv,iso" type="Video" />
     <DirectPlayProfile container="avi,mpeg,mkv,ts,mp4,mov,m4v,asf,webm,ogg,ogv,iso" type="Video" />
     <DirectPlayProfile container="mp3,flac,asf,off,oga,aac" type="Audio" />
     <DirectPlayProfile container="mp3,flac,asf,off,oga,aac" type="Audio" />

+ 2 - 4
MediaBrowser.Dlna/Profiles/Xml/WDTV Live.xml

@@ -33,10 +33,8 @@
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
-  <XmlRootAttributes>
-    <XmlAttribute name="xmlns" value="urn:schemas-upnp-org:device-1-0" />
-    <XmlAttribute name="xmlns:dlna" value="urn:schemas-dlna-org:device-1-0" />
-  </XmlRootAttributes>
+  <IgnoreTranscodeByteRangeRequests>true</IgnoreTranscodeByteRangeRequests>
+  <XmlRootAttributes />
   <DirectPlayProfiles>
   <DirectPlayProfiles>
     <DirectPlayProfile container="avi" audioCodec="ac3,dca,mp2,mp3,pcm" videoCodec="mpeg1video,mpeg2video,mpeg4,h264,vc1" type="Video" />
     <DirectPlayProfile container="avi" audioCodec="ac3,dca,mp2,mp3,pcm" videoCodec="mpeg1video,mpeg2video,mpeg4,h264,vc1" type="Video" />
     <DirectPlayProfile container="mpeg" audioCodec="ac3,dca,mp2,mp3,pcm" videoCodec="mpeg1video,mpeg2video" type="Video" />
     <DirectPlayProfile container="mpeg" audioCodec="ac3,dca,mp2,mp3,pcm" videoCodec="mpeg1video,mpeg2video" type="Video" />

+ 1 - 0
MediaBrowser.Dlna/Profiles/Xml/Xbox 360.xml

@@ -32,6 +32,7 @@
   <RequiresPlainVideoItems>true</RequiresPlainVideoItems>
   <RequiresPlainVideoItems>true</RequiresPlainVideoItems>
   <RequiresPlainFolders>true</RequiresPlainFolders>
   <RequiresPlainFolders>true</RequiresPlainFolders>
   <EnableMSMediaReceiverRegistrar>true</EnableMSMediaReceiverRegistrar>
   <EnableMSMediaReceiverRegistrar>true</EnableMSMediaReceiverRegistrar>
+  <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
   <XmlRootAttributes>
   <XmlRootAttributes>
     <XmlAttribute name="xmlns" value="urn:schemas-upnp-org:device-1-0" />
     <XmlAttribute name="xmlns" value="urn:schemas-upnp-org:device-1-0" />
   </XmlRootAttributes>
   </XmlRootAttributes>

+ 2 - 4
MediaBrowser.Dlna/Profiles/Xml/Xbox One.xml

@@ -33,10 +33,8 @@
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
-  <XmlRootAttributes>
-    <XmlAttribute name="xmlns" value="urn:schemas-upnp-org:device-1-0" />
-    <XmlAttribute name="xmlns:dlna" value="urn:schemas-dlna-org:device-1-0" />
-  </XmlRootAttributes>
+  <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
+  <XmlRootAttributes />
   <DirectPlayProfiles>
   <DirectPlayProfiles>
     <DirectPlayProfile container="ts" audioCodec="ac3" videoCodec="h264" type="Video" />
     <DirectPlayProfile container="ts" audioCodec="ac3" videoCodec="h264" type="Video" />
     <DirectPlayProfile container="avi" audioCodec="ac3,mp3" videoCodec="mpeg4" type="Video" />
     <DirectPlayProfile container="avi" audioCodec="ac3,mp3" videoCodec="mpeg4" type="Video" />

+ 2 - 4
MediaBrowser.Dlna/Profiles/Xml/foobar2000.xml

@@ -32,10 +32,8 @@
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <RequiresPlainFolders>false</RequiresPlainFolders>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
   <EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
-  <XmlRootAttributes>
-    <XmlAttribute name="xmlns" value="urn:schemas-upnp-org:device-1-0" />
-    <XmlAttribute name="xmlns:dlna" value="urn:schemas-dlna-org:device-1-0" />
-  </XmlRootAttributes>
+  <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
+  <XmlRootAttributes />
   <DirectPlayProfiles>
   <DirectPlayProfiles>
     <DirectPlayProfile container="mp3" audioCodec="mp2,mp3" type="Audio" />
     <DirectPlayProfile container="mp3" audioCodec="mp2,mp3" type="Audio" />
     <DirectPlayProfile container="mp4" audioCodec="mp4" type="Audio" />
     <DirectPlayProfile container="mp4" audioCodec="mp4" type="Audio" />

+ 21 - 12
MediaBrowser.Dlna/Server/DescriptionXmlBuilder.cs

@@ -51,10 +51,25 @@ namespace MediaBrowser.Dlna.Server
             builder.Append("<?xml version=\"1.0\"?>");
             builder.Append("<?xml version=\"1.0\"?>");
 
 
             builder.Append("<root");
             builder.Append("<root");
-            foreach (var att in _profile.XmlRootAttributes)
+
+            var attributes = _profile.XmlRootAttributes.ToList();
+
+            attributes.Insert(0, new XmlAttribute
+            {
+                Name = "xmlns:dlna",
+                Value = "urn:schemas-dlna-org:device-1-0"
+            });
+            attributes.Insert(0, new XmlAttribute
+            {
+                Name = "xmlns",
+                Value = "urn:schemas-upnp-org:device-1-0"
+            });
+
+            foreach (var att in attributes)
             {
             {
                 builder.AppendFormat(" {0}=\"{1}\"", att.Name, att.Value);
                 builder.AppendFormat(" {0}=\"{1}\"", att.Name, att.Value);
             }
             }
+
             builder.Append(">");
             builder.Append(">");
 
 
             builder.Append("<specVersion>");
             builder.Append("<specVersion>");
@@ -74,7 +89,7 @@ namespace MediaBrowser.Dlna.Server
             builder.Append("<device>");
             builder.Append("<device>");
             AppendDeviceProperties(builder);
             AppendDeviceProperties(builder);
 
 
-            //AppendIconList(builder);
+            AppendIconList(builder);
             AppendServiceList(builder);
             AppendServiceList(builder);
             builder.Append("</device>");
             builder.Append("</device>");
         }
         }
@@ -83,25 +98,19 @@ namespace MediaBrowser.Dlna.Server
         {
         {
             builder.Append("<UDN>uuid:" + SecurityElement.Escape(_serverUdn) + "</UDN>");
             builder.Append("<UDN>uuid:" + SecurityElement.Escape(_serverUdn) + "</UDN>");
 
 
-            if (!string.IsNullOrWhiteSpace(_profile.XDlnaCap))
-            {
-                builder.Append("<dlna:X_DLNACAP>" + SecurityElement.Escape(_profile.XDlnaCap ?? string.Empty) + "</dlna:X_DLNACAP>");
-            }
+            builder.Append("<dlna:X_DLNACAP>" + SecurityElement.Escape(_profile.XDlnaCap ?? string.Empty) + "</dlna:X_DLNACAP>");
 
 
             builder.Append("<dlna:X_DLNADOC xmlns:dlna=\"urn:schemas-dlna-org:device-1-0\">M-DMS-1.50</dlna:X_DLNADOC>");
             builder.Append("<dlna:X_DLNADOC xmlns:dlna=\"urn:schemas-dlna-org:device-1-0\">M-DMS-1.50</dlna:X_DLNADOC>");
             builder.Append("<dlna:X_DLNADOC xmlns:dlna=\"urn:schemas-dlna-org:device-1-0\">" + SecurityElement.Escape(_profile.XDlnaDoc ?? string.Empty) + "</dlna:X_DLNADOC>");
             builder.Append("<dlna:X_DLNADOC xmlns:dlna=\"urn:schemas-dlna-org:device-1-0\">" + SecurityElement.Escape(_profile.XDlnaDoc ?? string.Empty) + "</dlna:X_DLNADOC>");
-            
+
             builder.Append("<friendlyName>" + SecurityElement.Escape(GetFriendlyName()) + "</friendlyName>");
             builder.Append("<friendlyName>" + SecurityElement.Escape(GetFriendlyName()) + "</friendlyName>");
             builder.Append("<deviceType>urn:schemas-upnp-org:device:MediaServer:1</deviceType>");
             builder.Append("<deviceType>urn:schemas-upnp-org:device:MediaServer:1</deviceType>");
             builder.Append("<manufacturer>" + SecurityElement.Escape(_profile.Manufacturer ?? string.Empty) + "</manufacturer>");
             builder.Append("<manufacturer>" + SecurityElement.Escape(_profile.Manufacturer ?? string.Empty) + "</manufacturer>");
             builder.Append("<manufacturerURL>" + SecurityElement.Escape(_profile.ManufacturerUrl ?? string.Empty) + "</manufacturerURL>");
             builder.Append("<manufacturerURL>" + SecurityElement.Escape(_profile.ManufacturerUrl ?? string.Empty) + "</manufacturerURL>");
             builder.Append("<modelName>" + SecurityElement.Escape(_profile.ModelName ?? string.Empty) + "</modelName>");
             builder.Append("<modelName>" + SecurityElement.Escape(_profile.ModelName ?? string.Empty) + "</modelName>");
 
 
-            if (!string.IsNullOrWhiteSpace(_profile.ModelDescription))
-            {
-                builder.Append("<modelDescription>" + SecurityElement.Escape(_profile.ModelDescription ?? string.Empty) + "</modelDescription>");
-            }
-            
+            builder.Append("<modelDescription>" + SecurityElement.Escape(_profile.ModelDescription ?? string.Empty) + "</modelDescription>");
+
             builder.Append("<modelNumber>" + SecurityElement.Escape(_profile.ModelNumber ?? string.Empty) + "</modelNumber>");
             builder.Append("<modelNumber>" + SecurityElement.Escape(_profile.ModelNumber ?? string.Empty) + "</modelNumber>");
             builder.Append("<modelURL>" + SecurityElement.Escape(_profile.ModelUrl ?? string.Empty) + "</modelURL>");
             builder.Append("<modelURL>" + SecurityElement.Escape(_profile.ModelUrl ?? string.Empty) + "</modelURL>");
 
 

+ 28 - 28
MediaBrowser.Server.Implementations/Photos/PhotoAlbumImageProvider.cs

@@ -8,37 +8,37 @@ using System.Threading.Tasks;
 
 
 namespace MediaBrowser.Server.Implementations.Photos
 namespace MediaBrowser.Server.Implementations.Photos
 {
 {
-    //public class PhotoAlbumImageProvider : IDynamicImageProvider
-    //{
-    //    public IEnumerable<ImageType> GetSupportedImages(IHasImages item)
-    //    {
-    //        return new List<ImageType> { ImageType.Primary };
-    //    }
+    public class PhotoAlbumImageProvider : IDynamicImageProvider
+    {
+        public IEnumerable<ImageType> GetSupportedImages(IHasImages item)
+        {
+            return new List<ImageType> { ImageType.Primary };
+        }
 
 
-    //    public Task<DynamicImageResponse> GetImage(IHasImages item, ImageType type, CancellationToken cancellationToken)
-    //    {
-    //        var album = (PhotoAlbum)item;
+        public Task<DynamicImageResponse> GetImage(IHasImages item, ImageType type, CancellationToken cancellationToken)
+        {
+            var album = (PhotoAlbum)item;
 
 
-    //        var image = album.Children
-    //            .OfType<Photo>()
-    //            .Select(i => i.GetImagePath(type))
-    //            .FirstOrDefault(i => !string.IsNullOrEmpty(i));
+            var image = album.Children
+                .OfType<Photo>()
+                .Select(i => i.GetImagePath(type))
+                .FirstOrDefault(i => !string.IsNullOrEmpty(i));
 
 
-    //        return Task.FromResult(new DynamicImageResponse
-    //        {
-    //            Path = image,
-    //            HasImage = !string.IsNullOrEmpty(image)
-    //        });
-    //    }
+            return Task.FromResult(new DynamicImageResponse
+            {
+                Path = image,
+                HasImage = !string.IsNullOrEmpty(image)
+            });
+        }
 
 
-    //    public string Name
-    //    {
-    //        get { return "Image Extractor"; }
-    //    }
+        public string Name
+        {
+            get { return "Image Extractor"; }
+        }
 
 
-    //    public bool Supports(IHasImages item)
-    //    {
-    //        return item is PhotoAlbum;
-    //    }
-    //}
+        public bool Supports(IHasImages item)
+        {
+            return item is PhotoAlbum;
+        }
+    }
 }
 }

+ 3 - 0
MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj

@@ -1665,6 +1665,9 @@
     <Content Include="dashboard-ui\thirdparty\jstree3.0.8\themes\default\throbber.gif">
     <Content Include="dashboard-ui\thirdparty\jstree3.0.8\themes\default\throbber.gif">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
     </Content>
     </Content>
+    <Content Include="dashboard-ui\thirdparty\masonry.pkgd.min.js">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </Content>
     <Content Include="dashboard-ui\thirdparty\require.js">
     <Content Include="dashboard-ui\thirdparty\require.js">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
     </Content>
     </Content>

+ 2 - 2
SharedVersion.cs

@@ -1,4 +1,4 @@
 using System.Reflection;
 using System.Reflection;
 
 
-//[assembly: AssemblyVersion("3.0.*")]
-[assembly: AssemblyVersion("3.0.5607.1")]
+[assembly: AssemblyVersion("3.0.*")]
+//[assembly: AssemblyVersion("3.0.5607.1")]