Added optional support for the libfdk-aac encoder, using the fdkaac front-end by nu774.
This commit is contained in:
parent
3deacf11df
commit
99b68fcccb
@ -297,6 +297,7 @@ copy /Y "$(SolutionDir)\..\Prerequisites\VisualLeakDetector\bin\Win32\*.manifest
|
||||
<ClCompile Include="src\Dialog_Update.cpp" />
|
||||
<ClCompile Include="src\Dialog_WorkingBanner.cpp" />
|
||||
<ClCompile Include="src\Encoder_AAC.cpp" />
|
||||
<ClCompile Include="src\Encoder_AAC_FDK.cpp" />
|
||||
<ClCompile Include="src\Encoder_AAC_FHG.cpp" />
|
||||
<ClCompile Include="src\Encoder_AAC_QAAC.cpp" />
|
||||
<ClCompile Include="src\Encoder_Abstract.cpp" />
|
||||
@ -357,6 +358,7 @@ copy /Y "$(SolutionDir)\..\Prerequisites\VisualLeakDetector\bin\Win32\*.manifest
|
||||
<ClCompile Include="tmp\LameXP\MOC_Dialog_Update.cpp" />
|
||||
<ClCompile Include="tmp\LameXP\MOC_Dialog_WorkingBanner.cpp" />
|
||||
<ClCompile Include="tmp\LameXP\MOC_Encoder_AAC.cpp" />
|
||||
<ClCompile Include="tmp\LameXP\MOC_Encoder_AAC_FDK.cpp" />
|
||||
<ClCompile Include="tmp\LameXP\MOC_Encoder_AAC_FHG.cpp" />
|
||||
<ClCompile Include="tmp\LameXP\MOC_Encoder_AAC_QAAC.cpp" />
|
||||
<ClCompile Include="tmp\LameXP\MOC_Encoder_Abstract.cpp" />
|
||||
@ -407,6 +409,17 @@ copy /Y "$(SolutionDir)\..\Prerequisites\VisualLeakDetector\bin\Win32\*.manifest
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="src\Config.h" />
|
||||
<CustomBuild Include="src\Encoder_AAC_FDK.h">
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">"$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release_Static|Win32'">"$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">"$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"</Command>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"</Message>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release_Static|Win32'">MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"</Message>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)</Outputs>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release_Static|Win32'">$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)</Outputs>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)</Outputs>
|
||||
</CustomBuild>
|
||||
<ClInclude Include="src\IPCCommands.h" />
|
||||
<ClInclude Include="tmp\LameXP\UIC_AboutDialog.h" />
|
||||
<ClInclude Include="tmp\LameXP\UIC_CueSheetImport.h" />
|
||||
|
@ -409,6 +409,12 @@
|
||||
<ClCompile Include="tmp\LameXP\QRC_Tools_Decd_B.cpp">
|
||||
<Filter>Generated Files\QRC</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\Encoder_AAC_FDK.cpp">
|
||||
<Filter>Source Files\Encoders</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="tmp\LameXP\MOC_Encoder_AAC_FDK.cpp">
|
||||
<Filter>Generated Files\MOC</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="src\Config.h">
|
||||
@ -540,6 +546,9 @@
|
||||
<ClInclude Include="src\IPCCommands.h">
|
||||
<Filter>Header Files\Misc</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="src\Encoder_AAC_FDK.h">
|
||||
<Filter>Header Files\Encoders</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<CustomBuild Include="gui\DropBox.ui">
|
||||
|
@ -88,6 +88,7 @@ h='gmail.com';a='@';n='z&#x
|
||||
document.write('<a h'+'ref'+'="ma'+'ilto'+':'+e+'">'+e+'<\/'+'a'+'>');
|
||||
// -->
|
||||
</script><noscript>zityisoft at gmail dot com</noscript><br /></li>
|
||||
<li>Added optional support for the <em>libfdk-aac</em> encoder, using the <a href="https://github.com/nu774/fdkaac">fdkaac</a> front-end by nu774<br /></li>
|
||||
<li>Updated ALAC decoder to refalac v1.47 (2015-02-15), based on reference implementation by Apple<br /></li>
|
||||
<li>Fixed potential deadlock in Cue Sheet import dialog when "Browse..." button is clicked</li>
|
||||
</ul>
|
||||
|
@ -5,6 +5,7 @@
|
||||
## LameXP v4.12 [xxxx-xx-xx] ## {-}
|
||||
|
||||
* Added Hungarian translation, thanks to Zityi's Translator Team <zityisoft@gmail.com>
|
||||
* Added optional support for the *libfdk-aac* encoder, using the [fdkaac](https://github.com/nu774/fdkaac) front-end by nu774
|
||||
* Updated ALAC decoder to refalac v1.47 (2015-02-15), based on reference implementation by Apple
|
||||
* Fixed potential deadlock in Cue Sheet import dialog when "Browse..." button is clicked
|
||||
|
||||
|
@ -2551,32 +2551,32 @@
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Overwrite Mode</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Warning: This mode may overwrite existing files with no way to revert!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Continue</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Revert</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>Already Running</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>LameXP is already running, please use the running instance!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1282,7 +1282,7 @@
|
||||
<translation>Verzeichnis konnte nicht erstellt werden</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>LameXP is already running, please use the running instance!</source>
|
||||
<translation>LameXP wird bereits ausgeführt. Bitte benutzen Sie die laufende Instanz!</translation>
|
||||
</message>
|
||||
@ -1484,7 +1484,7 @@
|
||||
<translation>Diese Demo (Test) Version von LameXP ist am %1. abgelaufen.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>Already Running</source>
|
||||
<translation>Wird bereits ausgeführt</translation>
|
||||
</message>
|
||||
@ -2450,22 +2450,22 @@
|
||||
<translation>Bei existierender Zieldatei:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Overwrite Mode</source>
|
||||
<translation>Überschreiben Modus</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Warning: This mode may overwrite existing files with no way to revert!</source>
|
||||
<translation>Achtung: Dieser Modus überschreibt möglicherweise existierende Dateien!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Continue</source>
|
||||
<translation>Fortfahren</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Revert</source>
|
||||
<translation>Zurück</translation>
|
||||
</message>
|
||||
|
@ -1410,12 +1410,12 @@
|
||||
<translation>¡El disco es de solo lectura o no se tienen los derechos suficientes!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>Already Running</source>
|
||||
<translation>Ya se está ejecutando</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>LameXP is already running, please use the running instance!</source>
|
||||
<translation>¡LameXP ya se está ejecutando, use esa instancia por favor!</translation>
|
||||
</message>
|
||||
@ -2450,22 +2450,22 @@
|
||||
<translation>Si el archivo de destino ya existe:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Overwrite Mode</source>
|
||||
<translation>Modo de sobreescritura</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Warning: This mode may overwrite existing files with no way to revert!</source>
|
||||
<translation>Aviso: ¡Este modo sobreescribirá los archivos existentes sin ninguna posibilidad de recuperarlos!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Continue</source>
|
||||
<translation>Continuar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Revert</source>
|
||||
<translation>Revertir</translation>
|
||||
</message>
|
||||
|
@ -1415,12 +1415,12 @@ Votre dossier TEMP est situé ici:</translation>
|
||||
<translation>Le lecteur est en lecture seule ou en droits d'accès insuffisants!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>Already Running</source>
|
||||
<translation>Déjà en cours d'exécution</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>LameXP is already running, please use the running instance!</source>
|
||||
<translation>LameXP est déjà en cours d'exécution, veuillez utiliser cette instance!</translation>
|
||||
</message>
|
||||
@ -2458,22 +2458,22 @@ Ouvrir le dossier récursivement...</translation>
|
||||
<translation>Si le fichier cible existe déjà :</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Overwrite Mode</source>
|
||||
<translation>Mode d'écrasement</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Warning: This mode may overwrite existing files with no way to revert!</source>
|
||||
<translation>AVERTISSEMENT : Ce mode peut remplacer les fichiers existants sans aucun moyen de revenir en arrière !</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Continue</source>
|
||||
<translation>Continuer</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Revert</source>
|
||||
<translation>Revenir</translation>
|
||||
</message>
|
||||
|
@ -2551,32 +2551,32 @@
|
||||
<translation>Nem lehet írni a kiválasztott könyvtárba. Kérjük válasszon egy másik könyvtárat!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Overwrite Mode</source>
|
||||
<translation>Felülírási mód</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Warning: This mode may overwrite existing files with no way to revert!</source>
|
||||
<translation>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!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Continue</source>
|
||||
<translation>Folytatás</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Revert</source>
|
||||
<translation>Visszaállítás</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>Already Running</source>
|
||||
<translation>Már fut</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>LameXP is already running, please use the running instance!</source>
|
||||
<translation>A LameXP már fut. Kérjük, használja a futó példányt!</translation>
|
||||
</message>
|
||||
|
@ -1282,7 +1282,7 @@
|
||||
<translation>Creazione della cartella non riuscita</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>LameXP is already running, please use the running instance!</source>
|
||||
<translation>LameXP è già in esecuzione, per favore usa la sessione già aperta!</translation>
|
||||
</message>
|
||||
@ -1484,7 +1484,7 @@
|
||||
<translation type="unfinished">Questa versione dimostrativa (Test) di LameXP è scaduta il %1.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>Already Running</source>
|
||||
<translation>Già in Esecuzione</translation>
|
||||
</message>
|
||||
@ -2450,22 +2450,22 @@
|
||||
<translation>Se il file di destinazione esiste già:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Overwrite Mode</source>
|
||||
<translation>Modalità sovrascrittura</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Warning: This mode may overwrite existing files with no way to revert!</source>
|
||||
<translation type="unfinished">Attenzione: Questa modalità potrebbe sovrascrivere i file esistenti senza possibilità di recupero!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Continue</source>
|
||||
<translation>Continuare</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Revert</source>
|
||||
<translation type="unfinished">Annulla</translation>
|
||||
</message>
|
||||
|
@ -1713,12 +1713,12 @@
|
||||
<translation type="unfinished">드라이버가 읽기-전용이거나 접근 권한이 없습니다!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>Already Running</source>
|
||||
<translation type="unfinished">이미 실행 중</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>LameXP is already running, please use the running instance!</source>
|
||||
<translation type="unfinished">LameXP가 이미 실행 중입니다. 실행 중인 인스턴스를 사용하십시오!</translation>
|
||||
</message>
|
||||
@ -2446,22 +2446,22 @@
|
||||
<translation type="unfinished">대상 파일이 이미 존재하면:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Overwrite Mode</source>
|
||||
<translation type="unfinished">대체 방식</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Warning: This mode may overwrite existing files with no way to revert!</source>
|
||||
<translation type="unfinished">경고: 이 방식은 기존 파일이 되돌릴 수 없는 방법으로 대체될 수 있습니다!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Continue</source>
|
||||
<translation type="unfinished">계속</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Revert</source>
|
||||
<translation type="unfinished">되돌리기</translation>
|
||||
</message>
|
||||
|
@ -2568,32 +2568,32 @@
|
||||
<translation type="unfinished">Nie można zapisać do wybranej lokalizacji. Prosze wybierz inną lokalizację!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Overwrite Mode</source>
|
||||
<translation type="unfinished">Tryb nadpisywania</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Warning: This mode may overwrite existing files with no way to revert!</source>
|
||||
<translation type="unfinished">Ostrzeżenie: W tym trybie istniejące pliki będą nadpisywane bez możliwości ich odzyskania!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Continue</source>
|
||||
<translation type="unfinished">Kontynuuj</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Revert</source>
|
||||
<translation type="unfinished">Cofnij</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>Already Running</source>
|
||||
<translation type="unfinished">Już działa</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>LameXP is already running, please use the running instance!</source>
|
||||
<translation type="unfinished">LameXP już działa, przejdź do działającego procesu!</translation>
|
||||
</message>
|
||||
|
@ -1645,12 +1645,12 @@
|
||||
<translation>Диск только для чтения или недостаточно прав для записи!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>Already Running</source>
|
||||
<translation>Уже запущено</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>LameXP is already running, please use the running instance!</source>
|
||||
<translation>LameXP уже запущена, пожалуйста, используйте запущенную копию программы!</translation>
|
||||
</message>
|
||||
@ -2460,22 +2460,22 @@
|
||||
<translation>Если файл уже существует:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Overwrite Mode</source>
|
||||
<translation>Ркжим перезаписи</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Warning: This mode may overwrite existing files with no way to revert!</source>
|
||||
<translation>Предупреждение: В этом режиме безвозвратно будут перезаписываться уже существующие файлы, если таковые есть!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Continue</source>
|
||||
<translation>Да</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Revert</source>
|
||||
<translation>Отмена</translation>
|
||||
</message>
|
||||
|
@ -2560,32 +2560,32 @@
|
||||
<translation>Kan inte skriva till den specificerade mappen. Välj en annan destination!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Overwrite Mode</source>
|
||||
<translation>Överskrivningsläge</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Warning: This mode may overwrite existing files with no way to revert!</source>
|
||||
<translation>Varning! Det här läget kan skriva över befintliga filer, utan möjlighet att återskapa!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Continue</source>
|
||||
<translation>Fortsätt</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Revert</source>
|
||||
<translation>Återställ</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>Already Running</source>
|
||||
<translation>Körs redan</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>LameXP is already running, please use the running instance!</source>
|
||||
<translation>LameXP körs redan, använd den redan startade instansen!</translation>
|
||||
</message>
|
||||
|
@ -1406,12 +1406,12 @@
|
||||
<translation>驅動器是只讀的或沒有足夠的訪問權限 !</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>Already Running</source>
|
||||
<translation>已在運行</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>LameXP is already running, please use the running instance!</source>
|
||||
<translation>LameXP 已在運行,請使用當前運行的實例 !</translation>
|
||||
</message>
|
||||
@ -2446,22 +2446,22 @@
|
||||
<translation>如果目標文件已存在: </translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Overwrite Mode</source>
|
||||
<translation>覆蓋模式</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Warning: This mode may overwrite existing files with no way to revert!</source>
|
||||
<translation>警告: 這種模式可能會覆蓋現有的文件無法恢復!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Continue</source>
|
||||
<translation>繼續</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Revert</source>
|
||||
<translation>還原</translation>
|
||||
</message>
|
||||
|
@ -1609,12 +1609,12 @@
|
||||
<translation>Носій в режимі 'лише для читання' або використовуються недостатні права доступу!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>Already Running</source>
|
||||
<translation>Вже запущено</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>LameXP is already running, please use the running instance!</source>
|
||||
<translation>LameXP вже запущено, тому використовуйте запущену копію програми!</translation>
|
||||
</message>
|
||||
@ -2453,22 +2453,22 @@
|
||||
<translation>Якщо цільовий файл вже існує:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Overwrite Mode</source>
|
||||
<translation>Режим перезапису</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Warning: This mode may overwrite existing files with no way to revert!</source>
|
||||
<translation>Попередження: Цей режим може перезаписати існуючі файли без можливості відмінити зміни!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Continue</source>
|
||||
<translation>Продовжити</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Revert</source>
|
||||
<translation>Відмінити</translation>
|
||||
</message>
|
||||
|
@ -1406,12 +1406,12 @@
|
||||
<translation>驱动器是只读的或没有足够的访问权限!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>Already Running</source>
|
||||
<translation>已运行</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4196"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4197"/>
|
||||
<source>LameXP is already running, please use the running instance!</source>
|
||||
<translation>LameXP 已在运行,请使用当前运行的实例!</translation>
|
||||
</message>
|
||||
@ -2446,22 +2446,22 @@
|
||||
<translation>如果目标文件已存在:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Overwrite Mode</source>
|
||||
<translation>覆盖模式</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Warning: This mode may overwrite existing files with no way to revert!</source>
|
||||
<translation>警告: 这种模式可能会覆盖现有的文件且无法恢复!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Continue</source>
|
||||
<translation>继续</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4123"/>
|
||||
<location filename="../../src/Dialog_MainWindow.cpp" line="4124"/>
|
||||
<source>Revert</source>
|
||||
<translation>后退</translation>
|
||||
</message>
|
||||
|
@ -35,7 +35,7 @@
|
||||
#define VER_LAMEXP_MINOR_LO 2
|
||||
#define VER_LAMEXP_TYPE Alpha
|
||||
#define VER_LAMEXP_PATCH 1
|
||||
#define VER_LAMEXP_BUILD 1708
|
||||
#define VER_LAMEXP_BUILD 1710
|
||||
#define VER_LAMEXP_CONFG 1700
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
@ -51,6 +51,7 @@
|
||||
|
||||
#define VER_LAMEXP_TOOL_NEROAAC 1540
|
||||
#define VER_LAMEXP_TOOL_FHGAACENC 20120806
|
||||
#define VER_LAMEXP_TOOL_FDKAACENC 62
|
||||
#define VER_LAMEXP_TOOL_QAAC 244
|
||||
#define VER_LAMEXP_TOOL_COREAUDIO 7980
|
||||
|
||||
|
@ -4044,14 +4044,15 @@ void MainWindow::customParamsHelpRequested(QWidget *obj, QEvent *event)
|
||||
{
|
||||
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_NERO: showCustomParamsHelpScreen("neroAacEnc.exe", "-help"); break;
|
||||
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;
|
||||
default: MUtils::Sound::beep(MUtils::Sound::BEEP_ERR); break;
|
||||
}
|
||||
}
|
||||
else if(obj == ui->helpCustomParamFLAC) showCustomParamsHelpScreen("flac.exe", "--help");
|
||||
else if(obj == ui->helpCustomParamAften) showCustomParamsHelpScreen("aften.exe", "-h");
|
||||
else if(obj == ui->helpCustomParamFLAC) showCustomParamsHelpScreen("flac.exe", "--help");
|
||||
else if(obj == ui->helpCustomParamAften) showCustomParamsHelpScreen("aften.exe", "-h" );
|
||||
else if(obj == ui->helpCustomParamOpus) showCustomParamsHelpScreen("opusenc.exe", "--help");
|
||||
else MUtils::Sound::beep(MUtils::Sound::BEEP_ERR);
|
||||
}
|
||||
|
@ -61,6 +61,7 @@ bool lamexp_version_demo (void);
|
||||
const QDate& lamexp_version_expires (void);
|
||||
unsigned int lamexp_toolver_neroaac (void);
|
||||
unsigned int lamexp_toolver_fhgaacenc(void);
|
||||
unsigned int lamexp_toolver_fdkaacenc(void);
|
||||
unsigned int lamexp_toolver_qaacenc (void);
|
||||
unsigned int lamexp_toolver_coreaudio(void);
|
||||
|
||||
|
@ -67,6 +67,7 @@ static const char *g_lamexp_tracker_url = "https://github.com/lordmulder/LameXP/
|
||||
//Tool versions (expected versions!)
|
||||
static const unsigned int g_lamexp_toolver_neroaac = VER_LAMEXP_TOOL_NEROAAC;
|
||||
static const unsigned int g_lamexp_toolver_fhgaacenc = VER_LAMEXP_TOOL_FHGAACENC;
|
||||
static const unsigned int g_lamexp_toolver_fdkaacenc = VER_LAMEXP_TOOL_FDKAACENC;
|
||||
static const unsigned int g_lamexp_toolver_qaacenc = VER_LAMEXP_TOOL_QAAC;
|
||||
static const unsigned int g_lamexp_toolver_coreaudio = VER_LAMEXP_TOOL_COREAUDIO;
|
||||
|
||||
@ -84,6 +85,7 @@ unsigned int lamexp_version_confg(void) { return g_lamexp_version_confg;
|
||||
const char* lamexp_version_release(void) { return g_lamexp_version_rname; }
|
||||
unsigned int lamexp_toolver_neroaac(void) { return g_lamexp_toolver_neroaac; }
|
||||
unsigned int lamexp_toolver_fhgaacenc(void) { return g_lamexp_toolver_fhgaacenc; }
|
||||
unsigned int lamexp_toolver_fdkaacenc(void) { return g_lamexp_toolver_fdkaacenc; }
|
||||
unsigned int lamexp_toolver_qaacenc(void) { return g_lamexp_toolver_qaacenc; }
|
||||
unsigned int lamexp_toolver_coreaudio(void) { return g_lamexp_toolver_coreaudio; }
|
||||
|
||||
|
@ -93,7 +93,8 @@ public:
|
||||
AAC_ENCODER_NONE = 0,
|
||||
AAC_ENCODER_NERO = 1,
|
||||
AAC_ENCODER_FHG = 2,
|
||||
AAC_ENCODER_QAAC = 3,
|
||||
AAC_ENCODER_FDK = 3,
|
||||
AAC_ENCODER_QAAC = 4,
|
||||
};
|
||||
|
||||
//Consts
|
||||
|
@ -26,6 +26,7 @@
|
||||
#include "Model_Settings.h"
|
||||
#include "Encoder_AAC.h"
|
||||
#include "Encoder_AAC_FHG.h"
|
||||
#include "Encoder_AAC_FDK.h"
|
||||
#include "Encoder_AAC_QAAC.h"
|
||||
#include "Encoder_AC3.h"
|
||||
#include "Encoder_DCA.h"
|
||||
@ -106,6 +107,13 @@ AbstractEncoder *EncoderRegistry::createInstance(const int encoderId, const Sett
|
||||
encoder = aacEncoder;
|
||||
}
|
||||
break;
|
||||
case SettingsModel::AAC_ENCODER_FDK:
|
||||
{
|
||||
FDKAACEncoder *aacEncoder = new FDKAACEncoder();
|
||||
aacEncoder->setProfile(settings->aacEncProfile());
|
||||
encoder = aacEncoder;
|
||||
}
|
||||
break;
|
||||
case SettingsModel::AAC_ENCODER_NERO:
|
||||
{
|
||||
AACEncoder *aacEncoder = new AACEncoder();
|
||||
@ -198,20 +206,21 @@ const AbstractEncoderInfo *EncoderRegistry::getEncoderInfo(const int encoderId)
|
||||
|
||||
switch(encoderId)
|
||||
{
|
||||
case SettingsModel::MP3Encoder: info = MP3Encoder::getEncoderInfo(); break;
|
||||
case SettingsModel::MP3Encoder: info = MP3Encoder ::getEncoderInfo(); break;
|
||||
case SettingsModel::VorbisEncoder: info = VorbisEncoder::getEncoderInfo(); break;
|
||||
case SettingsModel::AC3Encoder: info = AC3Encoder::getEncoderInfo(); break;
|
||||
case SettingsModel::FLACEncoder: info = FLACEncoder::getEncoderInfo(); break;
|
||||
case SettingsModel::OpusEncoder: info = OpusEncoder::getEncoderInfo(); break;
|
||||
case SettingsModel::DCAEncoder: info = DCAEncoder::getEncoderInfo(); break;
|
||||
case SettingsModel::MACEncoder: info = MACEncoder::getEncoderInfo(); break;
|
||||
case SettingsModel::PCMEncoder: info = WaveEncoder::getEncoderInfo(); break;
|
||||
case SettingsModel::AC3Encoder: info = AC3Encoder ::getEncoderInfo(); break;
|
||||
case SettingsModel::FLACEncoder: info = FLACEncoder ::getEncoderInfo(); break;
|
||||
case SettingsModel::OpusEncoder: info = OpusEncoder ::getEncoderInfo(); break;
|
||||
case SettingsModel::DCAEncoder: info = DCAEncoder ::getEncoderInfo(); break;
|
||||
case SettingsModel::MACEncoder: info = MACEncoder ::getEncoderInfo(); break;
|
||||
case SettingsModel::PCMEncoder: info = WaveEncoder ::getEncoderInfo(); break;
|
||||
case SettingsModel::AACEncoder:
|
||||
switch(getAacEncoder())
|
||||
{
|
||||
case SettingsModel::AAC_ENCODER_QAAC: info = QAACEncoder::getEncoderInfo(); break;
|
||||
case SettingsModel::AAC_ENCODER_QAAC: info = QAACEncoder ::getEncoderInfo(); break;
|
||||
case SettingsModel::AAC_ENCODER_FHG: info = FHGAACEncoder::getEncoderInfo(); break;
|
||||
case SettingsModel::AAC_ENCODER_NERO: info = AACEncoder::getEncoderInfo(); break;
|
||||
case SettingsModel::AAC_ENCODER_FDK: info = FDKAACEncoder::getEncoderInfo(); break;
|
||||
case SettingsModel::AAC_ENCODER_NERO: info = AACEncoder ::getEncoderInfo(); break;
|
||||
default: MUTILS_THROW("Unknown AAC encoder specified!");
|
||||
}
|
||||
break;
|
||||
@ -480,6 +489,10 @@ int EncoderRegistry::getAacEncoder(void)
|
||||
{
|
||||
return SettingsModel::AAC_ENCODER_QAAC;
|
||||
}
|
||||
else if(lamexp_tools_check("fdkaac.exe"))
|
||||
{
|
||||
return SettingsModel::AAC_ENCODER_FDK;
|
||||
}
|
||||
else if(lamexp_tools_check("fhgaacenc.exe") && lamexp_tools_check("enc_fhgaac.dll") && lamexp_tools_check("nsutil.dll") && lamexp_tools_check("libmp4v2.dll"))
|
||||
{
|
||||
return SettingsModel::AAC_ENCODER_FHG;
|
||||
|
@ -403,6 +403,7 @@ double InitializationThread::doInit(const size_t threadCount)
|
||||
//Look for AAC encoders
|
||||
initAacEnc_Nero();
|
||||
initAacEnc_FHG();
|
||||
initAacEnc_FDK();
|
||||
initAacEnc_QAAC();
|
||||
|
||||
m_bSuccess = true;
|
||||
@ -522,7 +523,7 @@ void InitializationThread::initAacEnc_Nero(void)
|
||||
{
|
||||
if(!MUtils::OS::is_executable_file(neroFileInfo[i].canonicalFilePath()))
|
||||
{
|
||||
qDebug("%s executbale is invalid -> NeroAAC encoding support will be disabled!\n", MUTILS_UTF8(neroFileInfo[i].fileName()));
|
||||
qDebug("%s executable is invalid -> NeroAAC encoding support will be disabled!\n", MUTILS_UTF8(neroFileInfo[i].fileName()));
|
||||
return;
|
||||
}
|
||||
}
|
||||
@ -645,7 +646,7 @@ void InitializationThread::initAacEnc_FHG(void)
|
||||
|
||||
if(!MUtils::OS::is_executable_file(fhgFileInfo[0].canonicalFilePath()))
|
||||
{
|
||||
qDebug("FhgAacEnc executbale is invalid -> FhgAacEnc support will be disabled!\n");
|
||||
qDebug("FhgAacEnc executable is invalid -> FhgAacEnc support will be disabled!\n");
|
||||
return;
|
||||
}
|
||||
|
||||
@ -728,6 +729,96 @@ void InitializationThread::initAacEnc_FHG(void)
|
||||
}
|
||||
}
|
||||
|
||||
void InitializationThread::initAacEnc_FDK(void)
|
||||
{
|
||||
const QString appPath = QDir(QCoreApplication::applicationDirPath()).canonicalPath();
|
||||
|
||||
const QFileInfo fdkFileInfo(QString("%1/fdkaac.exe").arg(appPath));
|
||||
if(!(fdkFileInfo.exists() && fdkFileInfo.isFile()))
|
||||
{
|
||||
qDebug("FdkAac encoder binary not found -> FdkAac encoding support will be disabled!\n");
|
||||
return;
|
||||
}
|
||||
|
||||
if(!MUtils::OS::is_executable_file(fdkFileInfo.canonicalFilePath()))
|
||||
{
|
||||
qDebug("%s executable is invalid -> FdkAac encoding support will be disabled!\n", MUTILS_UTF8(fdkFileInfo.fileName()));
|
||||
return;
|
||||
}
|
||||
|
||||
qDebug("Found FdkAac encoder binary:\n%s\n", MUTILS_UTF8(fdkFileInfo.canonicalFilePath()));
|
||||
|
||||
//Lock the fdkaac binaries
|
||||
QScopedPointer<LockedFile> fdkAacBin;
|
||||
try
|
||||
{
|
||||
fdkAacBin.reset(new LockedFile(fdkFileInfo.canonicalFilePath()));
|
||||
}
|
||||
catch(...)
|
||||
{
|
||||
qWarning("Failed to get excluive lock to FdkAac encoder binary -> FdkAac encoding support will be disabled!");
|
||||
return;
|
||||
}
|
||||
|
||||
QProcess process;
|
||||
MUtils::init_process(process, fdkFileInfo.absolutePath());
|
||||
|
||||
process.start(fdkFileInfo.canonicalFilePath(), QStringList() << "--help");
|
||||
|
||||
if(!process.waitForStarted())
|
||||
{
|
||||
qWarning("FdkAac process failed to create!");
|
||||
qWarning("Error message: \"%s\"\n", process.errorString().toLatin1().constData());
|
||||
process.kill();
|
||||
process.waitForFinished(-1);
|
||||
return;
|
||||
}
|
||||
|
||||
quint32 fdkAacVersion = 0;
|
||||
QRegExp fdkAacSig("fdkaac\\s+(\\d)\\.(\\d)\\.(\\d)", Qt::CaseInsensitive);
|
||||
|
||||
while(process.state() != QProcess::NotRunning)
|
||||
{
|
||||
if(!process.waitForReadyRead())
|
||||
{
|
||||
if(process.state() == QProcess::Running)
|
||||
{
|
||||
qWarning("fdkaac process time out -> killing!");
|
||||
process.kill();
|
||||
process.waitForFinished(-1);
|
||||
return;
|
||||
}
|
||||
}
|
||||
while(process.canReadLine())
|
||||
{
|
||||
QString line = QString::fromUtf8(process.readLine().constData()).simplified();
|
||||
if(fdkAacSig.lastIndexIn(line) >= 0)
|
||||
{
|
||||
quint32 tmp[3];
|
||||
if(MUtils::regexp_parse_uint32(fdkAacSig, tmp, 3))
|
||||
{
|
||||
fdkAacVersion = (qBound(0U, tmp[0], 9U) * 100U) + (qBound(0U, tmp[1], 9U) * 10U) + qBound(0U, tmp[2], 9U);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(fdkAacVersion <= 0)
|
||||
{
|
||||
qWarning("fdkaac version could not be determined -> fdkaac encoding support will be disabled!");
|
||||
return;
|
||||
}
|
||||
else if(fdkAacVersion < lamexp_toolver_fdkaacenc())
|
||||
{
|
||||
qWarning("fdkaac version is too much outdated (%s) -> fdkaac support will be disabled!", MUTILS_UTF8(lamexp_version2string("v?.?.?", fdkAacVersion, "N/A")));
|
||||
qWarning("Minimum required fdkaac version currently is: %s\n", MUTILS_UTF8(lamexp_version2string("v?.?.?", lamexp_toolver_fdkaacenc(), "N/A")));
|
||||
return;
|
||||
}
|
||||
|
||||
qDebug("Enabled fdkaac encoder %s.\n", MUTILS_UTF8(lamexp_version2string("v?.?.?", fdkAacVersion, "N/A")));
|
||||
lamexp_tools_register(fdkFileInfo.fileName(), fdkAacBin.take(), fdkAacVersion);
|
||||
}
|
||||
|
||||
void InitializationThread::initAacEnc_QAAC(void)
|
||||
{
|
||||
const QString appPath = QDir(QCoreApplication::applicationDirPath()).canonicalPath();
|
||||
@ -756,7 +847,7 @@ void InitializationThread::initAacEnc_QAAC(void)
|
||||
|
||||
if(!MUtils::OS::is_executable_file(qaacFileInfo[0].canonicalFilePath()))
|
||||
{
|
||||
qDebug("QAAC executbale is invalid -> QAAC support will be disabled!\n");
|
||||
qDebug("QAAC executable is invalid -> QAAC support will be disabled!\n");
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -56,6 +56,7 @@ private:
|
||||
void initTranslations(void);
|
||||
void initAacEnc_Nero(void);
|
||||
void initAacEnc_FHG(void);
|
||||
void initAacEnc_FDK(void);
|
||||
void initAacEnc_QAAC(void);
|
||||
|
||||
bool m_bSuccess;
|
||||
|
Loading…
Reference in New Issue
Block a user