#include <QCoreApplication>
#include <QStringList>
#include <QString>
+#include <QUrl>
#include <QtDebug>
#include "renderjob.h"
if (args.count() >= 7) {
// Remove program name
args.removeFirst();
-
+
bool erase = false;
if (args.at(0) == "-erase") {
erase = true;
QString rendermodule = args.takeFirst();
QString player = args.takeFirst();
QString src = args.takeFirst();
- QString dest = args.takeFirst();
+ QUrl desturl = QUrl::fromEncoded(args.takeFirst().toUtf8());
+ QString dest = desturl.path();
bool dualpass = false;
bool doerase;
+ QString vpre;
+ int vprepos=args.indexOf(QRegExp("vpre=.*"));
+ if (vprepos>=0)
+ vpre=args.at(vprepos);
+ QStringList vprelist=vpre.replace("vpre=","").split(",");
+ if (vprelist.size()>0)
+ args.replaceInStrings(QRegExp("^vpre=.*"),QString("vpre=").append(vprelist.at(0)));
if (args.contains("pass=2")) {
// dual pass encoding
dualpass = true;
RenderJob *job = new RenderJob(doerase, usekuiserver, render, profile, rendermodule, player, src, dest, preargs, args, in, out);
job->start();
if (dualpass) {
+ if (vprelist.size()>1)
+ args.replaceInStrings(QRegExp("^vpre=.*"),QString("vpre=").append(vprelist.at(1)));
+ args.replace(args.indexOf("pass=1"), "pass=2");
args.replace(args.indexOf("pass=1"), "pass=2");
RenderJob *dualjob = new RenderJob(erase, usekuiserver, render, profile, rendermodule, player, src, dest, preargs, args, in, out);
QObject::connect(job, SIGNAL(renderingFinished()), dualjob, SLOT(start()));