mirror of
https://github.com/jellyfin/jellyfin.git
synced 2025-07-09 03:04:24 -04:00
dlna fixes
This commit is contained in:
parent
8b7ade8e9d
commit
6c3209e3f9
@ -515,7 +515,7 @@ namespace MediaBrowser.Dlna
|
|||||||
|
|
||||||
public void Run()
|
public void Run()
|
||||||
{
|
{
|
||||||
//DumpProfiles();
|
DumpProfiles();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void DumpProfiles()
|
private void DumpProfiles()
|
||||||
|
@ -29,6 +29,7 @@ namespace MediaBrowser.Dlna.Profiles
|
|||||||
TimelineOffsetSeconds = 40;
|
TimelineOffsetSeconds = 40;
|
||||||
RequiresPlainFolders = true;
|
RequiresPlainFolders = true;
|
||||||
RequiresPlainVideoItems = true;
|
RequiresPlainVideoItems = true;
|
||||||
|
EnableMSMediaReceiverRegistrar = true;
|
||||||
|
|
||||||
Identification = new DeviceIdentification
|
Identification = new DeviceIdentification
|
||||||
{
|
{
|
||||||
|
@ -28,6 +28,7 @@
|
|||||||
<RequiresPlainFolders>false</RequiresPlainFolders>
|
<RequiresPlainFolders>false</RequiresPlainFolders>
|
||||||
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
||||||
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
||||||
|
<EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
|
||||||
<XmlRootAttributes />
|
<XmlRootAttributes />
|
||||||
<DirectPlayProfiles>
|
<DirectPlayProfiles>
|
||||||
<DirectPlayProfile container="mp3,wma" type="Audio" />
|
<DirectPlayProfile container="mp3,wma" type="Audio" />
|
||||||
|
@ -33,6 +33,7 @@
|
|||||||
<RequiresPlainFolders>false</RequiresPlainFolders>
|
<RequiresPlainFolders>false</RequiresPlainFolders>
|
||||||
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
||||||
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
||||||
|
<EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
|
||||||
<XmlRootAttributes />
|
<XmlRootAttributes />
|
||||||
<DirectPlayProfiles>
|
<DirectPlayProfiles>
|
||||||
<DirectPlayProfile container="mp3,flac,m4a,wma" type="Audio" />
|
<DirectPlayProfile container="mp3,flac,m4a,wma" type="Audio" />
|
||||||
|
@ -34,6 +34,7 @@
|
|||||||
<RequiresPlainFolders>true</RequiresPlainFolders>
|
<RequiresPlainFolders>true</RequiresPlainFolders>
|
||||||
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
||||||
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
||||||
|
<EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
|
||||||
<XmlRootAttributes />
|
<XmlRootAttributes />
|
||||||
<DirectPlayProfiles>
|
<DirectPlayProfiles>
|
||||||
<DirectPlayProfile container="mpeg" audioCodec="mp2" videoCodec="mpeg2video" type="Video" />
|
<DirectPlayProfile container="mpeg" audioCodec="mp2" videoCodec="mpeg2video" type="Video" />
|
||||||
|
@ -35,6 +35,7 @@
|
|||||||
<RequiresPlainFolders>false</RequiresPlainFolders>
|
<RequiresPlainFolders>false</RequiresPlainFolders>
|
||||||
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
||||||
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
||||||
|
<EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
|
||||||
<XmlRootAttributes />
|
<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" />
|
||||||
|
@ -34,6 +34,7 @@
|
|||||||
<RequiresPlainFolders>false</RequiresPlainFolders>
|
<RequiresPlainFolders>false</RequiresPlainFolders>
|
||||||
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
||||||
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
||||||
|
<EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
|
||||||
<XmlRootAttributes />
|
<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" />
|
||||||
|
@ -32,6 +32,7 @@
|
|||||||
<RequiresPlainFolders>false</RequiresPlainFolders>
|
<RequiresPlainFolders>false</RequiresPlainFolders>
|
||||||
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
||||||
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
||||||
|
<EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
|
||||||
<XmlRootAttributes />
|
<XmlRootAttributes />
|
||||||
<DirectPlayProfiles>
|
<DirectPlayProfiles>
|
||||||
<DirectPlayProfile container="mp3,flac,m4a,wma" type="Audio" />
|
<DirectPlayProfile container="mp3,flac,m4a,wma" type="Audio" />
|
||||||
|
@ -34,6 +34,7 @@
|
|||||||
<RequiresPlainFolders>false</RequiresPlainFolders>
|
<RequiresPlainFolders>false</RequiresPlainFolders>
|
||||||
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
||||||
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
||||||
|
<EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
|
||||||
<XmlRootAttributes />
|
<XmlRootAttributes />
|
||||||
<DirectPlayProfiles>
|
<DirectPlayProfiles>
|
||||||
<DirectPlayProfile container="mp3" audioCodec="mp2,mp3" type="Audio" />
|
<DirectPlayProfile container="mp3" audioCodec="mp2,mp3" type="Audio" />
|
||||||
|
@ -35,6 +35,7 @@
|
|||||||
<RequiresPlainFolders>false</RequiresPlainFolders>
|
<RequiresPlainFolders>false</RequiresPlainFolders>
|
||||||
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
||||||
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
||||||
|
<EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
|
||||||
<XmlRootAttributes>
|
<XmlRootAttributes>
|
||||||
<XmlAttribute name="xmlns:pv" value="http://www.pv.com/pvns/" />
|
<XmlAttribute name="xmlns:pv" value="http://www.pv.com/pvns/" />
|
||||||
</XmlRootAttributes>
|
</XmlRootAttributes>
|
||||||
|
@ -28,6 +28,7 @@
|
|||||||
<RequiresPlainFolders>false</RequiresPlainFolders>
|
<RequiresPlainFolders>false</RequiresPlainFolders>
|
||||||
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
||||||
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
||||||
|
<EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
|
||||||
<XmlRootAttributes />
|
<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" />
|
||||||
|
@ -34,6 +34,7 @@
|
|||||||
<RequiresPlainFolders>false</RequiresPlainFolders>
|
<RequiresPlainFolders>false</RequiresPlainFolders>
|
||||||
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
||||||
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
||||||
|
<EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
|
||||||
<XmlRootAttributes>
|
<XmlRootAttributes>
|
||||||
<XmlAttribute name="xmlns:sec" value="http://www.sec.co.kr/" />
|
<XmlAttribute name="xmlns:sec" value="http://www.sec.co.kr/" />
|
||||||
</XmlRootAttributes>
|
</XmlRootAttributes>
|
||||||
|
@ -34,6 +34,7 @@
|
|||||||
<RequiresPlainFolders>false</RequiresPlainFolders>
|
<RequiresPlainFolders>false</RequiresPlainFolders>
|
||||||
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
||||||
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
||||||
|
<EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
|
||||||
<XmlRootAttributes>
|
<XmlRootAttributes>
|
||||||
<XmlAttribute name="xmlns:av" value="urn:schemas-sony-com:av" />
|
<XmlAttribute name="xmlns:av" value="urn:schemas-sony-com:av" />
|
||||||
</XmlRootAttributes>
|
</XmlRootAttributes>
|
||||||
|
@ -36,6 +36,7 @@
|
|||||||
<RequiresPlainFolders>false</RequiresPlainFolders>
|
<RequiresPlainFolders>false</RequiresPlainFolders>
|
||||||
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
||||||
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
||||||
|
<EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
|
||||||
<XmlRootAttributes>
|
<XmlRootAttributes>
|
||||||
<XmlAttribute name="xmlns:av" value="urn:schemas-sony-com:av" />
|
<XmlAttribute name="xmlns:av" value="urn:schemas-sony-com:av" />
|
||||||
</XmlRootAttributes>
|
</XmlRootAttributes>
|
||||||
|
@ -36,6 +36,7 @@
|
|||||||
<RequiresPlainFolders>false</RequiresPlainFolders>
|
<RequiresPlainFolders>false</RequiresPlainFolders>
|
||||||
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
||||||
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
||||||
|
<EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
|
||||||
<XmlRootAttributes>
|
<XmlRootAttributes>
|
||||||
<XmlAttribute name="xmlns:av" value="urn:schemas-sony-com:av" />
|
<XmlAttribute name="xmlns:av" value="urn:schemas-sony-com:av" />
|
||||||
</XmlRootAttributes>
|
</XmlRootAttributes>
|
||||||
|
@ -36,6 +36,7 @@
|
|||||||
<RequiresPlainFolders>false</RequiresPlainFolders>
|
<RequiresPlainFolders>false</RequiresPlainFolders>
|
||||||
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
||||||
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
||||||
|
<EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
|
||||||
<XmlRootAttributes>
|
<XmlRootAttributes>
|
||||||
<XmlAttribute name="xmlns:av" value="urn:schemas-sony-com:av" />
|
<XmlAttribute name="xmlns:av" value="urn:schemas-sony-com:av" />
|
||||||
</XmlRootAttributes>
|
</XmlRootAttributes>
|
||||||
|
@ -36,6 +36,7 @@
|
|||||||
<RequiresPlainFolders>false</RequiresPlainFolders>
|
<RequiresPlainFolders>false</RequiresPlainFolders>
|
||||||
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
||||||
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
||||||
|
<EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
|
||||||
<XmlRootAttributes>
|
<XmlRootAttributes>
|
||||||
<XmlAttribute name="xmlns:av" value="urn:schemas-sony-com:av" />
|
<XmlAttribute name="xmlns:av" value="urn:schemas-sony-com:av" />
|
||||||
</XmlRootAttributes>
|
</XmlRootAttributes>
|
||||||
|
@ -36,6 +36,7 @@
|
|||||||
<RequiresPlainFolders>false</RequiresPlainFolders>
|
<RequiresPlainFolders>false</RequiresPlainFolders>
|
||||||
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
||||||
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
||||||
|
<EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
|
||||||
<XmlRootAttributes>
|
<XmlRootAttributes>
|
||||||
<XmlAttribute name="xmlns:av" value="urn:schemas-sony-com:av" />
|
<XmlAttribute name="xmlns:av" value="urn:schemas-sony-com:av" />
|
||||||
</XmlRootAttributes>
|
</XmlRootAttributes>
|
||||||
|
@ -36,6 +36,7 @@
|
|||||||
<RequiresPlainFolders>false</RequiresPlainFolders>
|
<RequiresPlainFolders>false</RequiresPlainFolders>
|
||||||
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
||||||
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
||||||
|
<EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
|
||||||
<XmlRootAttributes />
|
<XmlRootAttributes />
|
||||||
<DirectPlayProfiles>
|
<DirectPlayProfiles>
|
||||||
<DirectPlayProfile container="avi" audioCodec="mp2,mp3" videoCodec="mpeg4" type="Video" />
|
<DirectPlayProfile container="avi" audioCodec="mp2,mp3" videoCodec="mpeg4" type="Video" />
|
||||||
|
@ -35,6 +35,7 @@
|
|||||||
<RequiresPlainFolders>false</RequiresPlainFolders>
|
<RequiresPlainFolders>false</RequiresPlainFolders>
|
||||||
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
||||||
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
||||||
|
<EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
|
||||||
<XmlRootAttributes />
|
<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" />
|
||||||
|
@ -35,6 +35,7 @@
|
|||||||
<RequiresPlainFolders>true</RequiresPlainFolders>
|
<RequiresPlainFolders>true</RequiresPlainFolders>
|
||||||
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
||||||
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
||||||
|
<EnableMSMediaReceiverRegistrar>true</EnableMSMediaReceiverRegistrar>
|
||||||
<XmlRootAttributes />
|
<XmlRootAttributes />
|
||||||
<DirectPlayProfiles>
|
<DirectPlayProfiles>
|
||||||
<DirectPlayProfile container="avi" audioCodec="ac3,mp3" videoCodec="mpeg4" type="Video" />
|
<DirectPlayProfile container="avi" audioCodec="ac3,mp3" videoCodec="mpeg4" type="Video" />
|
||||||
|
@ -35,6 +35,7 @@
|
|||||||
<RequiresPlainFolders>false</RequiresPlainFolders>
|
<RequiresPlainFolders>false</RequiresPlainFolders>
|
||||||
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
||||||
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
||||||
|
<EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
|
||||||
<XmlRootAttributes />
|
<XmlRootAttributes />
|
||||||
<DirectPlayProfiles>
|
<DirectPlayProfiles>
|
||||||
<DirectPlayProfile container="ts" audioCodec="ac3" videoCodec="h264" type="Video" />
|
<DirectPlayProfile container="ts" audioCodec="ac3" videoCodec="h264" type="Video" />
|
||||||
|
@ -34,6 +34,7 @@
|
|||||||
<RequiresPlainFolders>false</RequiresPlainFolders>
|
<RequiresPlainFolders>false</RequiresPlainFolders>
|
||||||
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
<SupportsDirectRemoteContent>false</SupportsDirectRemoteContent>
|
||||||
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
<SupportsCustomHttpHeaders>false</SupportsCustomHttpHeaders>
|
||||||
|
<EnableMSMediaReceiverRegistrar>false</EnableMSMediaReceiverRegistrar>
|
||||||
<XmlRootAttributes />
|
<XmlRootAttributes />
|
||||||
<DirectPlayProfiles>
|
<DirectPlayProfiles>
|
||||||
<DirectPlayProfile container="mp3" audioCodec="mp2,mp3" type="Audio" />
|
<DirectPlayProfile container="mp3" audioCodec="mp2,mp3" type="Audio" />
|
||||||
|
@ -261,14 +261,17 @@ namespace MediaBrowser.Dlna.Server
|
|||||||
EventSubUrl = "connectionmanager/events"
|
EventSubUrl = "connectionmanager/events"
|
||||||
});
|
});
|
||||||
|
|
||||||
list.Add(new DeviceService
|
if (_profile.EnableMSMediaReceiverRegistrar)
|
||||||
{
|
{
|
||||||
ServiceType = "urn:microsoft.com:service:X_MS_MediaReceiverRegistrar:1",
|
list.Add(new DeviceService
|
||||||
ServiceId = "urn:microsoft.com:serviceId:X_MS_MediaReceiverRegistrar",
|
{
|
||||||
ScpdUrl = "mediareceiverregistrar/mediareceiverregistrar.xml",
|
ServiceType = "urn:microsoft.com:service:X_MS_MediaReceiverRegistrar:1",
|
||||||
ControlUrl = "mediareceiverregistrar/control",
|
ServiceId = "urn:microsoft.com:serviceId:X_MS_MediaReceiverRegistrar",
|
||||||
EventSubUrl = "mediareceiverregistrar/events"
|
ScpdUrl = "mediareceiverregistrar/mediareceiverregistrar.xml",
|
||||||
});
|
ControlUrl = "mediareceiverregistrar/control",
|
||||||
|
EventSubUrl = "mediareceiverregistrar/events"
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
@ -78,6 +78,7 @@ namespace MediaBrowser.Model.Dlna
|
|||||||
|
|
||||||
public bool SupportsDirectRemoteContent { get; set; }
|
public bool SupportsDirectRemoteContent { get; set; }
|
||||||
public bool SupportsCustomHttpHeaders { get; set; }
|
public bool SupportsCustomHttpHeaders { get; set; }
|
||||||
|
public bool EnableMSMediaReceiverRegistrar { get; set; }
|
||||||
|
|
||||||
public XmlAttribute[] XmlRootAttributes { get; set; }
|
public XmlAttribute[] XmlRootAttributes { get; set; }
|
||||||
|
|
||||||
|
@ -524,11 +524,6 @@ namespace MediaBrowser.Model.Dlna
|
|||||||
{
|
{
|
||||||
if (subtitleStream != null)
|
if (subtitleStream != null)
|
||||||
{
|
{
|
||||||
if (!subtitleStream.IsTextSubtitleStream)
|
|
||||||
{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
SubtitleProfile subtitleProfile = GetSubtitleProfile(subtitleStream, options);
|
SubtitleProfile subtitleProfile = GetSubtitleProfile(subtitleStream, options);
|
||||||
|
|
||||||
if (subtitleProfile.Method != SubtitleDeliveryMethod.External && subtitleProfile.Method != SubtitleDeliveryMethod.Embed)
|
if (subtitleProfile.Method != SubtitleDeliveryMethod.External && subtitleProfile.Method != SubtitleDeliveryMethod.Embed)
|
||||||
@ -568,19 +563,6 @@ namespace MediaBrowser.Model.Dlna
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
private SubtitleProfile GetSubtitleProfile(SubtitleProfile[] profiles, SubtitleDeliveryMethod method, string[] formats)
|
|
||||||
{
|
|
||||||
foreach (SubtitleProfile profile in profiles)
|
|
||||||
{
|
|
||||||
if (method == profile.Method && ListHelper.ContainsIgnoreCase(formats, profile.Format))
|
|
||||||
{
|
|
||||||
return profile;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
private SubtitleProfile GetSubtitleProfile(SubtitleProfile[] profiles, SubtitleDeliveryMethod method)
|
private SubtitleProfile GetSubtitleProfile(SubtitleProfile[] profiles, SubtitleDeliveryMethod method)
|
||||||
{
|
{
|
||||||
foreach (SubtitleProfile profile in profiles)
|
foreach (SubtitleProfile profile in profiles)
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
namespace MediaBrowser.Model.Sync
|
namespace MediaBrowser.Model.Sync
|
||||||
{
|
{
|
||||||
public class SyncJobQuery
|
public class SyncJobQuery
|
||||||
@ -14,11 +15,6 @@ namespace MediaBrowser.Model.Sync
|
|||||||
/// <value>The limit.</value>
|
/// <value>The limit.</value>
|
||||||
public int? Limit { get; set; }
|
public int? Limit { get; set; }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets or sets a value indicating whether this instance is completed.
|
|
||||||
/// </summary>
|
|
||||||
/// <value><c>null</c> if [is completed] contains no value, <c>true</c> if [is completed]; otherwise, <c>false</c>.</value>
|
|
||||||
public bool? IsCompleted { get; set; }
|
|
||||||
/// <summary>
|
|
||||||
/// Gets or sets the target identifier.
|
/// Gets or sets the target identifier.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <value>The target identifier.</value>
|
/// <value>The target identifier.</value>
|
||||||
@ -28,5 +24,20 @@ namespace MediaBrowser.Model.Sync
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
/// <value>The user identifier.</value>
|
/// <value>The user identifier.</value>
|
||||||
public string UserId { get; set; }
|
public string UserId { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// Gets or sets the status.
|
||||||
|
/// </summary>
|
||||||
|
/// <value>The status.</value>
|
||||||
|
public List<SyncJobStatus> Statuses { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// Gets or sets a value indicating whether [synchronize new content].
|
||||||
|
/// </summary>
|
||||||
|
/// <value><c>null</c> if [synchronize new content] contains no value, <c>true</c> if [synchronize new content]; otherwise, <c>false</c>.</value>
|
||||||
|
public bool? SyncNewContent { get; set; }
|
||||||
|
|
||||||
|
public SyncJobQuery()
|
||||||
|
{
|
||||||
|
Statuses = new List<SyncJobStatus>();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -89,8 +89,8 @@
|
|||||||
"LabelFree": "Free",
|
"LabelFree": "Free",
|
||||||
"HeaderSelectAudio": "Select Audio",
|
"HeaderSelectAudio": "Select Audio",
|
||||||
"HeaderSelectSubtitles": "Select Subtitles",
|
"HeaderSelectSubtitles": "Select Subtitles",
|
||||||
"ButtonMarkForRemoval": "Mark for removal from device",
|
"ButtonMarkForRemoval": "Remove from device",
|
||||||
"ButtonUnmarkForRemoval": "Unmark for removal from device",
|
"ButtonUnmarkForRemoval": "Cancel removal from device",
|
||||||
"LabelDefaultStream": "(Default)",
|
"LabelDefaultStream": "(Default)",
|
||||||
"LabelForcedStream": "(Forced)",
|
"LabelForcedStream": "(Forced)",
|
||||||
"LabelDefaultForcedStream": "(Default/Forced)",
|
"LabelDefaultForcedStream": "(Default/Forced)",
|
||||||
|
@ -308,11 +308,11 @@ namespace MediaBrowser.Server.Implementations.Sync
|
|||||||
return new[] { item };
|
return new[] { item };
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task EnsureSyncJobs(CancellationToken cancellationToken)
|
public async Task EnsureSyncJobItems(CancellationToken cancellationToken)
|
||||||
{
|
{
|
||||||
var jobResult = _syncRepo.GetJobs(new SyncJobQuery
|
var jobResult = _syncRepo.GetJobs(new SyncJobQuery
|
||||||
{
|
{
|
||||||
IsCompleted = false
|
SyncNewContent = true
|
||||||
});
|
});
|
||||||
|
|
||||||
foreach (var job in jobResult.Items)
|
foreach (var job in jobResult.Items)
|
||||||
@ -328,7 +328,7 @@ namespace MediaBrowser.Server.Implementations.Sync
|
|||||||
|
|
||||||
public async Task Sync(IProgress<double> progress, CancellationToken cancellationToken)
|
public async Task Sync(IProgress<double> progress, CancellationToken cancellationToken)
|
||||||
{
|
{
|
||||||
await EnsureSyncJobs(cancellationToken).ConfigureAwait(false);
|
await EnsureSyncJobItems(cancellationToken).ConfigureAwait(false);
|
||||||
|
|
||||||
// If it already has a converting status then is must have been aborted during conversion
|
// If it already has a converting status then is must have been aborted during conversion
|
||||||
var result = _syncRepo.GetJobItems(new SyncJobItemQuery
|
var result = _syncRepo.GetJobItems(new SyncJobItemQuery
|
||||||
|
@ -30,7 +30,8 @@ namespace MediaBrowser.Server.Implementations.Sync
|
|||||||
private IDbCommand _deleteJobCommand;
|
private IDbCommand _deleteJobCommand;
|
||||||
|
|
||||||
private IDbCommand _deleteJobItemsCommand;
|
private IDbCommand _deleteJobItemsCommand;
|
||||||
private IDbCommand _saveJobItemCommand;
|
private IDbCommand _insertJobItemCommand;
|
||||||
|
private IDbCommand _updateJobItemCommand;
|
||||||
|
|
||||||
private readonly IJsonSerializer _json;
|
private readonly IJsonSerializer _json;
|
||||||
|
|
||||||
@ -120,25 +121,45 @@ namespace MediaBrowser.Server.Implementations.Sync
|
|||||||
_updateJobCommand.Parameters.Add(_updateJobCommand, "@DateLastModified");
|
_updateJobCommand.Parameters.Add(_updateJobCommand, "@DateLastModified");
|
||||||
_updateJobCommand.Parameters.Add(_updateJobCommand, "@ItemCount");
|
_updateJobCommand.Parameters.Add(_updateJobCommand, "@ItemCount");
|
||||||
|
|
||||||
// _saveJobItemCommand
|
// _insertJobItemCommand
|
||||||
_saveJobItemCommand = _connection.CreateCommand();
|
_insertJobItemCommand = _connection.CreateCommand();
|
||||||
_saveJobItemCommand.CommandText = "replace into SyncJobItems (Id, ItemId, ItemName, MediaSourceId, JobId, TemporaryPath, OutputPath, Status, TargetId, DateCreated, Progress, AdditionalFiles, MediaSource, IsMarkedForRemoval, JobItemIndex) values (@Id, @ItemId, @ItemName, @MediaSourceId, @JobId, @TemporaryPath, @OutputPath, @Status, @TargetId, @DateCreated, @Progress, @AdditionalFiles, @MediaSource, @IsMarkedForRemoval, @JobItemIndex)";
|
_insertJobItemCommand.CommandText = "insert into SyncJobItems (Id, ItemId, ItemName, MediaSourceId, JobId, TemporaryPath, OutputPath, Status, TargetId, DateCreated, Progress, AdditionalFiles, MediaSource, IsMarkedForRemoval, JobItemIndex) values (@Id, @ItemId, @ItemName, @MediaSourceId, @JobId, @TemporaryPath, @OutputPath, @Status, @TargetId, @DateCreated, @Progress, @AdditionalFiles, @MediaSource, @IsMarkedForRemoval, @JobItemIndex)";
|
||||||
|
|
||||||
_saveJobItemCommand.Parameters.Add(_saveJobItemCommand, "@Id");
|
_insertJobItemCommand.Parameters.Add(_insertJobItemCommand, "@Id");
|
||||||
_saveJobItemCommand.Parameters.Add(_saveJobItemCommand, "@ItemId");
|
_insertJobItemCommand.Parameters.Add(_insertJobItemCommand, "@ItemId");
|
||||||
_saveJobItemCommand.Parameters.Add(_saveJobItemCommand, "@ItemName");
|
_insertJobItemCommand.Parameters.Add(_insertJobItemCommand, "@ItemName");
|
||||||
_saveJobItemCommand.Parameters.Add(_saveJobItemCommand, "@MediaSourceId");
|
_insertJobItemCommand.Parameters.Add(_insertJobItemCommand, "@MediaSourceId");
|
||||||
_saveJobItemCommand.Parameters.Add(_saveJobItemCommand, "@JobId");
|
_insertJobItemCommand.Parameters.Add(_insertJobItemCommand, "@JobId");
|
||||||
_saveJobItemCommand.Parameters.Add(_saveJobItemCommand, "@TemporaryPath");
|
_insertJobItemCommand.Parameters.Add(_insertJobItemCommand, "@TemporaryPath");
|
||||||
_saveJobItemCommand.Parameters.Add(_saveJobItemCommand, "@OutputPath");
|
_insertJobItemCommand.Parameters.Add(_insertJobItemCommand, "@OutputPath");
|
||||||
_saveJobItemCommand.Parameters.Add(_saveJobItemCommand, "@Status");
|
_insertJobItemCommand.Parameters.Add(_insertJobItemCommand, "@Status");
|
||||||
_saveJobItemCommand.Parameters.Add(_saveJobItemCommand, "@TargetId");
|
_insertJobItemCommand.Parameters.Add(_insertJobItemCommand, "@TargetId");
|
||||||
_saveJobItemCommand.Parameters.Add(_saveJobItemCommand, "@DateCreated");
|
_insertJobItemCommand.Parameters.Add(_insertJobItemCommand, "@DateCreated");
|
||||||
_saveJobItemCommand.Parameters.Add(_saveJobItemCommand, "@Progress");
|
_insertJobItemCommand.Parameters.Add(_insertJobItemCommand, "@Progress");
|
||||||
_saveJobItemCommand.Parameters.Add(_saveJobItemCommand, "@AdditionalFiles");
|
_insertJobItemCommand.Parameters.Add(_insertJobItemCommand, "@AdditionalFiles");
|
||||||
_saveJobItemCommand.Parameters.Add(_saveJobItemCommand, "@MediaSource");
|
_insertJobItemCommand.Parameters.Add(_insertJobItemCommand, "@MediaSource");
|
||||||
_saveJobItemCommand.Parameters.Add(_saveJobItemCommand, "@IsMarkedForRemoval");
|
_insertJobItemCommand.Parameters.Add(_insertJobItemCommand, "@IsMarkedForRemoval");
|
||||||
_saveJobItemCommand.Parameters.Add(_saveJobItemCommand, "@JobItemIndex");
|
_insertJobItemCommand.Parameters.Add(_insertJobItemCommand, "@JobItemIndex");
|
||||||
|
|
||||||
|
// _updateJobItemCommand
|
||||||
|
_updateJobItemCommand = _connection.CreateCommand();
|
||||||
|
_updateJobItemCommand.CommandText = "update SyncJobItems set ItemId=@ItemId,ItemName=@ItemName,MediaSourceId=@MediaSourceId,JobId=@JobId,TemporaryPath=@TemporaryPath,OutputPath=@OutputPath,Status=@Status,TargetId=@TargetId,DateCreated=@DateCreated,Progress=@Progress,AdditionalFiles=@AdditionalFiles,MediaSource=@MediaSource,IsMarkedForRemoval=@IsMarkedForRemoval,JobItemIndex=@JobItemIndex where Id=@Id";
|
||||||
|
|
||||||
|
_updateJobItemCommand.Parameters.Add(_updateJobItemCommand, "@Id");
|
||||||
|
_updateJobItemCommand.Parameters.Add(_updateJobItemCommand, "@ItemId");
|
||||||
|
_updateJobItemCommand.Parameters.Add(_updateJobItemCommand, "@ItemName");
|
||||||
|
_updateJobItemCommand.Parameters.Add(_updateJobItemCommand, "@MediaSourceId");
|
||||||
|
_updateJobItemCommand.Parameters.Add(_updateJobItemCommand, "@JobId");
|
||||||
|
_updateJobItemCommand.Parameters.Add(_updateJobItemCommand, "@TemporaryPath");
|
||||||
|
_updateJobItemCommand.Parameters.Add(_updateJobItemCommand, "@OutputPath");
|
||||||
|
_updateJobItemCommand.Parameters.Add(_updateJobItemCommand, "@Status");
|
||||||
|
_updateJobItemCommand.Parameters.Add(_updateJobItemCommand, "@TargetId");
|
||||||
|
_updateJobItemCommand.Parameters.Add(_updateJobItemCommand, "@DateCreated");
|
||||||
|
_updateJobItemCommand.Parameters.Add(_updateJobItemCommand, "@Progress");
|
||||||
|
_updateJobItemCommand.Parameters.Add(_updateJobItemCommand, "@AdditionalFiles");
|
||||||
|
_updateJobItemCommand.Parameters.Add(_updateJobItemCommand, "@MediaSource");
|
||||||
|
_updateJobItemCommand.Parameters.Add(_updateJobItemCommand, "@IsMarkedForRemoval");
|
||||||
|
_updateJobItemCommand.Parameters.Add(_updateJobItemCommand, "@JobItemIndex");
|
||||||
}
|
}
|
||||||
|
|
||||||
private const string BaseJobSelectText = "select Id, TargetId, Name, Quality, Status, Progress, UserId, ItemIds, Category, ParentId, UnwatchedOnly, ItemLimit, SyncNewContent, DateCreated, DateLastModified, ItemCount from SyncJobs";
|
private const string BaseJobSelectText = "select Id, TargetId, Name, Quality, Status, Progress, UserId, ItemIds, Category, ParentId, UnwatchedOnly, ItemLimit, SyncNewContent, DateCreated, DateLastModified, ItemCount from SyncJobs";
|
||||||
@ -392,17 +413,11 @@ namespace MediaBrowser.Server.Implementations.Sync
|
|||||||
|
|
||||||
var whereClauses = new List<string>();
|
var whereClauses = new List<string>();
|
||||||
|
|
||||||
if (query.IsCompleted.HasValue)
|
if (query.Statuses.Count > 0)
|
||||||
{
|
{
|
||||||
if (query.IsCompleted.Value)
|
var statuses = string.Join(",", query.Statuses.Select(i => "'" + i.ToString() + "'").ToArray());
|
||||||
{
|
|
||||||
whereClauses.Add("Status=@Status");
|
whereClauses.Add(string.Format("Status in ({0})", statuses));
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
whereClauses.Add("Status<>@Status");
|
|
||||||
}
|
|
||||||
cmd.Parameters.Add(cmd, "@Status", DbType.String).Value = SyncJobStatus.Completed.ToString();
|
|
||||||
}
|
}
|
||||||
if (!string.IsNullOrWhiteSpace(query.TargetId))
|
if (!string.IsNullOrWhiteSpace(query.TargetId))
|
||||||
{
|
{
|
||||||
@ -413,6 +428,11 @@ namespace MediaBrowser.Server.Implementations.Sync
|
|||||||
whereClauses.Add("UserId=@UserId");
|
whereClauses.Add("UserId=@UserId");
|
||||||
cmd.Parameters.Add(cmd, "@UserId", DbType.String).Value = query.UserId;
|
cmd.Parameters.Add(cmd, "@UserId", DbType.String).Value = query.UserId;
|
||||||
}
|
}
|
||||||
|
if (query.SyncNewContent.HasValue)
|
||||||
|
{
|
||||||
|
whereClauses.Add("SyncNewContent=@SyncNewContent");
|
||||||
|
cmd.Parameters.Add(cmd, "@SyncNewContent", DbType.Boolean).Value = query.SyncNewContent.Value;
|
||||||
|
}
|
||||||
|
|
||||||
var whereTextWithoutPaging = whereClauses.Count == 0 ?
|
var whereTextWithoutPaging = whereClauses.Count == 0 ?
|
||||||
string.Empty :
|
string.Empty :
|
||||||
@ -583,10 +603,15 @@ namespace MediaBrowser.Server.Implementations.Sync
|
|||||||
|
|
||||||
public Task Create(SyncJobItem jobItem)
|
public Task Create(SyncJobItem jobItem)
|
||||||
{
|
{
|
||||||
return Update(jobItem);
|
return InsertOrUpdate(jobItem, _insertJobItemCommand);
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task Update(SyncJobItem jobItem)
|
public Task Update(SyncJobItem jobItem)
|
||||||
|
{
|
||||||
|
return InsertOrUpdate(jobItem, _updateJobItemCommand);
|
||||||
|
}
|
||||||
|
|
||||||
|
private async Task InsertOrUpdate(SyncJobItem jobItem, IDbCommand cmd)
|
||||||
{
|
{
|
||||||
if (jobItem == null)
|
if (jobItem == null)
|
||||||
{
|
{
|
||||||
@ -603,25 +628,25 @@ namespace MediaBrowser.Server.Implementations.Sync
|
|||||||
|
|
||||||
var index = 0;
|
var index = 0;
|
||||||
|
|
||||||
_saveJobItemCommand.GetParameter(index++).Value = new Guid(jobItem.Id);
|
cmd.GetParameter(index++).Value = new Guid(jobItem.Id);
|
||||||
_saveJobItemCommand.GetParameter(index++).Value = jobItem.ItemId;
|
cmd.GetParameter(index++).Value = jobItem.ItemId;
|
||||||
_saveJobItemCommand.GetParameter(index++).Value = jobItem.ItemName;
|
cmd.GetParameter(index++).Value = jobItem.ItemName;
|
||||||
_saveJobItemCommand.GetParameter(index++).Value = jobItem.MediaSourceId;
|
cmd.GetParameter(index++).Value = jobItem.MediaSourceId;
|
||||||
_saveJobItemCommand.GetParameter(index++).Value = jobItem.JobId;
|
cmd.GetParameter(index++).Value = jobItem.JobId;
|
||||||
_saveJobItemCommand.GetParameter(index++).Value = jobItem.TemporaryPath;
|
cmd.GetParameter(index++).Value = jobItem.TemporaryPath;
|
||||||
_saveJobItemCommand.GetParameter(index++).Value = jobItem.OutputPath;
|
cmd.GetParameter(index++).Value = jobItem.OutputPath;
|
||||||
_saveJobItemCommand.GetParameter(index++).Value = jobItem.Status.ToString();
|
cmd.GetParameter(index++).Value = jobItem.Status.ToString();
|
||||||
_saveJobItemCommand.GetParameter(index++).Value = jobItem.TargetId;
|
cmd.GetParameter(index++).Value = jobItem.TargetId;
|
||||||
_saveJobItemCommand.GetParameter(index++).Value = jobItem.DateCreated;
|
cmd.GetParameter(index++).Value = jobItem.DateCreated;
|
||||||
_saveJobItemCommand.GetParameter(index++).Value = jobItem.Progress;
|
cmd.GetParameter(index++).Value = jobItem.Progress;
|
||||||
_saveJobItemCommand.GetParameter(index++).Value = _json.SerializeToString(jobItem.AdditionalFiles);
|
cmd.GetParameter(index++).Value = _json.SerializeToString(jobItem.AdditionalFiles);
|
||||||
_saveJobItemCommand.GetParameter(index++).Value = jobItem.MediaSource == null ? null : _json.SerializeToString(jobItem.MediaSource);
|
cmd.GetParameter(index++).Value = jobItem.MediaSource == null ? null : _json.SerializeToString(jobItem.MediaSource);
|
||||||
_saveJobItemCommand.GetParameter(index++).Value = jobItem.IsMarkedForRemoval;
|
cmd.GetParameter(index++).Value = jobItem.IsMarkedForRemoval;
|
||||||
_saveJobItemCommand.GetParameter(index++).Value = jobItem.JobItemIndex;
|
cmd.GetParameter(index++).Value = jobItem.JobItemIndex;
|
||||||
|
|
||||||
_saveJobItemCommand.Transaction = transaction;
|
cmd.Transaction = transaction;
|
||||||
|
|
||||||
_saveJobItemCommand.ExecuteNonQuery();
|
cmd.ExecuteNonQuery();
|
||||||
|
|
||||||
transaction.Commit();
|
transaction.Commit();
|
||||||
}
|
}
|
||||||
|
@ -129,7 +129,7 @@ namespace MediaBrowser.Server.Implementations.TV
|
|||||||
// Get them in display order, then reverse
|
// Get them in display order, then reverse
|
||||||
var allEpisodes = series.GetSeasons(user, true, true)
|
var allEpisodes = series.GetSeasons(user, true, true)
|
||||||
.Where(i => !i.IndexNumber.HasValue || i.IndexNumber.Value != 0)
|
.Where(i => !i.IndexNumber.HasValue || i.IndexNumber.Value != 0)
|
||||||
.SelectMany(i => i.GetEpisodes(user, true, true))
|
.SelectMany(i => i.GetEpisodes(user))
|
||||||
.Reverse()
|
.Reverse()
|
||||||
.ToList();
|
.ToList();
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
|
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
|
||||||
<metadata>
|
<metadata>
|
||||||
<id>MediaBrowser.Common.Internal</id>
|
<id>MediaBrowser.Common.Internal</id>
|
||||||
<version>3.0.553</version>
|
<version>3.0.554</version>
|
||||||
<title>MediaBrowser.Common.Internal</title>
|
<title>MediaBrowser.Common.Internal</title>
|
||||||
<authors>Luke</authors>
|
<authors>Luke</authors>
|
||||||
<owners>ebr,Luke,scottisafool</owners>
|
<owners>ebr,Luke,scottisafool</owners>
|
||||||
@ -12,7 +12,7 @@
|
|||||||
<description>Contains common components shared by Media Browser Theater and Media Browser Server. Not intended for plugin developer consumption.</description>
|
<description>Contains common components shared by Media Browser Theater and Media Browser Server. Not intended for plugin developer consumption.</description>
|
||||||
<copyright>Copyright © Media Browser 2013</copyright>
|
<copyright>Copyright © Media Browser 2013</copyright>
|
||||||
<dependencies>
|
<dependencies>
|
||||||
<dependency id="MediaBrowser.Common" version="3.0.553" />
|
<dependency id="MediaBrowser.Common" version="3.0.554" />
|
||||||
<dependency id="NLog" version="3.1.0.0" />
|
<dependency id="NLog" version="3.1.0.0" />
|
||||||
<dependency id="SimpleInjector" version="2.6.1" />
|
<dependency id="SimpleInjector" version="2.6.1" />
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
|
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
|
||||||
<metadata>
|
<metadata>
|
||||||
<id>MediaBrowser.Common</id>
|
<id>MediaBrowser.Common</id>
|
||||||
<version>3.0.553</version>
|
<version>3.0.554</version>
|
||||||
<title>MediaBrowser.Common</title>
|
<title>MediaBrowser.Common</title>
|
||||||
<authors>Media Browser Team</authors>
|
<authors>Media Browser Team</authors>
|
||||||
<owners>ebr,Luke,scottisafool</owners>
|
<owners>ebr,Luke,scottisafool</owners>
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
|
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
|
||||||
<metadata>
|
<metadata>
|
||||||
<id>MediaBrowser.Model.Signed</id>
|
<id>MediaBrowser.Model.Signed</id>
|
||||||
<version>3.0.553</version>
|
<version>3.0.554</version>
|
||||||
<title>MediaBrowser.Model - Signed Edition</title>
|
<title>MediaBrowser.Model - Signed Edition</title>
|
||||||
<authors>Media Browser Team</authors>
|
<authors>Media Browser Team</authors>
|
||||||
<owners>ebr,Luke,scottisafool</owners>
|
<owners>ebr,Luke,scottisafool</owners>
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
|
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
|
||||||
<metadata>
|
<metadata>
|
||||||
<id>MediaBrowser.Server.Core</id>
|
<id>MediaBrowser.Server.Core</id>
|
||||||
<version>3.0.553</version>
|
<version>3.0.554</version>
|
||||||
<title>Media Browser.Server.Core</title>
|
<title>Media Browser.Server.Core</title>
|
||||||
<authors>Media Browser Team</authors>
|
<authors>Media Browser Team</authors>
|
||||||
<owners>ebr,Luke,scottisafool</owners>
|
<owners>ebr,Luke,scottisafool</owners>
|
||||||
@ -12,7 +12,7 @@
|
|||||||
<description>Contains core components required to build plugins for Media Browser Server.</description>
|
<description>Contains core components required to build plugins for Media Browser Server.</description>
|
||||||
<copyright>Copyright © Media Browser 2013</copyright>
|
<copyright>Copyright © Media Browser 2013</copyright>
|
||||||
<dependencies>
|
<dependencies>
|
||||||
<dependency id="MediaBrowser.Common" version="3.0.553" />
|
<dependency id="MediaBrowser.Common" version="3.0.554" />
|
||||||
</dependencies>
|
</dependencies>
|
||||||
</metadata>
|
</metadata>
|
||||||
<files>
|
<files>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user