aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLukePulverenti Luke Pulverenti luke pulverenti <LukePulverenti Luke Pulverenti luke.pulverenti@gmail.com>2012-08-23 18:20:50 -0400
committerLukePulverenti Luke Pulverenti luke pulverenti <LukePulverenti Luke Pulverenti luke.pulverenti@gmail.com>2012-08-23 18:20:50 -0400
commitd09e82dfc36577aa63a680ae1a4aaa2c323efd7e (patch)
treebaa47eb7dfaac2bcd4fbced863a62942b5a016c1
parentf218e6b5832ad2eec2c6391bf2f942ecd6a0330f (diff)
Updated ffprobe to not use WaitForExit, to avoid thread-blocking.
-rw-r--r--MediaBrowser.Controller/FFMpeg/FFProbe.cs13
1 files changed, 9 insertions, 4 deletions
diff --git a/MediaBrowser.Controller/FFMpeg/FFProbe.cs b/MediaBrowser.Controller/FFMpeg/FFProbe.cs
index fac1d4667..831ae50a3 100644
--- a/MediaBrowser.Controller/FFMpeg/FFProbe.cs
+++ b/MediaBrowser.Controller/FFMpeg/FFProbe.cs
@@ -112,6 +112,10 @@ namespace MediaBrowser.Controller.FFMpeg
Process process = new Process();
process.StartInfo = startInfo;
+ process.EnableRaisingEvents = true;
+
+ process.Exited += process_Exited;
+
try
{
process.Start();
@@ -137,10 +141,11 @@ namespace MediaBrowser.Controller.FFMpeg
return null;
}
- finally
- {
- process.Dispose();
- }
+ }
+
+ static void process_Exited(object sender, EventArgs e)
+ {
+ (sender as Process).Dispose();
}
private static string GetFFProbeCachePath(Audio item)