我想为ffmpeg输出创建一个解析器.但是当只运行ffmpeg时
strCmdText = "-y -i \"" + path + "\"";
strCmdText += " -async 1 -vf yadif -c:v libx264 -b:v 1024k -r 30 -bf 1 -an nul.avi";
Process.Start(new ProcessStartInfo("lib\\ffmpeg.exe", strCmdText));
Run Code Online (Sandbox Code Playgroud)
它比批量启动慢2/3:
set FFMPEG="ffmpeg\ffmpeg.exe"
%FFMPEG% -y -i %1 -async 1 -vf yadif -c:v libx264 -b:v 1024k -r 30 -bf 1 -an -pass 1 nul.avi
Run Code Online (Sandbox Code Playgroud)
在C#中运行它的fps速率为130(CPU:100%),但运行它与批处理它有400 fps(CPU 75%).
在两种方式中,RAM都是使用的,#Handels和#Threads也是如此.将进程优先级设置为High/Live不会解决此问题,也不会在单独的线程中运行该进程.
这是正常的,还是可以修复?