Bläddra i källkod

Merge pull request #1729 from MediaBrowser/dev

Dev
Luke 9 år sedan
förälder
incheckning
eeaec966ac

+ 22 - 2
MediaBrowser.Controller/Entities/Audio/MusicArtist.cs

@@ -61,11 +61,31 @@ namespace MediaBrowser.Controller.Entities.Audio
             if (query.User != null)
             {
                 return query.User.RootFolder
-                    .GetRecursiveChildren(query.User, i => !i.IsFolder && itemByNameFilter(i));
+                    .GetRecursiveChildren(query.User, i =>
+                    {
+                        if (query.IsFolder.HasValue)
+                        {
+                            if (query.IsFolder.Value != i.IsFolder)
+                            {
+                                return false;
+                            }
+                        }
+                        return itemByNameFilter(i);
+                    });
             }
 
             return LibraryManager.RootFolder
-                .GetRecursiveChildren(i => !i.IsFolder && itemByNameFilter(i));
+                .GetRecursiveChildren(i =>
+                {
+                    if (query.IsFolder.HasValue)
+                    {
+                        if (query.IsFolder.Value != i.IsFolder)
+                        {
+                            return false;
+                        }
+                    }
+                    return itemByNameFilter(i);
+                });
         }
 
         protected override IEnumerable<BaseItem> ActualChildren

+ 2 - 1
MediaBrowser.Model/Dto/BaseItemDto.cs

@@ -297,7 +297,8 @@ namespace MediaBrowser.Model.Dto
         /// </summary>
         /// <value>The number.</value>
         public string Number { get; set; }
-        
+        public string ChannelNumber { get; set; }
+
         /// <summary>
         /// Gets or sets the index number.
         /// </summary>

+ 6 - 1
MediaBrowser.Server.Implementations/LiveTv/EmbyTV/EncodedRecorder.cs

@@ -46,7 +46,12 @@ namespace MediaBrowser.Server.Implementations.LiveTv.EmbyTV
         {
             if (_liveTvOptions.EnableOriginalAudioWithEncodedRecordings)
             {
-                return Path.ChangeExtension(targetFile, ".mkv");
+                // if the audio is aac_latm, stream copying to mp4 will fail
+                var streams = mediaSource.MediaStreams ?? new List<MediaStream>();
+                if (streams.Any(i => i.Type == MediaStreamType.Audio && (i.Codec ?? string.Empty).IndexOf("aac", StringComparison.OrdinalIgnoreCase) != -1))
+                {
+                    return Path.ChangeExtension(targetFile, ".mkv");
+                }
             }
 
             return Path.ChangeExtension(targetFile, ".mp4");

+ 4 - 1
MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs

@@ -135,7 +135,8 @@ namespace MediaBrowser.Server.Implementations.LiveTv
 
             var channels = _libraryManager.GetItemList(new InternalItemsQuery
             {
-                IncludeItemTypes = new[] { typeof(LiveTvChannel).Name }
+                IncludeItemTypes = new[] { typeof(LiveTvChannel).Name },
+                SortBy = new[] { ItemSortBy.SortName }
 
             }).Cast<LiveTvChannel>();
 
@@ -1515,6 +1516,7 @@ namespace MediaBrowser.Server.Implementations.LiveTv
                     {
                         dto.ChannelName = channel.Name;
                         dto.MediaType = channel.MediaType;
+                        dto.ChannelNumber = channel.Number;
 
                         if (channel.HasImage(ImageType.Primary))
                         {
@@ -1854,6 +1856,7 @@ namespace MediaBrowser.Server.Implementations.LiveTv
                 var channel = tuple.Item2;
 
                 dto.Number = channel.Number;
+                dto.ChannelNumber = channel.Number;
                 dto.ChannelType = channel.ChannelType;
                 dto.ServiceName = GetService(channel).Name;
 

+ 1 - 5
MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs

@@ -1986,10 +1986,6 @@ namespace MediaBrowser.Server.Implementations.Persistence
                     cmd.Parameters.Add(cmd, "@UserId", DbType.Guid).Value = query.User.Id;
                 }
 
-                var whereTextWithoutPaging = whereClauses.Count == 0 ?
-                    string.Empty :
-                    " where " + string.Join(" AND ", whereClauses.ToArray());
-
                 var whereText = whereClauses.Count == 0 ?
                     string.Empty :
                     " where " + string.Join(" AND ", whereClauses.ToArray());
@@ -2025,7 +2021,7 @@ namespace MediaBrowser.Server.Implementations.Persistence
                 }
 
                 cmd.CommandText += GetJoinUserDataText(query);
-                cmd.CommandText += whereTextWithoutPaging;
+                cmd.CommandText += whereText;
 
                 var list = new List<Guid>();
                 var count = 0;

+ 1 - 0
MediaBrowser.ServerApplication/Networking/NetworkManager.cs

@@ -29,6 +29,7 @@ namespace MediaBrowser.ServerApplication.Networking
         /// <returns>IEnumerable{NetworkShare}.</returns>
         public IEnumerable<NetworkShare> GetNetworkShares(string path)
         {
+            Logger.Info("Getting network shares from {0}", path);
             return new ShareCollection(path).OfType<Share>().Select(ToNetworkShare);
         }
 

+ 3 - 1
MediaBrowser.ServerApplication/Networking/NetworkShares.cs

@@ -390,7 +390,9 @@ namespace MediaBrowser.ServerApplication.Networking
                     Type t = (2 == level) ? typeof(SHARE_INFO_2) : typeof(SHARE_INFO_1);
                     int offset = Marshal.SizeOf(t);
 
-                    for (int i = 0, lpItem = pBuffer.ToInt32(); i < entriesRead; i++, lpItem += offset)
+                    var lpItem = pBuffer.ToInt64();
+
+                    for (int i = 0; i < entriesRead; i++, lpItem += offset)
                     {
                         IntPtr pItem = new IntPtr(lpItem);
                         if (1 == level)

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

@@ -2,7 +2,7 @@
 <package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
     <metadata>
         <id>MediaBrowser.Common.Internal</id>
-        <version>3.0.646</version>
+        <version>3.0.647</version>
         <title>MediaBrowser.Common.Internal</title>
         <authors>Luke</authors>
         <owners>ebr,Luke,scottisafool</owners>
@@ -12,7 +12,7 @@
         <description>Contains common components shared by Emby Theater and Emby Server. Not intended for plugin developer consumption.</description>
         <copyright>Copyright © Emby 2013</copyright>
         <dependencies>
-            <dependency id="MediaBrowser.Common" version="3.0.646" />
+            <dependency id="MediaBrowser.Common" version="3.0.647" />
             <dependency id="NLog" version="4.3.1" />
             <dependency id="SimpleInjector" version="3.1.3" />
         </dependencies>

+ 1 - 1
Nuget/MediaBrowser.Common.nuspec

@@ -2,7 +2,7 @@
 <package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
     <metadata>
         <id>MediaBrowser.Common</id>
-        <version>3.0.646</version>
+        <version>3.0.647</version>
         <title>MediaBrowser.Common</title>
         <authors>Emby Team</authors>
         <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">
     <metadata>
         <id>MediaBrowser.Model.Signed</id>
-        <version>3.0.646</version>
+        <version>3.0.647</version>
         <title>MediaBrowser.Model - Signed Edition</title>
         <authors>Emby Team</authors>
         <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">
     <metadata>
         <id>MediaBrowser.Server.Core</id>
-        <version>3.0.646</version>
+        <version>3.0.647</version>
         <title>Media Browser.Server.Core</title>
         <authors>Emby Team</authors>
         <owners>ebr,Luke,scottisafool</owners>
@@ -12,7 +12,7 @@
         <description>Contains core components required to build plugins for Emby Server.</description>
         <copyright>Copyright © Emby 2013</copyright>
         <dependencies>
-            <dependency id="MediaBrowser.Common" version="3.0.646" />
+            <dependency id="MediaBrowser.Common" version="3.0.647" />
 			<dependency id="Interfaces.IO" version="1.0.0.5" />
         </dependencies>
     </metadata>