aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--MediaBrowser.Dlna/DlnaManager.cs1
-rw-r--r--MediaBrowser.Dlna/MediaBrowser.Dlna.csproj5
-rw-r--r--MediaBrowser.Dlna/Profiles/Foobar2000Profile.cs44
-rw-r--r--MediaBrowser.Dlna/Profiles/MediaMonkeyProfile.cs75
-rw-r--r--MediaBrowser.Dlna/Profiles/Xml/MediaMonkey.xml47
-rw-r--r--MediaBrowser.Dlna/Profiles/Xml/foobar2000.xml8
6 files changed, 177 insertions, 3 deletions
diff --git a/MediaBrowser.Dlna/DlnaManager.cs b/MediaBrowser.Dlna/DlnaManager.cs
index 6f7ae434e..21476c5d9 100644
--- a/MediaBrowser.Dlna/DlnaManager.cs
+++ b/MediaBrowser.Dlna/DlnaManager.cs
@@ -74,6 +74,7 @@ namespace MediaBrowser.Dlna
new LinksysDMA2100Profile(),
new LgTvProfile(),
new Foobar2000Profile(),
+ new MediaMonkeyProfile(),
new DefaultProfile()
};
diff --git a/MediaBrowser.Dlna/MediaBrowser.Dlna.csproj b/MediaBrowser.Dlna/MediaBrowser.Dlna.csproj
index f5e9d44d8..10da21e52 100644
--- a/MediaBrowser.Dlna/MediaBrowser.Dlna.csproj
+++ b/MediaBrowser.Dlna/MediaBrowser.Dlna.csproj
@@ -80,6 +80,7 @@
<Compile Include="PlayTo\TRANSPORTSTATE.cs" />
<Compile Include="PlayTo\uParserObject.cs" />
<Compile Include="Profiles\Foobar2000Profile.cs" />
+ <Compile Include="Profiles\MediaMonkeyProfile.cs" />
<Compile Include="Profiles\Windows81Profile.cs" />
<Compile Include="Profiles\WindowsMediaCenterProfile.cs" />
<Compile Include="Profiles\WindowsPhoneProfile.cs" />
@@ -167,7 +168,9 @@
<EmbeddedResource Include="Images\logo48.jpg" />
<EmbeddedResource Include="Images\logo48.png" />
</ItemGroup>
- <ItemGroup />
+ <ItemGroup>
+ <EmbeddedResource Include="Profiles\Xml\MediaMonkey.xml" />
+ </ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
diff --git a/MediaBrowser.Dlna/Profiles/Foobar2000Profile.cs b/MediaBrowser.Dlna/Profiles/Foobar2000Profile.cs
index 3c94c5671..45cbbef6c 100644
--- a/MediaBrowser.Dlna/Profiles/Foobar2000Profile.cs
+++ b/MediaBrowser.Dlna/Profiles/Foobar2000Profile.cs
@@ -26,6 +26,50 @@ namespace MediaBrowser.Dlna.Profiles
}
}
};
+
+ DirectPlayProfiles = new[]
+ {
+ new DirectPlayProfile
+ {
+ Container = "mp3",
+ AudioCodec = "mp2,mp3",
+ Type = DlnaProfileType.Audio
+ },
+
+ new DirectPlayProfile
+ {
+ Container = "mp4",
+ AudioCodec = "mp4",
+ Type = DlnaProfileType.Audio
+ },
+
+ new DirectPlayProfile
+ {
+ Container = "aac,wav",
+ Type = DlnaProfileType.Audio
+ },
+
+ new DirectPlayProfile
+ {
+ Container = "flac",
+ AudioCodec = "flac",
+ Type = DlnaProfileType.Audio
+ },
+
+ new DirectPlayProfile
+ {
+ Container = "asf",
+ AudioCodec = "wmav2,wmapro,wmavoice",
+ Type = DlnaProfileType.Audio
+ },
+
+ new DirectPlayProfile
+ {
+ Container = "ogg",
+ AudioCodec = "vorbis",
+ Type = DlnaProfileType.Audio
+ }
+ };
}
}
}
diff --git a/MediaBrowser.Dlna/Profiles/MediaMonkeyProfile.cs b/MediaBrowser.Dlna/Profiles/MediaMonkeyProfile.cs
new file mode 100644
index 000000000..7163252db
--- /dev/null
+++ b/MediaBrowser.Dlna/Profiles/MediaMonkeyProfile.cs
@@ -0,0 +1,75 @@
+using MediaBrowser.Model.Dlna;
+using System.Xml.Serialization;
+
+namespace MediaBrowser.Dlna.Profiles
+{
+ [XmlRoot("Profile")]
+ public class MediaMonkeyProfile : DefaultProfile
+ {
+ public MediaMonkeyProfile()
+ {
+ Name = "MediaMonkey";
+
+ SupportedMediaTypes = "Audio";
+
+ Identification = new DeviceIdentification
+ {
+ FriendlyName = @"MediaMonkey",
+
+ Headers = new[]
+ {
+ new HttpHeaderInfo
+ {
+ Name = "User-Agent",
+ Value = "MediaMonkey",
+ Match = HeaderMatchType.Substring
+ }
+ }
+ };
+
+ DirectPlayProfiles = new[]
+ {
+ new DirectPlayProfile
+ {
+ Container = "mp3",
+ AudioCodec = "mp2,mp3",
+ Type = DlnaProfileType.Audio
+ },
+
+ new DirectPlayProfile
+ {
+ Container = "mp4",
+ AudioCodec = "mp4",
+ Type = DlnaProfileType.Audio
+ },
+
+ new DirectPlayProfile
+ {
+ Container = "aac,wav",
+ Type = DlnaProfileType.Audio
+ },
+
+ new DirectPlayProfile
+ {
+ Container = "flac",
+ AudioCodec = "flac",
+ Type = DlnaProfileType.Audio
+ },
+
+ new DirectPlayProfile
+ {
+ Container = "asf",
+ AudioCodec = "wmav2,wmapro,wmavoice",
+ Type = DlnaProfileType.Audio
+ },
+
+ new DirectPlayProfile
+ {
+ Container = "ogg",
+ AudioCodec = "vorbis",
+ Type = DlnaProfileType.Audio
+ }
+ };
+ }
+ }
+}
diff --git a/MediaBrowser.Dlna/Profiles/Xml/MediaMonkey.xml b/MediaBrowser.Dlna/Profiles/Xml/MediaMonkey.xml
new file mode 100644
index 000000000..0315fc5ec
--- /dev/null
+++ b/MediaBrowser.Dlna/Profiles/Xml/MediaMonkey.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <Name>MediaMonkey</Name>
+ <Identification>
+ <FriendlyName>MediaMonkey</FriendlyName>
+ <Headers>
+ <HttpHeaderInfo name="User-Agent" value="MediaMonkey" match="Substring" />
+ </Headers>
+ </Identification>
+ <FriendlyName>Media Browser</FriendlyName>
+ <Manufacturer>Media Browser</Manufacturer>
+ <ManufacturerUrl>http://mediabrowser.tv/</ManufacturerUrl>
+ <ModelName>Media Browser</ModelName>
+ <ModelDescription>Media Browser</ModelDescription>
+ <ModelNumber>Media Browser</ModelNumber>
+ <ModelUrl>http://mediabrowser.tv/</ModelUrl>
+ <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
+ <EnableAlbumArtInDidl>false</EnableAlbumArtInDidl>
+ <SupportedMediaTypes>Audio</SupportedMediaTypes>
+ <AlbumArtPn>JPEG_SM</AlbumArtPn>
+ <MaxAlbumArtWidth>512</MaxAlbumArtWidth>
+ <MaxAlbumArtHeight>512</MaxAlbumArtHeight>
+ <MaxIconWidth xsi:nil="true" />
+ <MaxIconHeight xsi:nil="true" />
+ <MaxBitrate xsi:nil="true" />
+ <XDlnaDoc>DMS-1.50</XDlnaDoc>
+ <ProtocolInfo>DLNA</ProtocolInfo>
+ <TimelineOffsetSeconds>0</TimelineOffsetSeconds>
+ <RequiresPlainVideoItems>false</RequiresPlainVideoItems>
+ <RequiresPlainFolders>false</RequiresPlainFolders>
+ <XmlRootAttributes />
+ <DirectPlayProfiles>
+ <DirectPlayProfile container="mp3" audioCodec="mp2,mp3" type="Audio" />
+ <DirectPlayProfile container="mp4" audioCodec="mp4" type="Audio" />
+ <DirectPlayProfile container="aac,wav" type="Audio" />
+ <DirectPlayProfile container="flac" audioCodec="flac" type="Audio" />
+ <DirectPlayProfile container="asf" audioCodec="wmav2,wmapro,wmavoice" type="Audio" />
+ <DirectPlayProfile container="ogg" audioCodec="vorbis" type="Audio" />
+ </DirectPlayProfiles>
+ <TranscodingProfiles>
+ <TranscodingProfile container="mp3" type="Audio" audioCodec="mp3" estimateContentLength="false" enableMpegtsM2TsMode="false" transcodeSeekInfo="Auto" />
+ <TranscodingProfile container="ts" type="Video" videoCodec="h264" audioCodec="aac" estimateContentLength="false" enableMpegtsM2TsMode="false" transcodeSeekInfo="Auto" videoProfile="baseline" />
+ </TranscodingProfiles>
+ <ContainerProfiles />
+ <CodecProfiles />
+ <ResponseProfiles />
+</Profile> \ No newline at end of file
diff --git a/MediaBrowser.Dlna/Profiles/Xml/foobar2000.xml b/MediaBrowser.Dlna/Profiles/Xml/foobar2000.xml
index 1d1b2375e..19a6db00e 100644
--- a/MediaBrowser.Dlna/Profiles/Xml/foobar2000.xml
+++ b/MediaBrowser.Dlna/Profiles/Xml/foobar2000.xml
@@ -30,8 +30,12 @@
<RequiresPlainFolders>false</RequiresPlainFolders>
<XmlRootAttributes />
<DirectPlayProfiles>
- <DirectPlayProfile container="mp3,wma" type="Audio" />
- <DirectPlayProfile container="avi,mp4" type="Video" />
+ <DirectPlayProfile container="mp3" audioCodec="mp2,mp3" type="Audio" />
+ <DirectPlayProfile container="mp4" audioCodec="mp4" type="Audio" />
+ <DirectPlayProfile container="aac,wav" type="Audio" />
+ <DirectPlayProfile container="flac" audioCodec="flac" type="Audio" />
+ <DirectPlayProfile container="asf" audioCodec="wmav2,wmapro,wmavoice" type="Audio" />
+ <DirectPlayProfile container="ogg" audioCodec="vorbis" type="Audio" />
</DirectPlayProfiles>
<TranscodingProfiles>
<TranscodingProfile container="mp3" type="Audio" audioCodec="mp3" estimateContentLength="false" enableMpegtsM2TsMode="false" transcodeSeekInfo="Auto" />