2
0
Эх сурвалжийг харах

Merge pull request #2454 from MediaBrowser/dev

Dev
Luke 8 жил өмнө
parent
commit
9afc7ff900

+ 13 - 6
Emby.Common.Implementations/HttpClientManager/HttpClientManager.cs

@@ -458,15 +458,22 @@ namespace Emby.Common.Implementations.HttpClientManager
                 !string.IsNullOrEmpty(options.RequestContent) ||
                 string.Equals(httpMethod, "post", StringComparison.OrdinalIgnoreCase))
             {
-                var bytes = options.RequestContentBytes ??
-                    Encoding.UTF8.GetBytes(options.RequestContent ?? string.Empty);
+                try
+                {
+                    var bytes = options.RequestContentBytes ??
+                        Encoding.UTF8.GetBytes(options.RequestContent ?? string.Empty);
 
-                httpWebRequest.ContentType = options.RequestContentType ?? "application/x-www-form-urlencoded";
+                    httpWebRequest.ContentType = options.RequestContentType ?? "application/x-www-form-urlencoded";
 
 #if NET46
-                httpWebRequest.ContentLength = bytes.Length;
-#endif    
-                (await httpWebRequest.GetRequestStreamAsync().ConfigureAwait(false)).Write(bytes, 0, bytes.Length);
+                    httpWebRequest.ContentLength = bytes.Length;
+#endif
+                    (await httpWebRequest.GetRequestStreamAsync().ConfigureAwait(false)).Write(bytes, 0, bytes.Length);
+                }
+                catch (Exception ex)
+                {
+                    throw new HttpException(ex.Message) { IsTimedOut = true };
+                }
             }
 
             if (options.ResourcePool != null)

+ 2 - 2
Emby.Server.Implementations/Emby.Server.Implementations.csproj

@@ -309,8 +309,8 @@
       <Project>{4f26d5d8-a7b0-42b3-ba42-7cb7d245934e}</Project>
       <Name>SocketHttpListener.Portable</Name>
     </ProjectReference>
-    <Reference Include="Emby.XmlTv, Version=1.0.6241.4924, Culture=neutral, processorArchitecture=MSIL">
-      <HintPath>..\packages\Emby.XmlTv.1.0.5\lib\portable-net45+win8\Emby.XmlTv.dll</HintPath>
+    <Reference Include="Emby.XmlTv, Version=1.0.6249.32870, Culture=neutral, processorArchitecture=MSIL">
+      <HintPath>..\packages\Emby.XmlTv.1.0.6\lib\portable-net45+win8\Emby.XmlTv.dll</HintPath>
       <Private>True</Private>
     </Reference>
     <Reference Include="MediaBrowser.Naming, Version=1.0.6201.24431, Culture=neutral, processorArchitecture=MSIL">

+ 1 - 0
Emby.Server.Implementations/LiveTv/EmbyTV/EncodedRecorder.cs

@@ -155,6 +155,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV
             var durationParam = " -t " + _mediaEncoder.GetTimeParameter(duration.Ticks);
             var inputModifiers = "-fflags +genpts -async 1 -vsync -1";
             var mapArgs = string.Equals(OutputFormat, "mkv", StringComparison.OrdinalIgnoreCase) ? "-map 0" : "-sn";
+            mapArgs = "-sn";
             var commandLineArgs = "-i \"{0}\"{4} " + mapArgs + " {2} -map_metadata -1 -threads 0 {3} -y \"{1}\"";
 
             long startTimeTicks = 0;

+ 9 - 6
Emby.Server.Implementations/LiveTv/ProgramImageProvider.cs

@@ -50,13 +50,16 @@ namespace Emby.Server.Implementations.LiveTv
                 {
                     var channel = _liveTvManager.GetInternalChannel(liveTvItem.ChannelId);
 
-                    var response = await service.GetProgramImageAsync(GetItemExternalId(liveTvItem), GetItemExternalId(channel), cancellationToken).ConfigureAwait(false);
-
-                    if (response != null)
+                    if (channel != null)
                     {
-                        imageResponse.HasImage = true;
-                        imageResponse.Stream = response.Stream;
-                        imageResponse.Format = response.Format;
+                        var response = await service.GetProgramImageAsync(GetItemExternalId(liveTvItem), GetItemExternalId(channel), cancellationToken).ConfigureAwait(false);
+
+                        if (response != null)
+                        {
+                            imageResponse.HasImage = true;
+                            imageResponse.Stream = response.Stream;
+                            imageResponse.Format = response.Format;
+                        }
                     }
                 }
                 catch (NotImplementedException)

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

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Emby.XmlTv" version="1.0.5" targetFramework="portable45-net45+win8" />
+  <package id="Emby.XmlTv" version="1.0.6" targetFramework="portable45-net45+win8" />
   <package id="MediaBrowser.Naming" version="1.0.4" targetFramework="portable45-net45+win8" />
   <package id="SQLitePCL.pretty" version="1.1.0" targetFramework="portable45-net45+win8" />
   <package id="SQLitePCLRaw.core" version="1.1.1" targetFramework="portable45-net45+win8" />

+ 27 - 27
MediaBrowser.MediaEncoding/Encoder/EncodingHelper.cs

@@ -1486,33 +1486,33 @@ namespace MediaBrowser.MediaEncoding.Encoder
                     //inputModifier += " -noaccurate_seek";
                 }
 
-                if (!string.IsNullOrWhiteSpace(state.InputContainer))
-                {
-                    var inputFormat = GetInputFormat(state.InputContainer);
-                    if (!string.IsNullOrWhiteSpace(inputFormat))
-                    {
-                        inputModifier += " -f " + inputFormat;
-                    }
-                }
-
-                if (state.RunTimeTicks.HasValue)
-                {
-                    foreach (var stream in state.MediaSource.MediaStreams)
-                    {
-                        if (!stream.IsExternal && stream.Type != MediaStreamType.Subtitle)
-                        {
-                            if (!string.IsNullOrWhiteSpace(stream.Codec) && stream.Index != -1)
-                            {
-                                var decoder = GetDecoderFromCodec(stream.Codec);
-
-                                if (!string.IsNullOrWhiteSpace(decoder))
-                                {
-                                    inputModifier += " -codec:" + stream.Index.ToString(_usCulture) + " " + decoder;
-                                }
-                            }
-                        }
-                    }
-                }
+                //if (!string.IsNullOrWhiteSpace(state.InputContainer))
+                //{
+                //    var inputFormat = GetInputFormat(state.InputContainer);
+                //    if (!string.IsNullOrWhiteSpace(inputFormat))
+                //    {
+                //        inputModifier += " -f " + inputFormat;
+                //    }
+                //}
+
+                //if (state.RunTimeTicks.HasValue)
+                //{
+                //    foreach (var stream in state.MediaSource.MediaStreams)
+                //    {
+                //        if (!stream.IsExternal && stream.Type != MediaStreamType.Subtitle)
+                //        {
+                //            if (!string.IsNullOrWhiteSpace(stream.Codec) && stream.Index != -1)
+                //            {
+                //                var decoder = GetDecoderFromCodec(stream.Codec);
+
+                //                if (!string.IsNullOrWhiteSpace(decoder))
+                //                {
+                //                    inputModifier += " -codec:" + stream.Index.ToString(_usCulture) + " " + decoder;
+                //                }
+                //            }
+                //        }
+                //    }
+                //}
             }
 
             return inputModifier;

+ 9 - 5
MediaBrowser.Providers/Omdb/OmdbProvider.cs

@@ -385,10 +385,11 @@ namespace MediaBrowser.Providers.Omdb
         {
             T item = itemResult.Item;
 
+            var isConfiguredForEnglish = IsConfiguredForEnglish(item);
+
             // Grab series genres because imdb data is better than tvdb. Leave movies alone
             // But only do it if english is the preferred language because this data will not be localized
-            if (ShouldFetchGenres(item) &&
-                !string.IsNullOrWhiteSpace(result.Genre))
+            if (isConfiguredForEnglish && !string.IsNullOrWhiteSpace(result.Genre))
             {
                 item.Genres.Clear();
 
@@ -418,8 +419,11 @@ namespace MediaBrowser.Providers.Omdb
                 hasAwards.AwardSummary = WebUtility.HtmlDecode(result.Awards);
             }
 
-            // Imdb plots are usually pretty short
-            item.Overview = result.Plot;
+            if (isConfiguredForEnglish)
+            {
+                // Omdb is currently english only, so for other languages skip this and let secondary providers fill it in
+                item.Overview = result.Plot;
+            }
 
             //if (!string.IsNullOrWhiteSpace(result.Director))
             //{
@@ -462,7 +466,7 @@ namespace MediaBrowser.Providers.Omdb
             //}
         }
 
-        private bool ShouldFetchGenres(BaseItem item)
+        private bool IsConfiguredForEnglish(BaseItem item)
         {
             var lang = item.GetPreferredMetadataLanguage();