aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Api/Playback/Progressive/BaseProgressiveStreamingService.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Api/Playback/Progressive/BaseProgressiveStreamingService.cs')
-rw-r--r--MediaBrowser.Api/Playback/Progressive/BaseProgressiveStreamingService.cs91
1 files changed, 0 insertions, 91 deletions
diff --git a/MediaBrowser.Api/Playback/Progressive/BaseProgressiveStreamingService.cs b/MediaBrowser.Api/Playback/Progressive/BaseProgressiveStreamingService.cs
index 09f1ab567..bc1c86eee 100644
--- a/MediaBrowser.Api/Playback/Progressive/BaseProgressiveStreamingService.cs
+++ b/MediaBrowser.Api/Playback/Progressive/BaseProgressiveStreamingService.cs
@@ -197,97 +197,6 @@ namespace MediaBrowser.Api.Playback.Progressive
}
}
- private readonly long _gapLengthInTicks = TimeSpan.FromMinutes(3).Ticks;
-
- private long ThrottleCallack(long currentBytesPerSecond, long bytesWritten, long originalBytesPerSecond, TranscodingJob job)
- {
- //var job = string.IsNullOrEmpty(request.TranscodingJobId) ?
- //null :
- //ApiEntryPoint.Instance.GetTranscodingJob(request.TranscodingJobId);
-
- //var limits = new List<long>();
- //if (state.InputBitrate.HasValue)
- //{
- // // Bytes per second
- // limits.Add((state.InputBitrate.Value / 8));
- //}
- //if (state.InputFileSize.HasValue && state.RunTimeTicks.HasValue)
- //{
- // var totalSeconds = TimeSpan.FromTicks(state.RunTimeTicks.Value).TotalSeconds;
-
- // if (totalSeconds > 1)
- // {
- // var timeBasedLimit = state.InputFileSize.Value / totalSeconds;
- // limits.Add(Convert.ToInt64(timeBasedLimit));
- // }
- //}
-
- //// Take the greater of the above to methods, just to be safe
- //var throttleLimit = limits.Count > 0 ? limits.First() : 0;
-
- //// Pad to play it safe
- //var bytesPerSecond = Convert.ToInt64(1.05 * throttleLimit);
-
- //// Don't even start evaluating this until at least two minutes have content have been consumed
- //var targetGap = throttleLimit * 120;
-
- var bytesDownloaded = job.BytesDownloaded ?? 0;
- var transcodingPositionTicks = job.TranscodingPositionTicks ?? 0;
- var downloadPositionTicks = job.DownloadPositionTicks ?? 0;
-
- var path = job.Path;
-
- if (bytesDownloaded > 0 && transcodingPositionTicks > 0)
- {
- // Progressive Streaming - byte-based consideration
-
- try
- {
- var bytesTranscoded = job.BytesTranscoded ?? new FileInfo(path).Length;
-
- // Estimate the bytes the transcoder should be ahead
- double gapFactor = _gapLengthInTicks;
- gapFactor /= transcodingPositionTicks;
- var targetGap = bytesTranscoded * gapFactor;
-
- var gap = bytesTranscoded - bytesDownloaded;
-
- if (gap < targetGap)
- {
- //Logger.Debug("Not throttling transcoder gap {0} target gap {1} bytes downloaded {2}", gap, targetGap, bytesDownloaded);
- return 0;
- }
-
- //Logger.Debug("Throttling transcoder gap {0} target gap {1} bytes downloaded {2}", gap, targetGap, bytesDownloaded);
- }
- catch
- {
- //Logger.Error("Error getting output size");
- }
- }
- else if (downloadPositionTicks > 0 && transcodingPositionTicks > 0)
- {
- // HLS - time-based consideration
-
- var targetGap = _gapLengthInTicks;
- var gap = transcodingPositionTicks - downloadPositionTicks;
-
- if (gap < targetGap)
- {
- //Logger.Debug("Not throttling transcoder gap {0} target gap {1}", gap, targetGap);
- return 0;
- }
-
- //Logger.Debug("Throttling transcoder gap {0} target gap {1}", gap, targetGap);
- }
- else
- {
- //Logger.Debug("No throttle data for " + path);
- }
-
- return originalBytesPerSecond;
- }
-
/// <summary>
/// Gets the static remote stream result.
/// </summary>