Merge pull request #1893 from MediaBrowser/dev

Dev
This commit is contained in:
Luke 2016-06-29 21:32:20 -04:00 committed by GitHub
commit 808ff8f054
2 changed files with 16 additions and 15 deletions

View File

@ -335,6 +335,7 @@ namespace MediaBrowser.Server.Startup.Common
foreach (var entryPoint in GetExports<IServerEntryPoint>().ToList()) foreach (var entryPoint in GetExports<IServerEntryPoint>().ToList())
{ {
var name = entryPoint.GetType().FullName; var name = entryPoint.GetType().FullName;
Logger.Info("Starting entry point {0}", name);
try try
{ {
entryPoint.Run(); entryPoint.Run();
@ -343,8 +344,9 @@ namespace MediaBrowser.Server.Startup.Common
{ {
Logger.ErrorException("Error in {0}", ex, name); Logger.ErrorException("Error in {0}", ex, name);
} }
Logger.Info("Entry point completed: {0}", name);
} }
Logger.Info("Entry points complete"); Logger.Info("All entry points have started");
LogManager.RemoveConsoleOutput(); LogManager.RemoveConsoleOutput();
} }

View File

@ -60,10 +60,6 @@ namespace MediaBrowser.Server.Startup.Common.FFMpeg
var downloadInfo = _ffmpegInstallInfo; var downloadInfo = _ffmpegInstallInfo;
var version = downloadInfo.Version; var version = downloadInfo.Version;
if (string.Equals(version, "0", StringComparison.OrdinalIgnoreCase))
{
return new FFMpegInfo();
}
if (string.Equals(version, "path", StringComparison.OrdinalIgnoreCase)) if (string.Equals(version, "path", StringComparison.OrdinalIgnoreCase))
{ {
@ -75,6 +71,11 @@ namespace MediaBrowser.Server.Startup.Common.FFMpeg
}; };
} }
if (string.Equals(version, "0", StringComparison.OrdinalIgnoreCase))
{
return new FFMpegInfo();
}
var rootEncoderPath = Path.Combine(_appPaths.ProgramDataPath, "ffmpeg"); var rootEncoderPath = Path.Combine(_appPaths.ProgramDataPath, "ffmpeg");
var versionedDirectoryPath = Path.Combine(rootEncoderPath, version); var versionedDirectoryPath = Path.Combine(rootEncoderPath, version);
@ -97,7 +98,11 @@ namespace MediaBrowser.Server.Startup.Common.FFMpeg
// No older version. Need to download and block until complete // No older version. Need to download and block until complete
if (existingVersion == null) if (existingVersion == null)
{ {
await DownloadFFMpeg(downloadInfo, versionedDirectoryPath, progress).ConfigureAwait(false); var success = await DownloadFFMpeg(downloadInfo, versionedDirectoryPath, progress).ConfigureAwait(false);
if (!success)
{
return new FFMpegInfo();
}
} }
else else
{ {
@ -179,7 +184,7 @@ namespace MediaBrowser.Server.Startup.Common.FFMpeg
return null; return null;
} }
private async Task DownloadFFMpeg(FFMpegInstallInfo downloadinfo, string directory, IProgress<double> progress) private async Task<bool> DownloadFFMpeg(FFMpegInstallInfo downloadinfo, string directory, IProgress<double> progress)
{ {
foreach (var url in downloadinfo.DownloadUrls) foreach (var url in downloadinfo.DownloadUrls)
{ {
@ -196,20 +201,14 @@ namespace MediaBrowser.Server.Startup.Common.FFMpeg
}).ConfigureAwait(false); }).ConfigureAwait(false);
ExtractFFMpeg(downloadinfo, tempFile, directory); ExtractFFMpeg(downloadinfo, tempFile, directory);
return; return true;
} }
catch (Exception ex) catch (Exception ex)
{ {
_logger.ErrorException("Error downloading {0}", ex, url); _logger.ErrorException("Error downloading {0}", ex, url);
} }
} }
return false;
if (downloadinfo.DownloadUrls.Length == 0)
{
throw new ApplicationException("ffmpeg unvailable. Please install it and start the server with two command line arguments: -ffmpeg \"{PATH}\" and -ffprobe \"{PATH}\"");
}
throw new ApplicationException("Unable to download required components. Please try again later.");
} }
private void ExtractFFMpeg(FFMpegInstallInfo downloadinfo, string tempFile, string targetFolder) private void ExtractFFMpeg(FFMpegInstallInfo downloadinfo, string tempFile, string targetFolder)