aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2015-11-20 21:04:50 -0500
committerLuke Pulverenti <luke.pulverenti@gmail.com>2015-11-20 21:04:50 -0500
commitd6418e6e9c2a0b797aae9f611c10cbc380b5fd16 (patch)
tree65de24ce534e233759bfa826cb7033a357443511
parent435c1416fc6b97140ad208930384f4e7b9437daa (diff)
update hls
-rw-r--r--MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs8
1 files changed, 7 insertions, 1 deletions
diff --git a/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs b/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs
index 6ca2677e7..4d7a10f02 100644
--- a/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs
+++ b/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs
@@ -173,11 +173,14 @@ namespace MediaBrowser.Api.Playback.Hls
}
await ApiEntryPoint.Instance.TranscodingStartLock.WaitAsync(cancellationTokenSource.Token).ConfigureAwait(false);
+ var released = false;
try
{
if (FileSystem.FileExists(segmentPath))
{
job = ApiEntryPoint.Instance.OnTranscodeBeginRequest(playlistPath, TranscodingJobType);
+ ApiEntryPoint.Instance.TranscodingStartLock.Release();
+ released = true;
return await GetSegmentResult(state, playlistPath, segmentPath, requestedIndex, job, cancellationToken).ConfigureAwait(false);
}
else
@@ -238,7 +241,10 @@ namespace MediaBrowser.Api.Playback.Hls
}
finally
{
- ApiEntryPoint.Instance.TranscodingStartLock.Release();
+ if (!released)
+ {
+ ApiEntryPoint.Instance.TranscodingStartLock.Release();
+ }
}
//Logger.Info("waiting for {0}", segmentPath);