فهرست منبع

increase chances of stream copy

Luke Pulverenti 8 سال پیش
والد
کامیت
db9eb64e9f
1فایلهای تغییر یافته به همراه11 افزوده شده و 7 حذف شده
  1. 11 7
      MediaBrowser.Api/Playback/BaseStreamingService.cs

+ 11 - 7
MediaBrowser.Api/Playback/BaseStreamingService.cs

@@ -1967,10 +1967,15 @@ namespace MediaBrowser.Api.Playback
                 state.OutputVideoCodec = state.VideoRequest.VideoCodec;
                 state.OutputVideoBitrate = GetVideoBitrateParamValue(state.VideoRequest, state.VideoStream, state.OutputVideoCodec);
 
-                if (state.OutputVideoBitrate.HasValue)
+                if (videoRequest != null)
+                {
+                    TryStreamCopy(state, videoRequest);
+                }
+
+                if (state.OutputVideoBitrate.HasValue && !string.Equals(state.OutputVideoCodec, "copy", StringComparison.OrdinalIgnoreCase))
                 {
                     var resolution = ResolutionNormalizer.Normalize(
-                        state.VideoStream == null ? (int?)null : state.VideoStream.BitRate,
+                        state.VideoStream == null ? (int?) null : state.VideoStream.BitRate,
                         state.OutputVideoBitrate.Value,
                         state.VideoStream == null ? null : state.VideoStream.Codec,
                         state.OutputVideoCodec,
@@ -1980,13 +1985,12 @@ namespace MediaBrowser.Api.Playback
                     videoRequest.MaxWidth = resolution.MaxWidth;
                     videoRequest.MaxHeight = resolution.MaxHeight;
                 }
-            }
 
-            ApplyDeviceProfileSettings(state);
-
-            if (videoRequest != null)
+                ApplyDeviceProfileSettings(state);
+            }
+            else
             {
-                TryStreamCopy(state, videoRequest);
+                ApplyDeviceProfileSettings(state);
             }
 
             state.OutputFilePath = GetOutputFilePath(state);