gpt4 book ai didi

c# - ffmpeg在一个进程ID中一次执行多个任务

转载 作者:行者123 更新时间:2023-12-04 22:55:44 25 4
gpt4 key购买 nike

我想在单个 ffmpeg 进程中运行这些转换任务,但我不知道该怎么做。

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 -i video1.mkv -i video2.mkv -i video3.mkv -map 0 output1.mp4 -map 1 output2.mp4 -map 2 output3.mp4

关于c# - ffmpeg在一个进程ID中一次执行多个任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45174862/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com