Added CLI option to skip the x264 version test.

This commit is contained in:
LoRd_MuldeR 2013-07-07 16:11:47 +02:00
parent 74edad10e7
commit 2adc1ee50c
5 changed files with 26 additions and 8 deletions

View File

@ -104,7 +104,7 @@ static const unsigned int REV_MULT = 10000;
// Constructor & Destructor // Constructor & Destructor
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
EncodeThread::EncodeThread(const QString &sourceFileName, const QString &outputFileName, const OptionsModel *options, const QString &binDir, bool x264_x64, bool x264_10bit, bool avs2yuv_x64, int processPriroity) EncodeThread::EncodeThread(const QString &sourceFileName, const QString &outputFileName, const OptionsModel *options, const QString &binDir, bool x264_x64, bool x264_10bit, bool avs2yuv_x64, bool const skipVersionTest, int processPriroity)
: :
m_jobId(QUuid::createUuid()), m_jobId(QUuid::createUuid()),
m_sourceFileName(sourceFileName), m_sourceFileName(sourceFileName),
@ -114,6 +114,7 @@ EncodeThread::EncodeThread(const QString &sourceFileName, const QString &outputF
m_x264_x64(x264_x64), m_x264_x64(x264_x64),
m_x264_10bit(x264_10bit), m_x264_10bit(x264_10bit),
m_avs2yuv_x64(avs2yuv_x64), m_avs2yuv_x64(avs2yuv_x64),
m_skipVersionTest(skipVersionTest),
m_processPriority(processPriroity), m_processPriority(processPriroity),
m_handle_jobObject(NULL), m_handle_jobObject(NULL),
m_semaphorePaused(0) m_semaphorePaused(0)
@ -629,6 +630,12 @@ QStringList EncodeThread::buildCommandLine(bool usePipe, bool use10Bit, unsigned
unsigned int EncodeThread::checkVersionX264(bool use_x64, bool use_10bit, bool &modified) unsigned int EncodeThread::checkVersionX264(bool use_x64, bool use_10bit, bool &modified)
{ {
if(m_skipVersionTest)
{
log("Warning: Skipping x264 version check this time!");
return (999 * REV_MULT) + (9999 % REV_MULT);
}
QProcess process; QProcess process;
QStringList cmdLine = QStringList() << "--version"; QStringList cmdLine = QStringList() << "--version";

View File

@ -37,7 +37,7 @@ class EncodeThread : public QThread
Q_OBJECT Q_OBJECT
public: public:
EncodeThread(const QString &sourceFileName, const QString &outputFileName, const OptionsModel *options, const QString &binDir, bool x264_x64, bool x264_10bit, bool avs2yuv_x64, int processPriroity); EncodeThread(const QString &sourceFileName, const QString &outputFileName, const OptionsModel *options, const QString &binDir, bool x264_x64, bool x264_10bit, bool avs2yuv_x64, bool const skipVersionTest, int processPriroity);
~EncodeThread(void); ~EncodeThread(void);
QUuid getId(void) { return this->m_jobId; }; QUuid getId(void) { return this->m_jobId; };
@ -76,6 +76,7 @@ protected:
const bool m_x264_x64; const bool m_x264_x64;
const bool m_x264_10bit; const bool m_x264_10bit;
const bool m_avs2yuv_x64; const bool m_avs2yuv_x64;
const bool m_skipVersionTest;
const int m_processPriority; const int m_processPriority;
//Flags //Flags

View File

@ -21,11 +21,11 @@
#define VER_X264_MAJOR 2 #define VER_X264_MAJOR 2
#define VER_X264_MINOR 1 #define VER_X264_MINOR 1
#define VER_X264_PATCH 6 #define VER_X264_PATCH 7
#define VER_X264_BUILD 502 #define VER_X264_BUILD 510
#define VER_X264_MINIMUM_REV 2282 #define VER_X264_MINIMUM_REV 2339
#define VER_X264_CURRENT_API 133 #define VER_X264_CURRENT_API 135
#define VER_X264_AVS2YUV_VER 242 #define VER_X264_AVS2YUV_VER 242
#define VER_X264_PRE_RELEASE (0) #define VER_X264_PRE_RELEASE (0)

View File

@ -75,6 +75,7 @@ MainWindow::MainWindow(const x264_cpu_t *const cpuFeatures)
m_droppedFiles(NULL), m_droppedFiles(NULL),
m_preferences(NULL), m_preferences(NULL),
m_recentlyUsed(NULL), m_recentlyUsed(NULL),
m_skipVersionTest(false),
m_firstShow(true) m_firstShow(true)
{ {
//Init the dialog, from the .ui file //Init the dialog, from the .ui file
@ -712,7 +713,7 @@ void MainWindow::init(void)
} }
if(!binaryTypeOkay) if(!binaryTypeOkay)
{ {
QMessageBox::critical(this, tr("Invalid File!"), tr("<nobr>At least on required tool is not a valid Win32 or Win64 binary:<br>%1<br><br>Please re-install the program in order to fix the problem!</nobr>").arg(QDir::toNativeSeparators(QString("%1/toolset/%2").arg(m_appDir, current))).replace("-", "&minus;")); QMessageBox::critical(this, tr("Invalid File!"), tr("<nobr>At least on required tool is not a valid Win32 or Win64 binary:<br><tt style=\"whitespace:nowrap\">%1</tt><br><br>Please re-install the program in order to fix the problem!</nobr>").arg(QDir::toNativeSeparators(QString("%1/toolset/%2").arg(m_appDir, current))).replace("-", "&minus;"));
qFatal(QString("Binary is invalid: %1/toolset/%2").arg(m_appDir, current).toLatin1().constData()); qFatal(QString("Binary is invalid: %1/toolset/%2").arg(m_appDir, current).toLatin1().constData());
close(); qApp->exit(-1); return; close(); qApp->exit(-1); return;
} }
@ -721,7 +722,7 @@ void MainWindow::init(void)
else else
{ {
X264_DELETE(file); X264_DELETE(file);
QMessageBox::critical(this, tr("File Not Found!"), tr("<nobr>At least on required tool could not be found:<br>%1<br><br>Please re-install the program in order to fix the problem!</nobr>").arg(QDir::toNativeSeparators(QString("%1/toolset/%2").arg(m_appDir, current))).replace("-", "&minus;")); QMessageBox::critical(this, tr("File Not Found!"), tr("<nobr>At least on required tool could not be found:<br><tt style=\"whitespace:nowrap\">%1</tt><br><br>Please re-install the program in order to fix the problem!</nobr>").arg(QDir::toNativeSeparators(QString("%1/toolset/%2").arg(m_appDir, current))).replace("-", "&minus;"));
qFatal(QString("Binary not found: %1/toolset/%2").arg(m_appDir, current).toLatin1().constData()); qFatal(QString("Binary not found: %1/toolset/%2").arg(m_appDir, current).toLatin1().constData());
close(); qApp->exit(-1); return; close(); qApp->exit(-1); return;
} }
@ -767,6 +768,13 @@ void MainWindow::init(void)
if(val != 1) { close(); qApp->exit(-1); return; } if(val != 1) { close(); qApp->exit(-1); return; }
} }
//Skip version check (not recommended!)
if(qApp->arguments().contains("--skip-x264-version-check", Qt::CaseInsensitive))
{
qWarning("x264 version check disabled, you have been warned!\n");
m_skipVersionTest = true;
}
//Check for Avisynth support //Check for Avisynth support
if(!qApp->arguments().contains("--skip-avisynth-check", Qt::CaseInsensitive)) if(!qApp->arguments().contains("--skip-avisynth-check", Qt::CaseInsensitive))
{ {
@ -1120,6 +1128,7 @@ bool MainWindow::appendJob(const QString &sourceFileName, const QString &outputF
m_cpuFeatures->x64, m_cpuFeatures->x64,
m_preferences->use10BitEncoding(), m_preferences->use10BitEncoding(),
m_cpuFeatures->x64 && m_preferences->useAvisyth64Bit(), m_cpuFeatures->x64 && m_preferences->useAvisyth64Bit(),
m_skipVersionTest,
m_preferences->processPriority() m_preferences->processPriority()
); );

View File

@ -53,6 +53,7 @@ protected:
private: private:
bool m_firstShow; bool m_firstShow;
bool m_skipVersionTest;
QLabel *m_label; QLabel *m_label;
IPCThread *m_ipcThread; IPCThread *m_ipcThread;