diff options
| author | LukePulverenti Luke Pulverenti luke pulverenti <LukePulverenti Luke Pulverenti luke.pulverenti@gmail.com> | 2012-08-23 16:51:10 -0400 |
|---|---|---|
| committer | LukePulverenti Luke Pulverenti luke pulverenti <LukePulverenti Luke Pulverenti luke.pulverenti@gmail.com> | 2012-08-23 16:51:10 -0400 |
| commit | f218e6b5832ad2eec2c6391bf2f942ecd6a0330f (patch) | |
| tree | 34b3de714c5769da5e2f50aece3aa56b4af58c41 /MediaBrowser.Controller/FFMpeg | |
| parent | 8d693fd2ab2fecb4e15801c5d7104678ca791432 (diff) | |
More comments and cleanup. Added special feature provider for movies
Diffstat (limited to 'MediaBrowser.Controller/FFMpeg')
| -rw-r--r-- | MediaBrowser.Controller/FFMpeg/FFProbe.cs | 24 |
1 files changed, 18 insertions, 6 deletions
diff --git a/MediaBrowser.Controller/FFMpeg/FFProbe.cs b/MediaBrowser.Controller/FFMpeg/FFProbe.cs index 83f70af3ad..fac1d46670 100644 --- a/MediaBrowser.Controller/FFMpeg/FFProbe.cs +++ b/MediaBrowser.Controller/FFMpeg/FFProbe.cs @@ -13,12 +13,15 @@ namespace MediaBrowser.Controller.FFMpeg /// </summary>
public static class FFProbe
{
+ /// <summary>
+ /// Runs FFProbe against an Audio file, caches the result and returns the output
+ /// </summary>
public static FFProbeResult Run(Audio item)
{
// Use try catch to avoid having to use File.Exists
try
{
- return GetCachedResult(GetFFProbeAudioCachePath(item));
+ return GetCachedResult(GetFFProbeCachePath(item));
}
catch (FileNotFoundException)
{
@@ -31,16 +34,22 @@ namespace MediaBrowser.Controller.FFMpeg FFProbeResult result = Run(item.Path);
// Fire and forget
- CacheResult(result, GetFFProbeAudioCachePath(item));
+ CacheResult(result, GetFFProbeCachePath(item));
return result;
}
+ /// <summary>
+ /// Gets the cached result of an FFProbe operation
+ /// </summary>
private static FFProbeResult GetCachedResult(string path)
{
return ProtobufSerializer.DeserializeFromFile<FFProbeResult>(path);
}
+ /// <summary>
+ /// Caches the result of an FFProbe operation
+ /// </summary>
private static async void CacheResult(FFProbeResult result, string outputCachePath)
{
await Task.Run(() =>
@@ -56,12 +65,15 @@ namespace MediaBrowser.Controller.FFMpeg }).ConfigureAwait(false);
}
+ /// <summary>
+ /// Runs FFProbe against a Video file, caches the result and returns the output
+ /// </summary>
public static FFProbeResult Run(Video item)
{
// Use try catch to avoid having to use File.Exists
try
{
- return GetCachedResult(GetFFProbeVideoCachePath(item));
+ return GetCachedResult(GetFFProbeCachePath(item));
}
catch (FileNotFoundException)
{
@@ -74,7 +86,7 @@ namespace MediaBrowser.Controller.FFMpeg FFProbeResult result = Run(item.Path);
// Fire and forget
- CacheResult(result, GetFFProbeVideoCachePath(item));
+ CacheResult(result, GetFFProbeCachePath(item));
return result;
}
@@ -131,14 +143,14 @@ namespace MediaBrowser.Controller.FFMpeg }
}
- private static string GetFFProbeAudioCachePath(BaseEntity item)
+ private static string GetFFProbeCachePath(Audio item)
{
string outputDirectory = Path.Combine(Kernel.Instance.ApplicationPaths.FFProbeAudioCacheDirectory, item.Id.ToString().Substring(0, 1));
return Path.Combine(outputDirectory, item.Id + "-" + item.DateModified.Ticks + ".pb");
}
- private static string GetFFProbeVideoCachePath(BaseEntity item)
+ private static string GetFFProbeCachePath(Video item)
{
string outputDirectory = Path.Combine(Kernel.Instance.ApplicationPaths.FFProbeVideoCacheDirectory, item.Id.ToString().Substring(0, 1));
|
