diff --git a/etc/Translation/Blank.ts b/etc/Translation/Blank.ts index 18cab277..77c9f0ab 100644 --- a/etc/Translation/Blank.ts +++ b/etc/Translation/Blank.ts @@ -763,7 +763,7 @@ - Repalce With + Replace With @@ -2629,32 +2629,32 @@ - + Overwrite Mode - + Warning: This mode may overwrite existing files with no way to revert! - + Continue - + Revert - + Already Running - + LameXP is already running, please use the running instance! diff --git a/etc/Translation/LameXP_DE.ts b/etc/Translation/LameXP_DE.ts index bcdb531c..32e51ddd 100644 --- a/etc/Translation/LameXP_DE.ts +++ b/etc/Translation/LameXP_DE.ts @@ -762,22 +762,22 @@ File Extension - + Dateinamenserweiterung - Repalce With - + Replace With + Ersetzen durch Select file extensions to overwrite: - + Dateinamenserweiterung zum Überschreiben: Enter the new file extension: - + Neue Dateinamenserweiterung eingeben: @@ -1019,57 +1019,57 @@ Replacement: - + Ersetzung: Search Pattern: - + Suchmuster: <a href="regexp">Regular Expression Info</a> - + <a href="regexp">Info zu regulären Ausrücken</a> Replace all Matching Elements - + Alle übereinstimmenden Elemente ersetzen Enter the desired search pattern (regular expression) here! - + Bitte geben Sie den gewünschten regulären Ausdruck hier ein! Enter replacement text here! It may contain backreferences. - + Ersetzung hier eingeben! Kann Rückwärtsreferenzen enthalten. Add Overwrite - + Eintrag hinzufügen Remove Overwrite - + Eintrag entfernen Rename Files - + Dateien umbenennen Regular Expressions - + Reguläre Ausdrücke File Extensions - + Dateinamenserweiterungen @@ -1360,7 +1360,7 @@ Verzeichnis konnte nicht erstellt werden - + LameXP is already running, please use the running instance! LameXP wird bereits ausgeführt. Bitte benutzen Sie die laufende Instanz! @@ -1562,7 +1562,7 @@ Diese Demo (Test) Version von LameXP ist am %1. abgelaufen. - + Already Running Wird bereits ausgeführt @@ -2528,22 +2528,22 @@ Bei existierender Zieldatei: - + Overwrite Mode Überschreiben Modus - + Warning: This mode may overwrite existing files with no way to revert! Achtung: Dieser Modus überschreibt möglicherweise existierende Dateien! - + Continue Fortfahren - + Revert Zurück diff --git a/etc/Translation/LameXP_ES.ts b/etc/Translation/LameXP_ES.ts index 95674071..faa1880d 100644 --- a/etc/Translation/LameXP_ES.ts +++ b/etc/Translation/LameXP_ES.ts @@ -767,7 +767,7 @@ - Repalce With + Replace With @@ -1488,12 +1488,12 @@ ¡El disco es de solo lectura o no se tienen los derechos suficientes! - + Already Running Ya se está ejecutando - + LameXP is already running, please use the running instance! ¡LameXP ya se está ejecutando, use esa instancia por favor! @@ -2528,22 +2528,22 @@ Si el archivo de destino ya existe: - + Overwrite Mode Modo de sobreescritura - + Warning: This mode may overwrite existing files with no way to revert! Aviso: ¡Este modo sobreescribirá los archivos existentes sin ninguna posibilidad de recuperarlos! - + Continue Continuar - + Revert Revertir diff --git a/etc/Translation/LameXP_FR.ts b/etc/Translation/LameXP_FR.ts index c4b2933d..eaac0cd8 100644 --- a/etc/Translation/LameXP_FR.ts +++ b/etc/Translation/LameXP_FR.ts @@ -770,7 +770,7 @@ - Repalce With + Replace With @@ -1493,12 +1493,12 @@ Votre dossier TEMP est situé ici: Le lecteur est en lecture seule ou en droits d'accès insuffisants! - + Already Running Déjà en cours d'exécution - + LameXP is already running, please use the running instance! LameXP est déjà en cours d'exécution, veuillez utiliser cette instance! @@ -2536,22 +2536,22 @@ Ouvrir le dossier récursivement... Si le fichier cible existe déjà : - + Overwrite Mode Mode d'écrasement - + Warning: This mode may overwrite existing files with no way to revert! AVERTISSEMENT : Ce mode peut remplacer les fichiers existants sans aucun moyen de revenir en arrière ! - + Continue Continuer - + Revert Revenir diff --git a/etc/Translation/LameXP_HU.ts b/etc/Translation/LameXP_HU.ts index 00d0de2a..b17b995d 100644 --- a/etc/Translation/LameXP_HU.ts +++ b/etc/Translation/LameXP_HU.ts @@ -763,7 +763,7 @@ - Repalce With + Replace With @@ -2629,32 +2629,32 @@ Nem lehet írni a kiválasztott könyvtárba. Kérjük válasszon egy másik könyvtárat! - + Overwrite Mode Felülírási mód - + Warning: This mode may overwrite existing files with no way to revert! Figyelem: Ez a mód felülírja a már létező fájlokat, amelyeket azt követően nem tud visszaállítani! - + Continue Folytatás - + Revert Visszaállítás - + Already Running Már fut - + LameXP is already running, please use the running instance! A LameXP már fut. Kérjük, használja a futó példányt! diff --git a/etc/Translation/LameXP_IT.ts b/etc/Translation/LameXP_IT.ts index 5afdf16c..af729355 100644 --- a/etc/Translation/LameXP_IT.ts +++ b/etc/Translation/LameXP_IT.ts @@ -766,7 +766,7 @@ - Repalce With + Replace With @@ -1360,7 +1360,7 @@ Creazione della cartella non riuscita - + LameXP is already running, please use the running instance! LameXP è già in esecuzione, per favore usa la sessione già aperta! @@ -1562,7 +1562,7 @@ Questa versione dimostrativa (Test) di LameXP è scaduta il %1. - + Already Running Già in Esecuzione @@ -2528,22 +2528,22 @@ Se il File di Destinazione Esiste Già: - + Overwrite Mode Modalità Sovrascrittura - + Warning: This mode may overwrite existing files with no way to revert! Attenzione: Questa modalità potrebbe sovrascrivere i file esistenti senza possibilità di recupero! - + Continue Continua - + Revert Annulla diff --git a/etc/Translation/LameXP_KR.ts b/etc/Translation/LameXP_KR.ts index fe5bb140..79eb036d 100644 --- a/etc/Translation/LameXP_KR.ts +++ b/etc/Translation/LameXP_KR.ts @@ -763,7 +763,7 @@ - Repalce With + Replace With @@ -1791,12 +1791,12 @@ 드라이버가 읽기-전용이거나 접근 권한이 없습니다! - + Already Running 이미 실행 중 - + LameXP is already running, please use the running instance! LameXP가 이미 실행 중입니다. 실행 중인 인스턴스를 사용하십시오! @@ -2524,22 +2524,22 @@ 대상 파일이 이미 존재하면: - + Overwrite Mode 대체 방식 - + Warning: This mode may overwrite existing files with no way to revert! 경고: 이 방식은 기존 파일이 되돌릴 수 없는 방법으로 대체될 수 있습니다! - + Continue 계속 - + Revert 되돌리기 diff --git a/etc/Translation/LameXP_PL.ts b/etc/Translation/LameXP_PL.ts index b460d4d1..05678e1b 100644 --- a/etc/Translation/LameXP_PL.ts +++ b/etc/Translation/LameXP_PL.ts @@ -769,7 +769,7 @@ - Repalce With + Replace With @@ -2646,32 +2646,32 @@ Nie można zapisać do wybranej lokalizacji. Prosze wybierz inną lokalizację! - + Overwrite Mode Tryb nadpisywania - + Warning: This mode may overwrite existing files with no way to revert! Ostrzeżenie: W tym trybie istniejące pliki będą nadpisywane bez możliwości ich odzyskania! - + Continue Kontynuuj - + Revert Cofnij - + Already Running Już działa - + LameXP is already running, please use the running instance! LameXP już działa, przejdź do działającego procesu! diff --git a/etc/Translation/LameXP_RU.ts b/etc/Translation/LameXP_RU.ts index 5b5f6b1d..70e96433 100644 --- a/etc/Translation/LameXP_RU.ts +++ b/etc/Translation/LameXP_RU.ts @@ -774,7 +774,7 @@ - Repalce With + Replace With @@ -1723,12 +1723,12 @@ Диск только для чтения или недостаточно прав для записи! - + Already Running Уже запущено - + LameXP is already running, please use the running instance! LameXP уже запущена, пожалуйста, используйте запущенную копию программы! @@ -2538,22 +2538,22 @@ Если файл уже существует: - + Overwrite Mode Ркжим перезаписи - + Warning: This mode may overwrite existing files with no way to revert! Предупреждение: В этом режиме безвозвратно будут перезаписываться уже существующие файлы, если таковые есть! - + Continue Да - + Revert Отмена diff --git a/etc/Translation/LameXP_SV.ts b/etc/Translation/LameXP_SV.ts index 23dd2e34..7f78ad1c 100644 --- a/etc/Translation/LameXP_SV.ts +++ b/etc/Translation/LameXP_SV.ts @@ -767,7 +767,7 @@ - Repalce With + Replace With @@ -2638,32 +2638,32 @@ Kan inte skriva till den specificerade mappen. Välj en annan destination! - + Overwrite Mode Överskrivningsläge - + Warning: This mode may overwrite existing files with no way to revert! Varning! Det här läget kan skriva över befintliga filer, utan möjlighet att återskapa! - + Continue Fortsätt - + Revert Återställ - + Already Running Körs redan - + LameXP is already running, please use the running instance! LameXP körs redan, använd den redan startade instansen! diff --git a/etc/Translation/LameXP_TW.ts b/etc/Translation/LameXP_TW.ts index ac1a7306..00e239b9 100644 --- a/etc/Translation/LameXP_TW.ts +++ b/etc/Translation/LameXP_TW.ts @@ -763,7 +763,7 @@ - Repalce With + Replace With @@ -1484,12 +1484,12 @@ 驅動器是只讀的或沒有足夠的訪問權限 ! - + Already Running 已在運行 - + LameXP is already running, please use the running instance! LameXP 已在運行,請使用當前運行的實例 ! @@ -2524,22 +2524,22 @@ 如果目標文件已存在: - + Overwrite Mode 覆蓋模式 - + Warning: This mode may overwrite existing files with no way to revert! 警告: 這種模式可能會覆蓋現有的文件無法恢復! - + Continue 繼續 - + Revert 還原 diff --git a/etc/Translation/LameXP_UK.ts b/etc/Translation/LameXP_UK.ts index 2ddacf64..0055e270 100644 --- a/etc/Translation/LameXP_UK.ts +++ b/etc/Translation/LameXP_UK.ts @@ -770,7 +770,7 @@ - Repalce With + Replace With @@ -1687,12 +1687,12 @@ Носій в режимі 'лише для читання' або використовуються недостатні права доступу! - + Already Running Вже запущено - + LameXP is already running, please use the running instance! LameXP вже запущено, тому використовуйте запущену копію програми! @@ -2531,22 +2531,22 @@ Якщо цільовий файл вже існує: - + Overwrite Mode Режим перезапису - + Warning: This mode may overwrite existing files with no way to revert! Попередження: Цей режим може перезаписати існуючі файли без можливості відмінити зміни! - + Continue Продовжити - + Revert Відмінити diff --git a/etc/Translation/LameXP_ZH.ts b/etc/Translation/LameXP_ZH.ts index fd54aeac..5ac92982 100644 --- a/etc/Translation/LameXP_ZH.ts +++ b/etc/Translation/LameXP_ZH.ts @@ -763,7 +763,7 @@ - Repalce With + Replace With @@ -1484,12 +1484,12 @@ 驱动器是只读的或没有足够的访问权限! - + Already Running 已运行 - + LameXP is already running, please use the running instance! LameXP 已在运行,请使用当前运行的实例! @@ -2524,22 +2524,22 @@ 如果目标文件已存在: - + Overwrite Mode 覆盖模式 - + Warning: This mode may overwrite existing files with no way to revert! 警告: 这种模式可能会覆盖现有的文件且无法恢复! - + Continue 继续 - + Revert 后退 diff --git a/res/localization/LameXP_DE.qm b/res/localization/LameXP_DE.qm index 10bef2ea..b52d1ea5 100644 Binary files a/res/localization/LameXP_DE.qm and b/res/localization/LameXP_DE.qm differ diff --git a/src/Config.h b/src/Config.h index 073dd26b..d0eff097 100644 --- a/src/Config.h +++ b/src/Config.h @@ -34,8 +34,8 @@ #define VER_LAMEXP_MINOR_HI 1 #define VER_LAMEXP_MINOR_LO 2 #define VER_LAMEXP_TYPE Alpha -#define VER_LAMEXP_PATCH 3 -#define VER_LAMEXP_BUILD 1730 +#define VER_LAMEXP_PATCH 4 +#define VER_LAMEXP_BUILD 1734 #define VER_LAMEXP_CONFG 1700 /////////////////////////////////////////////////////////////////////////////// diff --git a/src/Dialog_MainWindow.cpp b/src/Dialog_MainWindow.cpp index 945cc00c..a03f8ea6 100644 --- a/src/Dialog_MainWindow.cpp +++ b/src/Dialog_MainWindow.cpp @@ -4206,16 +4206,16 @@ void MainWindow::customParamsHelpRequested(QWidget *obj, QEvent *event) } } - if(obj == ui->helpCustomParamLAME) showCustomParamsHelpScreen("lame.exe", "--longhelp"); + if(obj == ui->helpCustomParamLAME) showCustomParamsHelpScreen("lame.exe", "--longhelp"); else if(obj == ui->helpCustomParamOggEnc) showCustomParamsHelpScreen("oggenc2.exe", "--help"); else if(obj == ui->helpCustomParamNeroAAC) { switch(EncoderRegistry::getAacEncoder()) { - case SettingsModel::AAC_ENCODER_QAAC: showCustomParamsHelpScreen("qaac.exe", "--help"); break; - case SettingsModel::AAC_ENCODER_FHG : showCustomParamsHelpScreen("fhgaacenc.exe", "" ); break; - case SettingsModel::AAC_ENCODER_FDK : showCustomParamsHelpScreen("fdkaac.exe", "--help"); break; - case SettingsModel::AAC_ENCODER_NERO: showCustomParamsHelpScreen("neroAacEnc.exe", "-help" ); break; + case SettingsModel::AAC_ENCODER_QAAC: showCustomParamsHelpScreen("qaac64.exe|qaac.exe", "--help"); break; + case SettingsModel::AAC_ENCODER_FHG : showCustomParamsHelpScreen("fhgaacenc.exe", "" ); break; + case SettingsModel::AAC_ENCODER_FDK : showCustomParamsHelpScreen("fdkaac.exe", "--help"); break; + case SettingsModel::AAC_ENCODER_NERO: showCustomParamsHelpScreen("neroAacEnc.exe", "-help" ); break; default: MUtils::Sound::beep(MUtils::Sound::BEEP_ERR); break; } } @@ -4230,7 +4230,17 @@ void MainWindow::customParamsHelpRequested(QWidget *obj, QEvent *event) */ void MainWindow::showCustomParamsHelpScreen(const QString &toolName, const QString &command) { - const QString binary = lamexp_tools_lookup(toolName); + const QStringList toolNames = toolName.split('|', QString::SkipEmptyParts); + QString binary; + for(QStringList::ConstIterator iter = toolNames.constBegin(); iter != toolNames.constEnd(); iter++) + { + if(lamexp_tools_check(*iter)) + { + binary = lamexp_tools_lookup(*iter); + break; + } + } + if(binary.isEmpty()) { MUtils::Sound::beep(MUtils::Sound::BEEP_ERR); diff --git a/src/Encoder_AAC.h b/src/Encoder_AAC.h index 0fea9943..e6621da4 100644 --- a/src/Encoder_AAC.h +++ b/src/Encoder_AAC.h @@ -43,6 +43,7 @@ public: virtual void setEnable2Pass(bool enabled); //Encoder info + virtual const AbstractEncoderInfo *toEncoderInfo(void) const { return getEncoderInfo(); } static const AbstractEncoderInfo *getEncoderInfo(void); private: diff --git a/src/Encoder_AAC_FDK.h b/src/Encoder_AAC_FDK.h index d7f26cbc..5bbab1ea 100644 --- a/src/Encoder_AAC_FDK.h +++ b/src/Encoder_AAC_FDK.h @@ -41,6 +41,7 @@ public: virtual void setProfile(int profile); //Encoder info + virtual const AbstractEncoderInfo *toEncoderInfo(void) const { return getEncoderInfo(); } static const AbstractEncoderInfo *getEncoderInfo(void); private: diff --git a/src/Encoder_AAC_FHG.h b/src/Encoder_AAC_FHG.h index 4da288a7..0b2ab821 100644 --- a/src/Encoder_AAC_FHG.h +++ b/src/Encoder_AAC_FHG.h @@ -44,6 +44,7 @@ public: virtual void setProfile(int profile); //Encoder info + virtual const AbstractEncoderInfo *toEncoderInfo(void) const { return getEncoderInfo(); } static const AbstractEncoderInfo *getEncoderInfo(void); private: diff --git a/src/Encoder_AAC_QAAC.cpp b/src/Encoder_AAC_QAAC.cpp index c7c07d34..c5aee188 100644 --- a/src/Encoder_AAC_QAAC.cpp +++ b/src/Encoder_AAC_QAAC.cpp @@ -134,11 +134,10 @@ static const g_qaacEncoderInfo; QAACEncoder::QAACEncoder(void) : - m_binary_qaac(lamexp_tools_lookup("qaac.exe")), - m_binary_soxr(lamexp_tools_lookup("libsoxr.dll")), - m_binary_soxc(lamexp_tools_lookup("libsoxconvolver.dll")) + m_binary_qaac32(lamexp_tools_lookup("qaac.exe")), + m_binary_qaac64(lamexp_tools_lookup("qaac64.exe")) { - if(m_binary_qaac.isEmpty() || m_binary_soxr.isEmpty() || m_binary_soxc.isEmpty()) + if(m_binary_qaac32.isEmpty() && m_binary_qaac64.isEmpty()) { MUTILS_THROW("Error initializing QAAC. Tool 'qaac.exe' is not registred!"); } @@ -152,6 +151,8 @@ QAACEncoder::~QAACEncoder(void) bool QAACEncoder::encode(const QString &sourceFile, const AudioFileModel_MetaInfo &metaInfo, const unsigned int duration, const QString &outputFile, volatile bool *abortFlag) { + const QString qaac_bin = m_binary_qaac64.isEmpty() ? m_binary_qaac32 : m_binary_qaac64; + QProcess process; QStringList args; @@ -203,7 +204,7 @@ bool QAACEncoder::encode(const QString &sourceFile, const AudioFileModel_MetaInf args << "-o" << QDir::toNativeSeparators(outputFile); args << QDir::toNativeSeparators(sourceFile); - if(!startProcess(process, m_binary_qaac, args)) + if(!startProcess(process, qaac_bin, args)) { return false; } diff --git a/src/Encoder_AAC_QAAC.h b/src/Encoder_AAC_QAAC.h index b4640262..99da9c4f 100644 --- a/src/Encoder_AAC_QAAC.h +++ b/src/Encoder_AAC_QAAC.h @@ -41,11 +41,11 @@ public: virtual void setProfile(int profile); //Encoder info + virtual const AbstractEncoderInfo *toEncoderInfo(void) const { return getEncoderInfo(); } static const AbstractEncoderInfo *getEncoderInfo(void); private: - const QString m_binary_qaac; - const QString m_binary_soxr; - const QString m_binary_soxc; + const QString m_binary_qaac32; + const QString m_binary_qaac64; int m_configProfile; }; diff --git a/src/Encoder_AC3.h b/src/Encoder_AC3.h index fe1b3d69..f437f699 100644 --- a/src/Encoder_AC3.h +++ b/src/Encoder_AC3.h @@ -46,6 +46,7 @@ public: virtual void setFastBitAllocation(bool value); //Encoder info + virtual const AbstractEncoderInfo *toEncoderInfo(void) const { return getEncoderInfo(); } static const AbstractEncoderInfo *getEncoderInfo(void); private: diff --git a/src/Encoder_Abstract.h b/src/Encoder_Abstract.h index dacef1f6..188d5730 100644 --- a/src/Encoder_Abstract.h +++ b/src/Encoder_Abstract.h @@ -78,6 +78,7 @@ public: virtual void setCustomParams(const QString &customParams); //Encoder info + virtual const AbstractEncoderInfo *toEncoderInfo(void) const = 0; static const AbstractEncoderInfo *getEncoderInfo(void) { MUTILS_THROW("This method shall be re-implemented in derived classes!"); diff --git a/src/Encoder_DCA.h b/src/Encoder_DCA.h index 9e53cafa..2f10693e 100644 --- a/src/Encoder_DCA.h +++ b/src/Encoder_DCA.h @@ -41,6 +41,7 @@ public: virtual const unsigned int *supportedSamplerates(void); //Encoder info + virtual const AbstractEncoderInfo *toEncoderInfo(void) const { return getEncoderInfo(); } static const AbstractEncoderInfo *getEncoderInfo(void); private: diff --git a/src/Encoder_FLAC.h b/src/Encoder_FLAC.h index 44cb295c..562d04d3 100644 --- a/src/Encoder_FLAC.h +++ b/src/Encoder_FLAC.h @@ -40,6 +40,7 @@ public: virtual const unsigned int *supportedBitdepths(void); //Encoder info + virtual const AbstractEncoderInfo *toEncoderInfo(void) const { return getEncoderInfo(); } static const AbstractEncoderInfo *getEncoderInfo(void); private: diff --git a/src/Encoder_MAC.h b/src/Encoder_MAC.h index 95e773e2..7f811be8 100644 --- a/src/Encoder_MAC.h +++ b/src/Encoder_MAC.h @@ -38,6 +38,7 @@ public: virtual bool isFormatSupported(const QString &containerType, const QString &containerProfile, const QString &formatType, const QString &formatProfile, const QString &formatVersion); //Encoder info + virtual const AbstractEncoderInfo *toEncoderInfo(void) const { return getEncoderInfo(); } static const AbstractEncoderInfo *getEncoderInfo(void); private: diff --git a/src/Encoder_MP3.h b/src/Encoder_MP3.h index ff23a9d0..c67e95d1 100644 --- a/src/Encoder_MP3.h +++ b/src/Encoder_MP3.h @@ -45,6 +45,7 @@ public: virtual void setChannelMode(int value); //Encoder info + virtual const AbstractEncoderInfo *toEncoderInfo(void) const { return getEncoderInfo(); } static const AbstractEncoderInfo *getEncoderInfo(void); private: diff --git a/src/Encoder_Opus.h b/src/Encoder_Opus.h index 6245d361..f2ee35a5 100644 --- a/src/Encoder_Opus.h +++ b/src/Encoder_Opus.h @@ -46,6 +46,7 @@ public: virtual void setFrameSize(int frameSize); //Encoder info + virtual const AbstractEncoderInfo *toEncoderInfo(void) const { return getEncoderInfo(); } static const AbstractEncoderInfo *getEncoderInfo(void); private: diff --git a/src/Encoder_Vorbis.h b/src/Encoder_Vorbis.h index 5076b079..f6ac1c42 100644 --- a/src/Encoder_Vorbis.h +++ b/src/Encoder_Vorbis.h @@ -40,6 +40,7 @@ public: virtual void setSamplingRate(int value); //Encoder info + virtual const AbstractEncoderInfo *toEncoderInfo(void) const { return getEncoderInfo(); } static const AbstractEncoderInfo *getEncoderInfo(void); private: diff --git a/src/Encoder_Wave.h b/src/Encoder_Wave.h index 77bc223d..4d689910 100644 --- a/src/Encoder_Wave.h +++ b/src/Encoder_Wave.h @@ -38,5 +38,6 @@ public: virtual bool isFormatSupported(const QString &containerType, const QString &containerProfile, const QString &formatType, const QString &formatProfile, const QString &formatVersion); //Encoder info + virtual const AbstractEncoderInfo *toEncoderInfo(void) const { return getEncoderInfo(); } static const AbstractEncoderInfo *getEncoderInfo(void); }; diff --git a/src/Model_FileExts.cpp b/src/Model_FileExts.cpp index 039cb27d..32984cef 100644 --- a/src/Model_FileExts.cpp +++ b/src/Model_FileExts.cpp @@ -139,7 +139,7 @@ QVariant FileExtsModel::headerData(int section, Qt::Orientation orientation, int case 0: return QVariant(tr("File Extension")); case 1: - return QVariant(tr("Repalce With")); + return QVariant(tr("Replace With")); default: return QVariant(); } diff --git a/src/Registry_Encoder.cpp b/src/Registry_Encoder.cpp index 6eee9b32..00f9371a 100644 --- a/src/Registry_Encoder.cpp +++ b/src/Registry_Encoder.cpp @@ -507,6 +507,10 @@ int EncoderRegistry::getAacEncoder(void) { return SettingsModel::AAC_ENCODER_QAAC; } + else if(lamexp_tools_check("qaac64.exe") && lamexp_tools_check("libsoxr64.dll") && lamexp_tools_check("libsoxconvolver64.dll")) + { + return SettingsModel::AAC_ENCODER_QAAC; + } else if(lamexp_tools_check("fdkaac.exe")) { return SettingsModel::AAC_ENCODER_FDK; diff --git a/src/Thread_Process.cpp b/src/Thread_Process.cpp index 3a3685b6..4e0267fb 100644 --- a/src/Thread_Process.cpp +++ b/src/Thread_Process.cpp @@ -441,7 +441,7 @@ int ProcessThread::generateOutFileName(QString &outFileName) //Generate full output path - const QString fileExt = m_renameFileExt.isEmpty() ? QString::fromUtf8(m_encoder->getEncoderInfo()->extension()) : m_renameFileExt; + const QString fileExt = m_renameFileExt.isEmpty() ? QString::fromUtf8(m_encoder->toEncoderInfo()->extension()) : m_renameFileExt; outFileName = QString("%1/%2.%3").arg(targetDir.canonicalPath(), fileName, fileExt); //Skip file, if target file exists (optional!) diff --git a/src/Tools.h b/src/Tools.h index e209b2b1..7407f5b4 100644 --- a/src/Tools.h +++ b/src/Tools.h @@ -120,5 +120,6 @@ static const aac_encoder_t g_lamexp_aacenc[] = { "FhgAacEnc", { "fhgaacenc.exe", "enc_fhgaac.dll", "nsutil.dll", "libmp4v2.dll", "libsndfile-1.dll", NULL }, lamexp_toolver_fhgaacenc(), 1, 100000000, "????-??-??", "fhgaacenc version (\\d+) by tmkk", NULL }, { "FdkAacEnc", { "fdkaac.exe", NULL }, lamexp_toolver_fdkaacenc(), 3, 10, "v?.?.?", "fdkaac\\s+(\\d)\\.(\\d)\\.(\\d)", NULL }, { "QAAC", { "qaac.exe", "libsoxr.dll", "libsoxconvolver.dll", NULL }, lamexp_toolver_qaacenc(), 2, 100, "v?.??", "qaac (\\d)\\.(\\d+)", NULL }, + { "QAACx64", { "qaac64.exe", "libsoxr64.dll", "libsoxconvolver64.dll", NULL }, lamexp_toolver_qaacenc(), 2, 100, "v?.??", "qaac (\\d)\\.(\\d+)", NULL }, { NULL, { NULL }, 0, 0, 0, NULL, NULL, NULL } };