关于ffmpeg命令行 命令连续输入的问题
请问如何写 能让这三个命令连续执行呢?
会出现QProcess::start: Process is already running问题
QProcess::start()
异步执行一个进程,你不能连续调用start()
,你应该调用QProcess::waitForFnished()
或监听QProcess::finished()
信号来确保之前进行的命令已经完成,然后你才能执行下一个命令。
如创建了一个线程 mplayerProcess = new QProcess(this);
使用线程打开另外一个程序 mplayerProcess->start(tr(paths, args);
当被调用的程序退出时,一定要加这个判断:
if(!mplayerProcess->waitForFinished(3000))
{......}
否则你再接着使用该线程时,可能会提示:QProcess::start: Process is already running 。