Я использую службу Windows для выполнения ffmpeg.exe
для преобразования видеофайлов.Я делаю это, запуская процесс в c # .net .Проблема в том, что
Мой код в OnStart () службы Windows выглядит следующим образом:
FilArgs = string.Format("-i {0} -ar 22050 -qscale 1 {1}", InputFile, OutputFile);
Process proc;
proc = new Process();
try
{
proc.StartInfo.FileName = spath + "\\ffmpeg\\ffmpeg.exe";
proc.StartInfo.Arguments = FilArgs;
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.CreateNoWindow = false;
proc.StartInfo.RedirectStandardOutput = true;
proc.StartInfo.RedirectStandardError = true;
eventLog1.WriteEntry("Going to start process of convertion");
proc.Start();
string StdOutVideo = proc.StandardOutput.ReadToEnd();
string StdErrVideo = proc.StandardError.ReadToEnd();
eventLog1.WriteEntry("Convertion Successful");
eventLog1.WriteEntry(StdErrVideo);
}
catch (Exception ex)
{
eventLog1.WriteEntry("Convertion Failed");
eventLog1.WriteEntry(ex.ToString());
}
finally
{
proc.WaitForExit();
proc.Close();
}
, когда я пытался конвертировать большие видеофайлы (я испытал это, когда размер файла был> 14 МБ), как упоминалось выше, служба не запускается и находится в состоянии «запуск».
Функция ffmpeg при непосредственном запуске из командной строки также отлично работает для больших файлов.
Любойподскажите пожалуйста как это решить ...