Мне сложно сдать -vo
аргумент для mplayer с помощью QProcess
,
Вот минимальный пример:
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow)
{
ui->setupUi(this);
QString program;
program = "C:\\mplayer-svn-38008\\mplayer.exe";
QStringList arguments;
arguments << "-vo gl" << "C:\\test.mp4";
QProcess *m_process = new QProcess(this);
m_process->start(program, arguments);
}
Процесс выводит:
Неизвестная опция в командной строке: -vo gl
использование того же аргумента в оболочке Windows приводит к правильному поведению:
>mplayer -vo gl C:/test.mp4
Кроме того, удалив этот аргумент из QStringList
работает.
Почему -vo
Опция распознается из командной строки, но не из QProcess
?
Вы должны отделить каждый аргумент, разделенный пробелом:
arguments << "-vo"<< "gl" << "C:\\test.mp4";
Других решений пока нет …