diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-06-11 22:59:38 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-06-11 22:59:38 -0400 |
| commit | 456dea09dfe3007d218280a0a7b655879b9bab2a (patch) | |
| tree | 778e17f9dd63078a80e58cfeb46a8a7b5e87bfc2 | |
| parent | 0e55f3de58496e867f1744d3e1690cf2d3fc5062 (diff) | |
don't cache encoded media on resume
| -rw-r--r-- | MediaBrowser.Api/ApiEntryPoint.cs | 16 | ||||
| -rw-r--r-- | MediaBrowser.Api/Playback/BaseStreamingService.cs | 2 |
2 files changed, 13 insertions, 5 deletions
diff --git a/MediaBrowser.Api/ApiEntryPoint.cs b/MediaBrowser.Api/ApiEntryPoint.cs index a2ed1d7722..431b6d6151 100644 --- a/MediaBrowser.Api/ApiEntryPoint.cs +++ b/MediaBrowser.Api/ApiEntryPoint.cs @@ -82,7 +82,9 @@ namespace MediaBrowser.Api /// <param name="path">The path.</param> /// <param name="type">The type.</param> /// <param name="process">The process.</param> - public void OnTranscodeBeginning(string path, TranscodingJobType type, Process process) + /// <param name="isVideo">if set to <c>true</c> [is video].</param> + /// <param name="startTimeTicks">The start time ticks.</param> + public void OnTranscodeBeginning(string path, TranscodingJobType type, Process process, bool isVideo, long? startTimeTicks) { lock (_activeTranscodingJobs) { @@ -91,7 +93,9 @@ namespace MediaBrowser.Api Type = type, Path = path, Process = process, - ActiveRequestCount = 1 + ActiveRequestCount = 1, + IsVideo = isVideo, + StartTimeTicks = startTimeTicks }); } } @@ -262,7 +266,7 @@ namespace MediaBrowser.Api } catch (InvalidOperationException) { - + } catch (NotSupportedException) { @@ -273,7 +277,8 @@ namespace MediaBrowser.Api process.Dispose(); // If it didn't complete successfully cleanup the partial files - if (!hasExitedSuccessfully) + // Also don't cache output from resume points + if (!hasExitedSuccessfully || job.StartTimeTicks.HasValue) { Logger.Info("Deleting partial stream file(s) {0}", job.Path); @@ -364,6 +369,9 @@ namespace MediaBrowser.Api /// </summary> /// <value>The kill timer.</value> public Timer KillTimer { get; set; } + + public bool IsVideo { get; set; } + public long? StartTimeTicks { get; set; } } /// <summary> diff --git a/MediaBrowser.Api/Playback/BaseStreamingService.cs b/MediaBrowser.Api/Playback/BaseStreamingService.cs index 4886af9163..1c1b569d7a 100644 --- a/MediaBrowser.Api/Playback/BaseStreamingService.cs +++ b/MediaBrowser.Api/Playback/BaseStreamingService.cs @@ -598,7 +598,7 @@ namespace MediaBrowser.Api.Playback EnableRaisingEvents = true }; - ApiEntryPoint.Instance.OnTranscodeBeginning(outputPath, TranscodingJobType, process); + ApiEntryPoint.Instance.OnTranscodeBeginning(outputPath, TranscodingJobType, process, video != null, state.Request.StartTimeTicks); Logger.Info(process.StartInfo.FileName + " " + process.StartInfo.Arguments); |
