Luke Pulverenti il y a 10 ans
Parent
commit
1c1336ac08

+ 10 - 0
MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs

@@ -501,6 +501,16 @@ namespace MediaBrowser.Api.Playback.Hls
                 return false;
                 return false;
             }
             }
 
 
+            if (string.Equals(state.OutputVideoCodec, "copy", StringComparison.OrdinalIgnoreCase))
+            {
+                return false;
+            }
+
+            if (string.Equals(state.OutputAudioCodec, "copy", StringComparison.OrdinalIgnoreCase))
+            {
+                return false;
+            }
+
             return state.VideoRequest.VideoBitRate.HasValue;
             return state.VideoRequest.VideoBitRate.HasValue;
         }
         }
 
 

+ 22 - 1
MediaBrowser.Api/Session/SessionsService.cs

@@ -241,11 +241,23 @@ namespace MediaBrowser.Api.Session
 
 
         [ApiMember(Name = "SupportsSync", Description = "Determines whether sync is supported.", IsRequired = false, DataType = "bool", ParameterType = "query", Verb = "POST")]
         [ApiMember(Name = "SupportsSync", Description = "Determines whether sync is supported.", IsRequired = false, DataType = "bool", ParameterType = "query", Verb = "POST")]
         public bool SupportsSync { get; set; }
         public bool SupportsSync { get; set; }
-        
+
         [ApiMember(Name = "SupportsUniqueIdentifier", Description = "Determines whether the device supports a unique identifier.", IsRequired = false, DataType = "bool", ParameterType = "query", Verb = "POST")]
         [ApiMember(Name = "SupportsUniqueIdentifier", Description = "Determines whether the device supports a unique identifier.", IsRequired = false, DataType = "bool", ParameterType = "query", Verb = "POST")]
         public bool SupportsUniqueIdentifier { get; set; }
         public bool SupportsUniqueIdentifier { get; set; }
     }
     }
 
 
+    [Route("/Sessions/Capabilities/Full", "POST", Summary = "Updates capabilities for a device")]
+    [Authenticated]
+    public class PostFullCapabilities : ClientCapabilities, IReturnVoid
+    {
+        /// <summary>
+        /// Gets or sets the id.
+        /// </summary>
+        /// <value>The id.</value>
+        [ApiMember(Name = "Id", Description = "Session Id", IsRequired = true, DataType = "string", ParameterType = "path", Verb = "POST")]
+        public string Id { get; set; }
+    }
+
     [Route("/Sessions/Logout", "POST", Summary = "Reports that a session has ended")]
     [Route("/Sessions/Logout", "POST", Summary = "Reports that a session has ended")]
     [Authenticated]
     [Authenticated]
     public class ReportSessionEnded : IReturnVoid
     public class ReportSessionEnded : IReturnVoid
@@ -529,5 +541,14 @@ namespace MediaBrowser.Api.Session
                 SupportsUniqueIdentifier = request.SupportsUniqueIdentifier
                 SupportsUniqueIdentifier = request.SupportsUniqueIdentifier
             });
             });
         }
         }
+
+        public void Post(PostFullCapabilities request)
+        {
+            if (string.IsNullOrWhiteSpace(request.Id))
+            {
+                request.Id = GetSession().Id;
+            }
+            _sessionManager.ReportCapabilities(request.Id, request);
+        }
     }
     }
 }
 }

+ 15 - 2
MediaBrowser.Model/Dlna/StreamBuilder.cs

@@ -625,6 +625,12 @@ namespace MediaBrowser.Model.Dlna
                     continue;
                     continue;
                 }
                 }
 
 
+                // No way to express this
+                if (condition.Condition == ProfileConditionType.GreaterThanEqual)
+                {
+                    continue;
+                }
+
                 switch (condition.Property)
                 switch (condition.Property)
                 {
                 {
                     case ProfileConditionValue.AudioBitrate:
                     case ProfileConditionValue.AudioBitrate:
@@ -650,12 +656,19 @@ namespace MediaBrowser.Model.Dlna
                             bool val;
                             bool val;
                             if (BoolHelper.TryParseCultureInvariant(value, out val))
                             if (BoolHelper.TryParseCultureInvariant(value, out val))
                             {
                             {
-                                item.Cabac = val;
+                                if (condition.Condition == ProfileConditionType.Equals)
+                                {
+                                    item.Cabac = val;
+                                }
+                                else if (condition.Condition == ProfileConditionType.NotEquals)
+                                {
+                                    item.Cabac = !val;
+                                }
                             }
                             }
                             break;
                             break;
                         }
                         }
-                    case ProfileConditionValue.AudioProfile:
                     case ProfileConditionValue.IsAnamorphic:
                     case ProfileConditionValue.IsAnamorphic:
+                    case ProfileConditionValue.AudioProfile:
                     case ProfileConditionValue.Has64BitOffsets:
                     case ProfileConditionValue.Has64BitOffsets:
                     case ProfileConditionValue.PacketLength:
                     case ProfileConditionValue.PacketLength:
                     case ProfileConditionValue.VideoTimestamp:
                     case ProfileConditionValue.VideoTimestamp:

+ 4 - 1
MediaBrowser.Model/Session/ClientCapabilities.cs

@@ -1,4 +1,5 @@
-using System.Collections.Generic;
+using MediaBrowser.Model.Dlna;
+using System.Collections.Generic;
 
 
 namespace MediaBrowser.Model.Session
 namespace MediaBrowser.Model.Session
 {
 {
@@ -16,6 +17,8 @@ namespace MediaBrowser.Model.Session
         public bool SupportsUniqueIdentifier { get; set; }
         public bool SupportsUniqueIdentifier { get; set; }
         public bool SupportsSync { get; set; }
         public bool SupportsSync { get; set; }
 
 
+        public DeviceProfile DeviceProfile { get; set; }
+
         public ClientCapabilities()
         public ClientCapabilities()
         {
         {
             PlayableMediaTypes = new List<string>();
             PlayableMediaTypes = new List<string>();

+ 9 - 0
MediaBrowser.Server.Implementations/Library/CoreResolutionIgnoreRule.cs

@@ -104,6 +104,15 @@ namespace MediaBrowser.Server.Implementations.Library
             }
             }
             else
             else
             {
             {
+                if (args.Parent != null)
+                {
+                    // Don't resolve these into audio files
+                    if (string.Equals(_fileSystem.GetFileNameWithoutExtension(filename), BaseItem.ThemeSongFilename) && _libraryManager.IsAudioFile(filename))
+                    {
+                        return true;
+                    }
+                }
+                
                 // Ignore samples
                 // Ignore samples
                 if (filename.IndexOf(".sample.", StringComparison.OrdinalIgnoreCase) != -1)
                 if (filename.IndexOf(".sample.", StringComparison.OrdinalIgnoreCase) != -1)
                 {
                 {

+ 1 - 1
MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj

@@ -51,7 +51,7 @@
     </Reference>
     </Reference>
     <Reference Include="MediaBrowser.Naming, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
     <Reference Include="MediaBrowser.Naming, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
       <SpecificVersion>False</SpecificVersion>
       <SpecificVersion>False</SpecificVersion>
-      <HintPath>..\packages\MediaBrowser.Naming.1.0.0.16\lib\portable-net45+sl4+wp71+win8+wpa81\MediaBrowser.Naming.dll</HintPath>
+      <HintPath>..\packages\MediaBrowser.Naming.1.0.0.17\lib\portable-net45+sl4+wp71+win8+wpa81\MediaBrowser.Naming.dll</HintPath>
     </Reference>
     </Reference>
     <Reference Include="Mono.Nat, Version=1.2.21.0, Culture=neutral, processorArchitecture=MSIL">
     <Reference Include="Mono.Nat, Version=1.2.21.0, Culture=neutral, processorArchitecture=MSIL">
       <SpecificVersion>False</SpecificVersion>
       <SpecificVersion>False</SpecificVersion>

+ 1 - 1
MediaBrowser.Server.Implementations/packages.config

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
 <packages>
-  <package id="MediaBrowser.Naming" version="1.0.0.16" targetFramework="net45" />
+  <package id="MediaBrowser.Naming" version="1.0.0.17" targetFramework="net45" />
   <package id="Mono.Nat" version="1.2.21.0" targetFramework="net45" />
   <package id="Mono.Nat" version="1.2.21.0" targetFramework="net45" />
   <package id="morelinq" version="1.1.0" targetFramework="net45" />
   <package id="morelinq" version="1.1.0" targetFramework="net45" />
 </packages>
 </packages>

+ 2 - 2
Nuget/MediaBrowser.Common.Internal.nuspec

@@ -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.517</version>
+        <version>3.0.518</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.517" />
+            <dependency id="MediaBrowser.Common" version="3.0.518" />
             <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" />
             <dependency id="sharpcompress" version="0.10.2" />
             <dependency id="sharpcompress" version="0.10.2" />

+ 1 - 1
Nuget/MediaBrowser.Common.nuspec

@@ -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.517</version>
+        <version>3.0.518</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>

+ 1 - 1
Nuget/MediaBrowser.Model.Signed.nuspec

@@ -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.517</version>
+        <version>3.0.518</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 - 2
Nuget/MediaBrowser.Server.Core.nuspec

@@ -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.517</version>
+        <version>3.0.518</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.517" />
+            <dependency id="MediaBrowser.Common" version="3.0.518" />
         </dependencies>
         </dependencies>
     </metadata>
     </metadata>
     <files>
     <files>

+ 2 - 2
SharedVersion.cs

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