https://blog.51cto.com/u_15075510/3627652 在C#中,如果你想要使用FFmpeg设置一个超时时间,并在指定时间后停止FFmpeg进程,你可以使用System.Diagnostics.Process类来启动FFmpeg,并通过WaitForExit方法等待一段时间后终止进程。以下是一个简单的示例代码: using System.Diagnostics; using System.Threading; class Program { static void Main(string[] args) { ProcessStartInfo startInfo = new ProcessStartInfo { FileName = "ffmpeg", Arguments = "你的FFmpeg参数", UseShellExecute = false, RedirectStandardError = true, CreateNoWindow = true }; using (Process process = Process.Start(startInfo)) { bool exited = process.WaitForExit(30000); // 设置超时时间为30秒 if (!exited) { // 如果超时,则终止进程 try { process.Kill(); } catch (Exception ex) { // 处理异常,例如进程可能已经退出 Console.WriteLine(ex.Message); } } } } } 在这个示例中,WaitForExit(30000)会等待FFmpeg进程退出或者30秒钟,然后返回true如果进程在那个时间内退出,或者在超时后返回false。如果WaitForExit返回false,则调用Kill方法停止FFmpeg进程。注意,你需要处理可能发生的任何异常,例如尝试杀死一个已经退出的进程会引发异常。