X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=src%2Fencoder_x264.cpp;h=e9f1a0d13a41512335c5270afe6f62a9ae3dd7e6;hb=72574b8b574e0e3b0313a699ea203ef3474a942f;hp=477d00b661b8b78dc5fee1313872c8f1877317bf;hpb=00c53d77b24a6bf2c12a5c492fa527846d18bf92;p=x264-launcher%2Fx264-launcher.git diff --git a/src/encoder_x264.cpp b/src/encoder_x264.cpp index 477d00b..e9f1a0d 100644 --- a/src/encoder_x264.cpp +++ b/src/encoder_x264.cpp @@ -1,6 +1,6 @@ /////////////////////////////////////////////////////////////////////////////// // Simple x264 Launcher -// Copyright (C) 2004-2017 LoRd_MuldeR +// Copyright (C) 2004-2020 LoRd_MuldeR // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -40,8 +40,8 @@ #include //x264 version info -static const unsigned int VERSION_X264_MINIMUM_REV = 2795; -static const unsigned int VERSION_X264_CURRENT_API = 152; +static const unsigned int VERSION_X264_MINIMUM_REV = 3049; +static const unsigned int VERSION_X264_CURRENT_API = 163; // ------------------------------------------------------------ // Helper Macros @@ -172,13 +172,11 @@ public: case 1: arch = "x64"; break; default: MUTILS_THROW("Unknown encoder arch!"); } - switch(encVariant) + if ((encVariant < 0) || (encVariant > 1)) { - case 0: variant = "8bit"; break; - case 1: variant = "10bit"; break; - default: MUTILS_THROW("Unknown encoder variant!"); + MUTILS_THROW("Unknown encoder variant!"); } - return QString("%1/toolset/%2/x264_%3_%2.exe").arg(sysinfo->getAppPath(), arch, variant); + return QString("%1/toolset/%2/x264_%2.exe").arg(sysinfo->getAppPath(), arch); } virtual QString getHelpCommand(void) const @@ -304,6 +302,19 @@ void X264Encoder::buildCommandLine(QStringList &cmdLine, const bool &usePipe, co { double crf_int = 0.0, crf_frc = 0.0; + cmdLine << "--output-depth"; + switch (m_options->encVariant()) + { + case 0: + cmdLine << QString::number(8); + break; + case 1: + cmdLine << QString::number(10); + break; + default: + MUTILS_THROW("Unknown encoder variant!"); + } + switch(m_options->rcMode()) { case 0: