1
我想在单个ffmpeg进程中运行这些转换任务,但我不知道该怎么做。ffmpeg在一个进程中同时执行多个任务ID
ffmpeg -i video1.mkv output1.mp4
ffmpeg -i video2.mkv output2.mp4
ffmpeg -i video3.mkv output3.mp4
我曾尝试使用字符 “&” 来分隔这样的任务,
string parameters = "-i video1.mkv output1.mp4 & -i video2.mkv output2.mp4 & -i video3.mkv output3.mp4";
var processInfo = new ProcessStartInfo();
processInfo.FileName = "ffmpeg.exe";
processInfo.Arguments = parameters;
processInfo.CreateNoWindow = true;
processInfo.UseShellExecute = false;
using (var process = new Process())
{
process.StartInfo = processInfo;
process.Start();
process.WaitForExit();
}
它不工作。而另一个分隔符&&
|
;
也不起作用。
我曾尝试在cmd.exe的这个代码:
ffmpeg -i video1.mkv output1.mp4 & ffmpeg -i video2.mkv output2.mp4 & ffmpeg -i video3.mkv output3.mp4
它产生3个进程ID的,我不想这样做。我希望能够一次执行3次转换的单个进程。那可能吗?
谢谢。
ffmpeg的是命令行程序。每次调用都会产生一个进程这是没有办法的。也许更好的问题是“为什么你需要它是一个单一的过程?”。 –