Commit Graph

1516 Commits

Author SHA1 Message Date
53b12027e6 Moved all IPC functions into the MUtilities libraries. 2014-12-13 23:27:47 +01:00
3a582a028c Moved JobObject as well as the remaining GUI functions into the MUtilities library. 2014-12-08 22:06:01 +01:00
f064187bb1 Set the system timer precision to 1 ms while encoding, because this seems to improve encoding performance quite a bit. Will be reset to default, when encoding is done, so LameXP won't "eat the battery" while idle. 2014-12-06 22:05:35 +01:00
b704d5161f Use QElapsedTimer class instead of MUtils::OS::perfcounter_read() where appropriate. 2014-12-06 15:54:58 +01:00
f602bfa6c9 Re-implemented reference counting for JobObject. 2014-12-06 01:10:27 +01:00
1da760139a AbstractTool optimization: Only wait for the *remaining* delay time, rather than the complete delay time. 2014-12-05 23:01:38 +01:00
67429fbada Fixed a bug in AbstractTool class that could cause a severe slow-down on process creation, especially with a large number of threads: The same mutex was used in the constructor and the startProcess() function, which is unnecessary anyway. But even worse, there was a sleep() call in the startProcess() function that could *block* the mutex for a very long time! So if the "main" thread tried to create a new object while one of the "worker" threads was sleeping inside startProcess(), this blocked the whole "main" thread. D'oh! 2014-12-05 22:39:31 +01:00
8211b417d6 Moved all the Sound-specific functions into MUtilities library. 2014-12-05 21:08:26 +01:00
187f1bbfb8 Moved set_window_icon() function into MUtilities function. 2014-12-04 22:59:30 +01:00
06db588742 Moved some more OS-specific functions into the MUtilities library. 2014-12-04 00:02:42 +01:00
6412989afd Moved code to set up the console icon into the MUtilities library. 2014-12-03 22:19:18 +01:00
6eb4de942c Raised limit for maximum number of parallel instances to 32. 2014-11-30 22:11:47 +01:00
dc98131fd1 Moved various auxiliary macros into the MUtils library. 2014-11-30 21:32:23 +01:00
e579a5057d Fixed possible memory corruption in ProcessThread::init(). 2014-11-30 20:25:22 +01:00
5a290e1560 Moved Natural String Sort functions into MUtils library + moved the "Prerequisites" out of the project directory. 2014-11-30 18:47:53 +01:00
751fd85056 Don't delete QApplication object, since MUtils will take care of this. 2014-11-29 05:12:23 +01:00
ac38eb9f8d Fixed ProgramDataBaseFileName. 2014-11-29 02:27:59 +01:00
6f4b0589c3 Moved more functions into MUtils library, especially all the Qt initialization code and some more OS-specific stuff. 2014-11-29 01:25:18 +01:00
a2f1885717 Moved startup and error handling routines into MUtilities library. 2014-11-26 02:39:02 +01:00
29d8b98a3f Moved all terminal support functions into MUtilities library. 2014-11-25 22:34:20 +01:00
bdfef0ed1c Removed the lamexp_fatal_exit() function. 2014-11-25 18:23:03 +01:00
26ac505329 Moved get_os_version() function into MUtilities library. 2014-11-25 17:33:27 +01:00
52142c6e6b Moved the CPU detection code into the MUtils library. 2014-11-25 03:15:03 +01:00
035699c84e Moved various functions into MUtils library and removed obsolete code from LameXP. 2014-11-25 02:14:42 +01:00
d7100e2207 Fixed static build with MUtils library. 2014-11-24 22:26:00 +01:00
004a201b19 Now using UpdateChecker and KeccakHash from the MUtils library. Removed obsolete files. 2014-11-24 19:33:12 +01:00
5d8816961f Added MUtils library to the solution + some adjustments of the project file. 2014-11-24 18:28:53 +01:00
db3b152415 Added support for Visual Studio 2013 with Update-4. 2014-11-19 02:06:42 +01:00
c57c027aac Do not attempt to download signature file, if download of update info failed already. 2014-11-17 15:42:55 +01:00
b2be8c9ac0 Updated MediaInfo binaries to v0.7.71 (2014-11-09), compiled with ICL 15.0 and MSVC 12.0. 2014-11-17 14:51:41 +01:00
add0de2472 Overhaul of the Windows version detection code + added support for Windows 10 (Technical Preview). 2014-11-12 16:00:40 +01:00
f02f8ce0d9 Bump version. 2014-11-11 01:37:05 +01:00
7502e3ea83 Added one more update mirror. 2014-11-02 16:36:41 +01:00
2925f842e7 Updated GnuPG binary to v1.4.18 (2014-06-30), compiled with GCC 4.9.1. 2014-10-08 23:29:23 +02:00
373702e07e Updated SoX binary to v14.4.2-Git (2014-10-06), compiled with ICL 15.0 and MSVC 12.0. 2014-10-06 16:46:41 +02:00
e47206b768 Updated MediaInfo binaries to v0.7.70 (2014-09-03), compiled with ICL 15.0 and MSVC 12.0. 2014-10-05 21:17:50 +02:00
2a29e1ae94 Make sure the "queued" slots in the FileAnalyzer thread are really executed in the context of the proper thread. 2014-08-17 16:35:29 +02:00
57deb0f08a Updated list of known hosts. 2014-08-16 15:19:10 +02:00
0a65e42012 Fixed potential crash when trying to import Cue Sheet where *all* files are missing: If none of the files exist, we shouldn't try to analyze them. The real problem, however, was a potential NULL-pointer access in the FileAnalyzer thread's destructor code. Thanks to XhmikosR for reporting! 2014-08-16 14:45:18 +02:00
a63baad374 Added support for Visual Studio 2013 with Update-3. 2014-08-13 14:54:54 +02:00
7d993ee1ee Updated Nero Digital address. 2014-08-11 14:04:05 +02:00
c4414e1802 Added web-link to bug-tracker on GitHub. 2014-06-27 21:06:33 +02:00
f02043bd21 Some improvements and simplifications to error handling functions. 2014-06-27 16:20:47 +02:00
a32b63a232 Updated mpg123 decoder binary to v1.20.1 (2014-06-17), compiled with GCC 4.9.0. 2014-06-27 16:20:10 +02:00
21498ebc80 Updated OggEnc2 binaries to v2.87 using libvorbis v1.3.4 and aoTuV v6.03_2014 (2014-06-24), compiled with MSVC 9.0 and ICL 14.0. 2014-06-26 00:10:30 +02:00
30f6d6c9c2 Bumped version. 2014-06-23 19:50:23 +02:00
2a81f245ff Updated list of known hosts. 2014-06-23 18:58:47 +02:00
f743a37066 Removed the BerliOS mirror, one and for all, because it no longer exists! 2014-06-23 17:42:25 +02:00
40f1df4037 Removed dependency on QtMain: Simply call mainCRTStartup() instead of WinMainCRTStartup(). 2014-06-23 17:41:40 +02:00
70792d3bb5 Updated list of known hosts. 2014-05-30 20:58:42 +02:00
1bb96ba6db Some code clean up. Use an enum type for the "overwrite" mode instead of two separate flags. 2014-05-30 16:52:34 +02:00
b7b4fa31bd Tweaked LAME algorithm quality modes a bit. 2014-05-30 16:50:41 +02:00
6417cccdf6 Re-enabled BerliOS mirror again (for now), since the site is up and running again. 2014-05-30 16:49:37 +02:00
b97d383e39 Updated Korean translation. Thanks to JaeHyung Lee <kolanp@gmail.com>. 2014-05-29 13:54:12 +02:00
e44d9937bc Updated VS2010 project file to include the compatibility manifest. 2014-05-29 01:00:07 +02:00
4accd22659 Make sure we don't try to delete the input file when running in "overwrite existing file" mode and the input/output happen to be identical. 2014-05-28 16:49:58 +02:00
e365edaafd Added a missing QDir::toNativeSeparators() call. 2014-05-28 16:45:44 +02:00
e808cb2949 Got rid of some more Windows 2000 compatibility cruft. 2014-05-21 15:23:56 +02:00
223461afd9 Fixed "mailto:" links in about dialog box. 2014-05-19 22:21:35 +02:00
deb32e7ff2 Removed BerliOS mirror, because BerliOS is now gone for good :-( 2014-05-19 17:46:47 +02:00
92c80cfd46 Added compiler detection for Visual Studio 2013 with Update-2. 2014-05-19 17:45:45 +02:00
e9ee5cfce4 Consider application as "busy" when a modal dialog is currently showing. 2014-05-19 17:44:41 +02:00
fd3fd3fe16 Added list of source code mirrors to the about dialog. 2014-05-04 21:46:46 +02:00
70dc9c4510 Properly translate the corner widget in changeEvent(). 2014-05-04 21:00:59 +02:00
aaaa9f970a Bum version. 2014-05-04 19:15:34 +02:00
62aa72d283 Implemented menubar corner widget. 2014-05-04 16:59:06 +02:00
7ec2a8d9d7 Updated MediaInfo binaries to v0.7.69 (2014-04-26), compiled with ICL 14.1 and MSVC 12.0. 2014-04-28 21:29:23 +02:00
51f1fbbca1 Updated the translator's guide. 2014-04-28 21:14:02 +02:00
729b386056 Updated Qt runtime libraries to v4.8.6 (2014-04-25), compiled with MSVC 12.0. 2014-04-25 20:26:31 +02:00
e5b605d1e4 Updated Opus encoder/decoder libraries v1.1.x and Opus-Tools v0.1.8 to latest Git Master (2014-04-13). 2014-04-13 19:08:38 +02:00
555f8709a6 Updated MediaInfo binaries to v0.7.68 (2014-04-08), compiled with ICL 14.1 and MSVC 12.0. 2014-04-09 17:09:52 +02:00
78ef63729f Cosmetics. 2014-04-09 17:08:09 +02:00
5ca4cc8917 Added command-line options to control the application font size. 2014-03-12 20:11:03 +01:00
c574a5e550 Some code clean-up in Model_AudioFile class. 2014-02-08 17:24:54 +01:00
a07cec8342 Fixed ArtworkModel::isEmpty() to actually give the expected result. Previous code gave the opposite of the expected result! This bug could cause the cover artwork to be lost in AudioFileModel_MetaInfo::update(). 2014-02-08 17:24:24 +01:00
b4ee0af400 Open development for version 4.10. 2014-02-08 17:23:44 +01:00
14baf8d52d Refactored host connectivity check into a separate function. Also decrease the number of remaining connection attempts *only* if the connection failed. 2014-02-02 21:37:22 +01:00
272214778a Disable Auto-Update, by default, when running in "portable" mode. 2014-02-02 18:01:26 +01:00
40250a3cad Bound the maximum number of hosts that will be tested during connectivity test, rather than testing *all* hosts. This avoids that the connectivity test will take VERY long to fail when the Internet connection is actually NOT working. 2014-02-02 18:00:21 +01:00
c285d94e94 Moved one file to the correct folder/filter (VS2013 solution) and fixed a stupid typo. 2014-01-27 15:35:35 +01:00
9f816e9aa6 Bump version. 2014-01-26 18:31:20 +01:00
ee3bd21fd9 Updated Korean translation. Thanks to JaeHyung Lee <kolanp@gmail.com>. 2014-01-22 01:38:45 +01:00
794ea65ddf Fixed compilation with VS2010 solution/project files. 2014-01-19 21:34:55 +01:00
7a687f2d7b Fixed QAAC detection, hopefully. 2014-01-19 17:33:39 +01:00
7aea8ce063 Updated the QAAC add-in for LameXP to QAAC v2.33 (2014-01-14), compiled with MSVC 12.0. 2014-01-19 17:19:01 +01:00
3c5a448d30 Updated Swedish translation. Thanks to Åke Engelbrektson <eson57@gmail.com>. 2014-01-18 15:57:48 +01:00
9f0aba42f8 Updated changelog file. 2014-01-17 01:47:24 +01:00
d29f292264 Now using Unix 'zip' for generating the ZIP packages. Eliminates dependency on external 7-Zip and allows for adding an archive comment. 2014-01-08 21:43:24 +01:00
0cbe3953bb Fixed compilation under VS2012. 2014-01-01 17:51:20 +01:00
29089c567b Fixed number of tools (only relevant for DEBUG builds) + fixed an out-of-bounds array access in the error message. 2014-01-01 17:50:56 +01:00
cc38035087 Happy new year 2014! 2014-01-01 17:05:52 +01:00
df5aaee581 Some code clean-up. Also removed some obsolete compatibility code. 2013-12-17 22:36:16 +01:00
0b1644e287 Make sure the user has "admin" privileges before checking for updates, because it's kind of pointless to download the update if you won't be able install it anyway. This is especially important for Windows XP, where we don't have UAC. Note that UAC implies "admin" privileges, because the installer process will be elevated as needed - even if the current user is *not* an administrator. 2013-12-16 18:07:45 +01:00
e08b187f37 Updated WavPack decoder binary to v4.70.0 (2013-10-19), compiled with ICL 14.0 and MSVC 12.0. 2013-12-08 17:01:59 +01:00
e7a87c8dd1 Updated Opus encoder/decoder libraries to v1.1-final and Opus-Tools to v0.1.8 (2013-12-05). 2013-12-07 15:21:01 +01:00
9eb8ecaa62 Updated MediaInfo binaries to v0.7.65 (2013-11-20), compiled with ICL 14.1 and MSVC 12.0. 2013-12-06 14:22:51 +01:00
60cb91665f Updated Monkey's Audio binary to v4.12 (2013-06-26). Also added encoding support for Monkey's Audio format, including APEv2 tagging support. Since the MAC tool does NOT support tagging, a custom tagging utility support is used. 2013-12-04 22:36:19 +01:00
b05a7ac3ef Moved all sound effects into Qt-style resources. Sound files can be played back directly from program memory by passing a pointer to the WAVE data into PlaySound as the first argument (and using the SND_MEMORY flag), it's just not documented very well. 2013-12-03 22:19:11 +01:00
4635d9bf76 Make sure splash screen gets focus. Also better key press/release handling in working banner. 2013-11-30 13:10:34 +01:00
72f2ef3617 Also adjust the *width* of the about dialog. 2013-11-30 13:09:36 +01:00
9d9e9336c8 Bump version. 2013-11-29 13:23:27 +01:00
5e9d8bf850 Some code clean-up. 2013-11-29 03:48:11 +01:00
1d8709689b Improved initialization of the TEMP directory. 2013-11-29 01:21:52 +01:00
ed34cf1fc8 Improved initialization of the working banner. Also banner can now be minimized using the "M" key. 2013-11-29 01:20:59 +01:00
4eef80fdc3 Some updates to the updater thread. 2013-11-29 01:18:36 +01:00
dd39addb39 More improvements to the working banner. Now using QWindowsVistaSytle when "sheet of glass" effect is enabled, for more consistent look. Also fixes some drawing glitches. 2013-11-26 23:01:37 +01:00
ff30f71c13 Refactored finalization code, so each "Global..." file can have its own finalization function. 2013-11-26 23:00:33 +01:00
ee05308c0e Only re-extract installer executable, if it doesn't exist or differs. 2013-11-25 19:52:53 +01:00
9b5334ba27 Improved processing dialog + setup a proper "big" window icon for application windows (improves the look on the taskbar in Windows 7+) 2013-11-25 18:34:59 +01:00
f641ddd9f0 Some improvements to Working Banner: Now use a pointer member variable for the UI. Also update Taskbar progress indicator. 2013-11-25 13:58:21 +01:00
f3ae451b32 Make sure the TEMP path is *not* replaced when running the web-update tool, as this will prevent the updater from working correctly. 2013-11-25 02:20:44 +01:00
0bc1157906 Fixed a possible NULL-pointer access in DWMAPI wrapper code when DWM is not available. 2013-11-24 22:40:39 +01:00
3d5b9541ed More improvements to Splash Screen and the working banner. 2013-11-24 17:55:35 +01:00
1f98e90244 More improvements to Splash Screen. 2013-11-24 00:02:32 +01:00
b8b11e59aa Improved splash screen. 2013-11-23 20:57:38 +01:00
d5dcb9ad42 Refactored update checks into a separate thread, for better code reusability. 2013-11-17 21:53:28 +01:00
3932df90f8 Properly clean-up hidden files. 2013-11-17 21:52:02 +01:00
1903247e35 Implemented signal handlers. 2013-11-17 21:51:41 +01:00
a5602cf04d Reorganized global functions: The file "Global.h" was split into multiple file in order to reduce the dependencies and to make things a bit more logic. 2013-11-03 23:43:21 +01:00
7b2ca53f3f Added function to calculate the number threads from the number of cores. This function is a cubic spline that resembles the current benchmarking results. 2013-11-02 16:39:59 +01:00
a3fdbee680 Slightly improved benchmark code (outliers will now be dropped). 2013-11-02 14:28:52 +01:00
9b376cd2a8 Remember previous dropbox position and restore it on next startup. 2013-11-02 01:07:23 +01:00
9001726df1 Tweaked number of threads a bit. 2013-11-02 01:06:45 +01:00
a849831cc2 Fixed LockedFile to make it work with non-static Qt again. Regression in previous commit. 2013-11-02 01:06:15 +01:00
d2a7406fc3 Tweaked the number of extractor threads. Also added a simple benchmark function (disabled in regular builds). 2013-11-01 19:34:27 +01:00
d888855e4a Fixed a resource (file descriptor) leak: If a QFile object was created from a C Runtime file descriptor, it will *not* close the file, when QFile::close() is called or when the QFile object is destroyed. Furthermore, if a C Runtime file descriptor is obtained via _open_osfhandle(), we *must* to close that file descriptor via _close() function. Closing the underlying system HANDLE via CloseHandle() is *not* sufficient, as the file descriptor is won't be freed! On the other hand, the _close() function *does* close the underlying system HANDLE for us. In order to avoid a resource (file descriptor) leak, we will now store the file descriptor and close it properly via _close() in the destructor.
Note: The resource leak probably did not cause any harm, simply because we did not create many LockedFile objects. But it *did* cause serious issues when running the benchmark. Anyway, it should be fixed now.
2013-11-01 19:32:47 +01:00
2ea758c079 Improved dropbox widget, including proper multi-monitor (virtual desktop) support. 2013-11-01 00:08:40 +01:00
175e5a56d1 Added new drop zone image, adopted from VLC Media Player. 2013-10-31 01:22:21 +01:00
6a862013eb Added lamexp_init_process() function, which can be used to setup a QProcess object. 2013-10-29 02:05:43 +01:00
2fa32af174 Updated GNU Wget binary to a version that doesn't use SYSTEM_WGETRC. 2013-10-29 02:05:00 +01:00
086849928c Updated GNU Wget binary to v1.14.0 (2012-08-05), compiled with GCC 4.8.1. This also fixes a strange crash of Wget that only occurred on one my old Windows XP laptop (not in any of the Windows XP VM's). 2013-10-28 23:57:40 +01:00
dcca2f0dd0 Do not set Title or Cover Art for the global meta info object, when assigning the info from a file. 2013-10-28 00:28:47 +01:00
992b21a3d0 Tweaked fade in/out delta value. 2013-10-28 00:27:29 +01:00
083af203a3 Added "tick" sound when switching tabs. 2013-10-28 00:26:54 +01:00
3b0577c733 More improvements in Splash Screen (application initialization) code. It's now completely event-driven. 2013-10-27 16:13:14 +01:00
75fad0f0fd Some code clean-up. 2013-10-26 15:49:16 +02:00
655427d7a6 Slightly improved debugger thread code. 2013-10-25 17:55:27 +02:00
1b519d48c7 Fix copying a file's Meta Info into the Meta Data tab: Retain original "position" value rather than overwriting it. 2013-10-25 17:53:47 +02:00
dd98a78fad Improved LameXP message logging code. This also fixes an invocation of the invalid message handler, when the console window gets closed unexpectedly. 2013-10-25 15:38:43 +02:00
18b645f349 Improved file analyzer to retain the original ordering of files imported from a playlist. 2013-10-25 00:48:18 +02:00
7b016d5fec Updated license info. 2013-10-23 22:25:04 +02:00
a2e02220dc Fix compatibility to WindowsXP: The GetErrorMode() API requires Vista or newer, so don't use it! 2013-10-21 18:48:51 +02:00
61409ee2e6 Fixed a problem in VS2013 project to file that always triggered a rebuild, even if nothing had been changed. 2013-10-21 16:51:01 +02:00
496f9cda7b Fix compilation with VS2012. 2013-10-21 16:17:42 +02:00
026735a25b Fixed a typo. 2013-10-21 15:09:44 +02:00
b54886f242 Introduce QUTF8 macro and replace ".toUtf8().constData()" everywhere. 2013-10-21 15:00:55 +02:00
b3046a46a7 Added compatibility manifest file. This allows for detection Windows 8.1 correctly via GetVersionEx(), though GetVersionEx() will still be broken for *future* Windows versions. 2013-10-21 15:00:03 +02:00
bb687bdc45 Some improvements in Splash Screen (application initialization) code. 2013-10-20 23:36:53 +02:00
3d7fbf70f5 Improved compatibility mode detection, taking into account Windows 8.1. 2013-10-20 23:34:04 +02:00
8a3094653c Improved InitializationThread::selfTest() function: It will now verify the hashes of *all* tools (it still is called in DEBUG builds only). 2013-10-20 19:12:55 +02:00
be9cf25645 Improved Windows version detection code. 2013-10-20 19:12:00 +02:00
26d186cdf8 Fix detection of Windows 8.1: Starting with Windows 8.1, the GetVersion(Ex) API has been broken and will now pretend to be Windows 8.0. Since GetVersion(Ex) can no longer be relied on, we will use VerifyVersionInfo() from now on, in the hope that they won't break this one too. 2013-10-19 16:02:22 +02:00
f47e9c950d Better method to check the network status. 2013-10-19 16:00:13 +02:00
e13e6b7fec Updated changelog and removed some debug code. 2013-10-18 22:12:55 +02:00
8a64624ba4 Use the THROW macro instead of plain "throw" in the complete project. 2013-10-18 21:37:40 +02:00
414b261c0d Improved tool extraction code in InitializationThread. Also implemented better exception handling. 2013-10-18 20:49:22 +02:00
1af32090dd Added project/solution files for Visual Studio 2013. 2013-10-18 01:59:08 +02:00
2f543e11ab Some more improvements of ExtractorTask class. 2013-10-16 18:24:16 +02:00
33e04007fb Properly detect Windows 8, now that Qt supports it officially. 2013-10-16 18:23:53 +02:00
8b0d60dbeb Updated Nero AAC web-site URL. 2013-10-16 18:23:12 +02:00
477e76d5c3 Updated GnuPG binary to v1.4.15 (2013-10-05), compiled with GCC 4.8.1. 2013-10-16 03:33:15 +02:00
e7872a52ae Small improvement in InitializationThread class. 2013-10-16 03:31:14 +02:00
d0e994b347 Removed some obsolete compatibility code in lamexp_detect_cpu_features(). 2013-10-16 03:29:43 +02:00
d206eccac9 Improved CueSheet import progress indicator. 2013-10-13 21:28:06 +02:00
5e5fbe06f9 Updated CueImportDialog and CueSheetModel as well as the CueSheet helper classes to use AudioFileModel_MetaInfo. Significant code simplification. 2013-10-13 20:50:12 +02:00
f57f65d709 Improved lamexp_version_date() function. 2013-10-13 20:46:47 +02:00
449e438787 Use AudioFileModel_MetaInfo instead of AudioFileModel where appropriate. Also updated MetaInfoModel to work with a AudioFileModel_MetaInfo (not only with a full AudioFileModel). 2013-10-13 00:21:37 +02:00
0435637c75 Fix compilation after previous changes to AudioFileModel in previous commit. 2013-10-12 22:55:41 +02:00
feccffdfd1 Major redesign of the AudioFileModel class: Split data into separate AudioFileModel_MetaInfo and AudioFileModel_TechInfo classes. 2013-10-12 20:38:07 +02:00
82b1249c0d Redesign of the ArtworkModel in order to improve the handling of the implicitly shared data. 2013-10-12 20:36:45 +02:00
ae72ce1fcf Yet another small overhaul of ProcessingDialog and ProcessThread. 2013-10-12 20:34:59 +02:00
c878013200 Small improvement in lamexp_finalization() function. 2013-10-12 20:33:13 +02:00
8fd45dc4dd Split ProcessThread::start() method into ProcessThread::init() and ProcessThread::start(). 2013-10-11 20:43:31 +02:00
a8114d6677 Got ride of more legacy compatibility code. 2013-10-11 20:40:28 +02:00
2190c254f8 Got rid of some more legacy compatibility code in the FileSystemModelEx class. 2013-10-10 01:46:30 +02:00
cb3f50e5f3 Moved some initialization stuff out of the ProcessThread::run() function into a new initialization function. Also got rid of one Mutex, because file names are now generated in the init function, i.e. by the "main" thread. 2013-10-09 16:11:58 +02:00
c8242b494c Improved lamexp_rand_str() function. Also this function now returns shorter strings (by default), which still should be enough to avoid name clashes. 2013-10-09 16:09:20 +02:00
94c199d849 Make ProcessingDialog use a QThreadPool and, accordingly, make ProcessThread inherit from QRunnable rather than QThread. 2013-10-09 03:14:38 +02:00
10001f4ef0 Fixed compilation with VS2010 and removed an obsolete file. 2013-10-09 01:07:19 +02:00
7ddbdb240b Updated mpg123 decoder binary to v1.16.0 (2013-10-06), compiled with GCC 4.8.1. 2013-10-08 22:45:42 +02:00
df2d696f71 Updated Simplified Chinese translation, thanks to <kidneybean@sohu.com>. 2013-10-08 22:41:40 +02:00
81de5f2300 Implemented AbstractEncoderInfo for the AAC encoders too. 2013-10-07 02:28:01 +02:00
3e51bbabf1 Added one more mirror to the list. 2013-10-07 00:10:05 +02:00
24217c3b71 More code refactoring: Moved most of the Win32 API dependencies into wrapper functions in Global.cpp, which greatly reduces platform-specific includes. 2013-10-07 00:01:15 +02:00
7602317652 Some code-clean up. Removed "Windows.h" include from "Global.h", because most source files won't need the Win32 API stuff. Also got rid of some Windows 2000 compatibility cruft. 2013-10-06 19:28:12 +02:00
9dbb317a5c Redesigned FileAnalyzer and Analyzer task. New design is much cleaner, resulting in simpler code and faster file import performance. Also, playlist files are now handled ahead of everything else, which makes sure the progress indicator increases monotonically. Preliminary tests show that file import performance has been more than doubled! For example, the time for importing ~1000 files decreased from 116 seconds to 46 seconds on the development machine, which corresponds to a 2.5x speed-up. 2013-10-06 19:26:08 +02:00
a8cdb050fb Replaced the 64-Bit binaries with versions compressed by UPX (does now support 64-Bit Windows executables, yay!) instead of MPRESS. Results in slightly bigger files, but noticeably faster startup times. 2013-10-06 19:18:31 +02:00
33b55de005 Tweaked default values for encoder settings. 2013-10-03 19:14:24 +02:00
df1da97f4e Implemented AbstractEncoder for the remaining encoders, except AAC for now. 2013-10-03 18:48:07 +02:00
d1cdbd77cd Refactored EncoderRegistry::createInstance() method to handle all common encoder parameters at a single place. Also added function to load/store the custom parameters. 2013-10-03 17:01:37 +02:00
4faf3a2e40 More refactoring of the SettingsModel. Also moved encoder reset function from MainWindow to EncoderRegistry. 2013-10-03 15:56:10 +02:00
d76c4a1702 Implemented AbstractEncoderInfo for some more encoders. Remaining encoders not yet working. 2013-10-02 19:17:33 +02:00
6c9e3c562f Refactored Main window to use AbstractEncoderInfo rather than having all the encoder-specific information hardcoded in the GUI code. Also much improved EncoderReistry class and some clean-up in SettingsModel class. 2013-10-02 16:39:26 +02:00
70a117078b Bump version. 2013-10-02 16:37:41 +02:00
ccb19ec07f Added new AbstractEncoderInfo class, which provides information about a specific encoder's configuration options. Also moved code for creating encoder instances into a separate EncoderRegistry class. 2013-09-30 21:39:56 +02:00
db95584256 Bump version. 2013-09-04 00:35:55 +02:00
fa4eadbd31 Updated Polish translation. Thanks to Sir Daniel K <sir.daniel.k@gmail.com>. 2013-08-28 12:06:01 +02:00
6d6f0ee943 Some improvements/simplifications in strnatcmp() function. 2013-08-25 15:34:41 +02:00
8f77ee3b5f Ignore case when sorting file names. 2013-08-23 19:16:40 +02:00
11268cd5b1 Some improvements (hopefully) to the strnatcmp() function. 2013-08-23 14:00:25 +02:00
409117ec39 Implemented "natural ordering" for sorting the input files. Code is based on the strnatcmp() by Martin Pool, released under the "zlib" license. 2013-08-23 00:19:00 +02:00
5094abe699 Updated GnuPG binary to v1.4.14 (2013-07-25), compiled with GCC 4.8.1 + updated WUpdate accordingly. 2013-08-21 19:20:39 +02:00
f2f0783ca6 Updated Opus encoder/decoder libraries to v1.1-beta and Opus-Tools to v0.1.6git (2013-07-22). 2013-07-23 00:05:43 +02:00
1f241a1045 Refactored AAC encoder selection code. 2013-07-14 19:45:28 +02:00
ceec5fa5e2 Some code refactoring. 2013-07-14 19:04:32 +02:00
94d6d16ce3 Added GUI option to reset all encoder settings. 2013-07-14 18:14:26 +02:00
822e1e1ffb Implemented caching for settings model. 2013-07-14 17:13:01 +02:00
78d1bf5773 Updated GNU Wget binary to v1.13.4 (2011-09-17). 2013-07-13 00:11:54 +02:00
d21ec67da6 Updated list of known hosts. 2013-07-13 00:11:43 +02:00
5eec75c2bb Updated MediaInfo binaries to v0.7.64 (2013-07-05), compiled with ICL 13.1 and MSVC 10.0. 2013-07-11 00:39:10 +02:00
7771e1127e Silenced some debug outputs. 2013-07-11 00:37:23 +02:00
88142733d2 Fixed a copy&paste bug that cause the output directory to be reset when actually the most recent input directory should be reset. 2013-07-09 22:34:06 +02:00
9323260e32 The encoder configuration (rc-mode, bitrate, quality-level) is now maintained *separately* for each encoder. This was quite a massive change and needs more testing! Also a bug where OggEnc quality modes -2 and -1 would be clipped 0 has been fixed. 2013-07-07 23:49:29 +02:00
de5fe6e058 Added support for MSVC 2012 with Update-3 + moved 3rd party Qt src file to prerequisites. 2013-06-30 00:50:38 +02:00
a8348b01e8 Refactored lamexp_temp_folder2() function. This also fixes a potential deadlock at application when %TMP% points to an invalid folder. Now using separate locks for lamexp_temp_folder2() and lamexp_known_folder(). 2013-06-29 18:06:21 +02:00
03c2a9fccc Updated project configuration for Qt 4.8.5. 2013-06-21 22:18:58 +02:00
d3c6428787 Updated Opus encoder/decoder libraries to v1.1.x and Opus-Tools to v0.1.6 (2013-06-17). 2013-06-17 22:58:44 +02:00
7ee53d4a55 Added new source file view overlay icon. 2013-06-16 22:07:28 +02:00
81b2f4ad08 Updated Opus encoder/decoder libraries to v1.1.x and Opus-Tools to v0.1.6 (2013-06-16). 2013-06-16 22:06:58 +02:00
2bd468ee76 Added VER_LAMEXP_CONSOLE_ENABLED config option. 2013-06-16 14:00:56 +02:00
f85afb6627 Updated FLAC encoder/decoder binaries to v1.3.0 (2013-05-27), compiled with ICL 13.0. 2013-06-16 13:50:24 +02:00
ead3b0456b Updated mirror list. 2013-06-14 20:32:24 +02:00
5af2963729 Updated Ukrainian translation. Thanks to Arestarh <arestarh@ukr.net>. 2013-05-06 01:26:59 +02:00
1c21516604 Got rid of a superfluous Beep() that was triggered on application startup. 2013-05-02 23:02:02 +02:00
da3c312aed Added another update mirror. 2013-05-02 23:01:00 +02:00
c2db2acd20 Now using a separate version/build number for the configuration, so INI settings don't get invalidated with each build. 2013-05-02 23:00:26 +02:00
614fbfac54 Bump version. 2013-04-28 22:42:17 +02:00
e44bf3b087 Fixed one URL. 2013-04-28 21:44:36 +02:00
482ff55758 Some fixes for German translation, contributed by Bodo Thevissen <bodo@thevissen.de>. 2013-04-25 22:34:49 +02:00
601a4a6d7e Some tweaks to previewContextActionTriggered() function. 2013-04-24 23:58:07 +02:00
933d29cf87 Bump version. 2013-04-23 23:41:31 +02:00
bc2d1416aa Updated Opus encoder/decoder libraries to v1.1.x and Opus-Tools to v0.1.6 (2013-04-23). 2013-04-23 23:37:56 +02:00
aefe502044 Update Spanish translation. Thanks to Rub3nCT <rub3nct@gmail.com>. 2013-04-21 18:53:26 +02:00
cab51b22e4 Updated Opus encoder/decoder libraries to v1.1.x and Opus-Tools to v0.1.6 (2013-04-21). 2013-04-21 13:25:27 +02:00
692943bde7 Updated Changelog. 2013-04-19 21:09:05 +02:00
e3811a739a Updated Opus encoder/decoder libraries to v1.1.x and Opus-Tools to v0.1.6 (2013-04-18). 2013-04-18 22:56:03 +02:00
51e12e3f72 Added one more link. 2013-04-18 22:54:51 +02:00
978da1214d Added built-time option to make "portable" version. 2013-04-17 22:05:45 +02:00
9c83fd4b68 Fixed lamexp_clean_filename() to also handle double-quote characters. 2013-04-16 22:43:52 +02:00
4e7859def5 Updated Swedish translation. Thanks to Åke Engelbrektson <eson57@gmail.com>. 2013-04-16 21:54:28 +02:00
a94e6ecd34 Increase priority of "main" thread. 2013-04-16 21:54:01 +02:00
b4b1d12df2 Bump version. 2013-04-15 22:41:22 +02:00
a572d9e4aa Fixed VS2010 project files. 2013-04-11 00:02:01 +02:00
093d4eadbe Updated UPX version on "About" screen. 2013-04-11 00:01:33 +02:00
db75b36e72 Updated mpg123 decoder binary to v1.15.3 (2013-04-03), compiled with GCC 4.8.0. 2013-04-09 22:22:00 +02:00
9f2bffd2fd Updated Monkey's Audio binary to v4.11 (2013-01-20), including STDERR flush fix. 2013-04-08 23:53:49 +02:00
b2019d679e Updated Valdec decoder binary to AC3Filter Tools v1.0a (2013-04-07). 2013-04-08 01:14:49 +02:00
1cc7161773 Some core refactoring. 2013-04-08 01:13:58 +02:00
135aaaf77f Properly detect VS2012 with Update-2. 2013-04-08 01:12:58 +02:00
86b079cb74 Yet another slightly different approach to move the disque. 2013-04-04 01:25:04 +02:00
d139d11d71 Make sure the Taskbar state is set properly in the Splash screen. 2013-03-29 03:07:15 +01:00
6ba1f0e5d1 Slightly different approach to move the disque. 2013-03-29 03:06:26 +01:00
62d8bd9376 Updated web-site links. 2013-03-17 21:50:29 +01:00
1dc71117bb Updated FAQ document. 2013-03-17 14:08:42 +01:00
b8ae188843 Updated Valdec decoder binary to v1.4.0a (2013-03-17). 2013-03-17 03:11:23 +01:00
57d385aed5 Updated mirror list. 2013-03-17 03:10:26 +01:00
62af2f575e Synced MP3 algorithm quality settings to LAME manual. Now we only use values 9, 7, 3 and 0. Also note that, in VBR mode, there are only two settings (9-5 and 4-0). 2013-03-13 22:59:54 +01:00
620045c840 Updated Opus encoder/decoder libraries to v1.1.x and Opus-Tools to v0.1.6 (2013-03-12). 2013-03-12 22:25:52 +01:00
0cb8afd575 Bump version. 2013-03-05 20:59:52 +01:00
1c5da201da Updated MediaInfo binaries to v0.7.62 (2013-02-22), compiled with ICL 12.1.7 and MSVC 10.0. 2013-03-05 01:07:51 +01:00
00d531f178 Improved handling of the VBR parameter for AAC encoders. 2013-02-26 21:24:48 +01:00
a69a1f6dbe Improved lamexp_themes_enabled() function. 2013-02-25 23:12:14 +01:00
c71f535c35 Updated Changelog. 2013-02-24 00:49:24 +01:00
3a8705ea05 Re-compiled QKeccakHash library (VS2012) with /arch:IA32 option set explicitly, which should make sure it will work on systems without SSE(2) support. 2013-02-24 00:39:00 +01:00
6d040adb17 Bump version. 2013-02-12 20:47:15 +01:00
84bb92e117 Updated Valdec decoder binary to v1.4.0a (2013-02-12), rebuilt using a stripped-down version of libav to massively reduce size. 2013-02-12 18:19:29 +01:00
1d792a4ef7 Updated Valdec decoder binary to v1.4.0a (2013-02-11), based on latest AC3Filter Tools and built with *static* libav libraries. 2013-02-12 00:09:12 +01:00
d7cb3001aa Now each tool can also have a "tag" in addition to the version number. 2013-02-12 00:08:21 +01:00
e5a1b950eb Bump version. 2013-02-10 00:25:05 +01:00
895cd586cf Updated SoX binary to v14.4.1 (2013-01-09), compiled with ICL 13.0 and MSVC 10.0. 2013-02-09 15:06:47 +01:00
c59a60a161 Updated Opus encoder/decoder libraries to v1.1.x and Opus-Tools to v0.1.6 (2013-02-09). 2013-02-09 01:34:47 +01:00
bd0a370aee Welcome to year 2013 ;-) 2013-02-08 23:57:50 +01:00
d7a392472d Updated Web Updater and Elevator binaries. Now using updated Aero plug-in (again). 2013-02-03 15:58:53 +01:00
1fe90b4feb Updated Web Updater and Elevator binaries. Now has massive code clean-up. 2013-02-02 02:01:09 +01:00
544771f0af Updated Web Updater and Elevator binaries. Now with newer Aero plug-in. 2013-01-29 02:27:16 +01:00
b4cd7c3a29 Handle two more plurals correctly. 2013-01-28 22:22:49 +01:00
8f7a16c104 Updated GnuPG binaries to v1.4.13, compiled with GCC 4.7.2. 2013-01-26 03:09:54 +01:00
ea953bb6e7 Updated Opus encoder/decoder libraries to v1.1.x and Opus-Tools to v0.1.6 (2013-01-24). Also updated command-line parameters used to create meta tags. 2013-01-24 23:21:46 +01:00
5ac220ea30 Handle one more plural correctly. 2013-01-23 23:39:30 +01:00
f68523efd6 Properly handle plurals in translation files. 2013-01-23 23:25:31 +01:00
3b99433226 Expose "disable resampling" option for Opus decoder in the GUI. 2013-01-18 02:42:37 +01:00
5b57083210 Updated Opus binaries. Also added option to disable the resampling in Opus decoder (i.e. always output 48.000 Hz). 2013-01-18 01:08:58 +01:00
491bf5f135 Updated Opus encoder/decoder libraries to v1.1.x and Opus-Tools to v0.1.6 (2013-01-17). 2013-01-17 20:46:07 +01:00
21e1fd7945 Switched the method of how the Designer UI file is used in the LogView class to "The Single Inheritance Approach" (with "Using a Pointer Member Variable"). This is the method which Qt recommends for large projects. 2013-01-14 00:37:19 +01:00
4a8dd85d7e Fix executable name for OpusEnc. 2013-01-14 00:36:54 +01:00
cb042bbf3c Added new function to detect the current date. Slightly more robust against manipulations. 2013-01-12 01:53:43 +01:00
f689ce5646 Some style-specific tweaks. 2012-12-19 23:43:27 +01:00
2ec20c2d02 Bump version. 2012-12-17 22:51:47 +01:00
5c3386dbde Switched the method of how the Designer UI file is used in the CueSheetImport class to "The Single Inheritance Approach" (with "Using a Pointer Member Variable"). This is the method which Qt recommends for large projects. 2012-12-15 23:23:22 +01:00
a48dfadc98 Added "folder up" action to the context menu of the "output folder" tab. 2012-12-14 23:50:56 +01:00
e21c61788e Don't update buttons when output folder view is disabled. Also slightly changed "folder up" icon. 2012-12-14 01:20:23 +01:00
12db5d2c81 Added "Folder Up" button to the "Output Folder" tab. Also some code refactoring. 2012-12-14 00:34:10 +01:00
30507937de Added global lamexp_fatal_exit() function. 2012-12-11 23:22:20 +01:00
7e96cd3fe5 Switched the method of how the Designer UI file is used in the DropBox class to "The Single Inheritance Approach" (with "Using a Pointer Member Variable"). This is the method which Qt recommends for large projects. 2012-12-11 22:51:18 +01:00
04e9565d50 Fixed superfluous argument in printf(), found by static code analysis. 2012-12-11 01:01:19 +01:00
a812aa28fa Switched the method of how the Designer UI file is used in the AboutDialog class to "The Single Inheritance Approach" (with "Using a Pointer Member Variable"). This is the method which Qt recommends for large projects. 2012-12-10 23:50:45 +01:00
7c5ccbe417 Fixed "always recompile" problem with VS2012 project file. Also removed a superfluous include. 2012-12-10 23:35:14 +01:00
30f36b8fee Switched the method of how the Designer UI file is used in the UpdateDialog class to "The Single Inheritance Approach" (with "Using a Pointer Member Variable"). This is the method which Qt recommends for large projects. 2012-12-09 22:39:17 +01:00
0f2f13d85b Updated Opus encoder/decoder libraries to v1.1.x and Opus-Tools to v0.1.6 (2012-12-07). 2012-12-08 00:22:29 +01:00
bf34e9e78f Improved handling of fatal/critical messages in lamexp_message_handler() function. 2012-12-08 00:21:58 +01:00
fb00b2b11e Switched the method of how the Designer UI file is used in the ProcessingDialog class to "The Single Inheritance Approach" (with "Using a Pointer Member Variable"). This is the method which Qt recommends for large projects. 2012-12-08 00:21:10 +01:00
7077650bb6 Switched the method of how the Designer UI file is used in the MainWindow class to "The Single Inheritance Approach" (with "Using a Pointer Member Variable"). This is the method which Qt recommends for large projects. 2012-12-04 01:35:48 +01:00
1d960d5da6 When passing tag on the command-line, replace certain characters that can be "problematic" on the command-line. 2012-12-02 22:55:22 +01:00
799b73c258 Updated Copying.txt file. 2012-12-02 15:11:22 +01:00
1e09d998a2 Updated Visual Studio 2012 to "Update 1" (final release). 2012-11-28 01:16:37 +01:00
316da47f10 Simplified QKeccakHash and added self-test function. 2012-11-27 01:02:55 +01:00
41c129a0ec Upgraded build environment to Microsoft Visual Studio 2012 Update-1 (CTP #4). 2012-11-24 16:27:38 +01:00
c220a0b73f Updated Opus encoder/decoder libraries to v1.1.x and Opus-Tools to v0.1.5 (2012-11-23). Also removed obsolete Opus options. 2012-11-23 21:03:59 +01:00
d0288b7c57 Made getLogFile() function "const" and made sure that we will return a const reference to the QStringList object inside the QHash, rather than a reference to a local object. 2012-11-18 14:23:54 +01:00
15697af84d Make VS2010 configurations use the Windows SDK v7.1. Needs to set the LXP_WINSDK_ROOT environment variable. 2012-11-17 21:54:11 +01:00
93f8e28620 Made the ProgressModel expose the QIcon's, so we can re-use them int the ProcessingDialog instead of maintaining a separate set of icons there. 2012-11-17 19:26:55 +01:00
c180306e85 Added checks for Windows SDK version. 2012-11-17 19:22:56 +01:00
8afe2767d4 Set "MinimumRequiredVersion" to 5.1 (WinXP). 2012-11-16 01:43:47 +01:00
4241a411cf Merge branch 'master' of github.com:lordmulder/LameXP
Conflicts:
	etc/Translation/Blank.ts
	etc/Translation/LameXP_PL.ts
	etc/Translation/LameXP_SV.ts
	src/Config.h
2012-11-15 18:13:03 +01:00
38b2cc1c84 Updated VS2012 project file. 2012-11-15 18:11:59 +01:00
c90a5f4542 If no item matches the current filter, hide all items and show an overlay message rather than disabling the filter. 2012-11-15 18:06:04 +01:00
69dec13fa0 Updated VS2012 project file. 2012-11-15 16:48:51 +01:00
7d9cd7ab1a Updated VS2008 projects/solution files. 2012-11-13 22:20:55 +01:00
d11f698d80 Added Visual Studio 2012 project files. 2012-11-12 22:47:13 +01:00
3d431c099f Added compiler detection for VS2012. 2012-11-12 21:42:56 +01:00
b57650acda Removed "Qt5" configurations, as they were badly maintained anyway. Also fixed QKeccakHash for the "Release_Static" configuration. 2012-11-12 20:42:37 +01:00
bcb85f22c3 Now using Keccak/SHA-3 to verify the built-in files. 2012-11-12 00:32:39 +01:00
20d7a2cb58 Bugfix: One of the context menu items was never connected. 2012-11-11 19:36:31 +01:00
8ba1c016c6 Delete "blank" output file, if encoding failed or was aborted (or never actually started). 2012-11-11 18:58:08 +01:00
07dfd3211a Added an option to filter the progress model entries. If filter is enabled, only progress items that match the filter will be shown in the TableView. 2012-11-11 18:33:55 +01:00
977f4d4213 "Overwrite Mode" should actually be working now. 2012-11-08 21:19:45 +01:00
4d3bce8fc3 Added option for "Overwrite Mode" (keep both, skip file, replace) to "Advanced Options" tab. Does not do anything yet. 2012-11-08 00:42:55 +01:00
f3e14e02d2 Version v4.06 is released! 2012-11-04 14:19:39 +01:00
d7fc31f4b9 Updated list of update mirrors. 2012-10-31 22:54:35 +01:00
7770e021da Bump version. 2012-10-31 22:26:51 +01:00
7339a05c23 Updated ALAC decoder binary to refalac v0.56, based on ALAC reference implementation by Apple (Apache License). 2012-10-29 20:47:49 +01:00
837f0588e7 Bum version. 2012-10-28 22:25:35 +01:00
23f0b98205 Updated MediaInfo binaries to v0.7.61+ (2012-10-28), compiled with ICL 12.1.7 and MSVC 10.0. 2012-10-28 18:41:16 +01:00
2e4cb2125e Updated list of update mirrors. 2012-10-28 15:08:59 +01:00
9aeb6b6b64 Updated FAAD2 binary in order to fix a bug in the progress printing code, which caused a buffer overrun with very long file names. 2012-10-27 01:38:20 +02:00
a85eb47897 Some installer improvements. 2012-10-24 22:45:58 +02:00
16fc9f523f Updated installer script. 2012-10-21 20:28:44 +02:00
eb75c942ee Bump version. 2012-10-19 21:05:33 +02:00
a2fd0f2460 Added an "About..." entry to the system menu. 2012-10-17 23:34:42 +02:00
61d440303b Small code clean-up. 2012-10-15 00:41:38 +02:00
e0624e7c45 Updated translators guide. 2012-10-14 23:01:54 +02:00
4ed70b7bea If a QM file is used instead of a built-in translation, the QM file will now be remembered. Also the translation system can now be re-initialized by pressing CTRL+F5 in the Main window. 2012-10-14 22:22:30 +02:00
50e9d01cfb Now using rand_s() to generate random numbers, which doesn't need a seed. Falling back to qsrand() + qrand() on platforms that don't support rand_s(). 2012-10-13 12:36:41 +02:00
3fc27a2e17 Slightly modified license checking code. 2012-10-10 23:01:58 +02:00
265019b952 Updated Korean translation. Thanks to JaeHyung Lee <kolanp@gmail.com>. 2012-10-09 22:34:16 +02:00
7b4f57ad21 Fixed a stupid typo. 2012-10-09 17:52:11 +02:00
0fac4fbb8f Slightly improved seeding of the PRNG (again). 2012-10-09 17:43:17 +02:00
4b1ae971ad Updated Swedish translation. Thanks to Åke Engelbrektson <eson57@gmail.com>. 2012-10-09 12:50:42 +02:00
72aea452d9 Added one more update mirror + slightly improved seeding of the PRNG. 2012-10-09 01:58:36 +02:00
d2f5d705bd Bump version. 2012-10-08 00:25:48 +02:00
e0e08ee25f Some document updates. 2012-10-05 23:58:43 +02:00
703297c665 Updated documents. 2012-09-27 23:04:26 +02:00
f9890315b4 Updated mpg123 decoder binary to v1.14.4+ (2012-09-24), compiled with GCC 4.7.1. 2012-09-26 23:21:21 +02:00
0cbf86e215 Updated Opus encoder/decoder libraries to v1.0.1 and Opus-Tools to v0.1.5 (2012-09-22). Also disabled "--speech" and "--music" options, as latest Opus-Tools doesn't support those anymore. 2012-09-23 18:05:37 +02:00
057cb6fe4f Some optimizations in GUI resize code. 2012-09-20 22:52:52 +02:00
e03bd4c9ae Updated Changelog and increased version to v4.06. 2012-09-20 01:27:56 +02:00
581dd4e0b8 Some more improvements to "About" dialog. Also added "Special Thanks" section to "Contributors" tab. 2012-09-18 01:41:00 +02:00
1d41938715 Some more tweaks to the new About dialog. 2012-09-16 18:13:53 +02:00
43b86174cb Implemented late initialization for "About" tabs. 2012-09-16 14:15:32 +02:00
a8b4426402 New "tapped" about dialog. 2012-09-15 20:46:26 +02:00
7f3bcbedb7 Improved lamexp_get_os_version() function. 2012-09-09 23:05:00 +02:00
e5f493a822 Updated MediaInfo binaries to v0.7.60 (2012-09-02), compiled with ICL 12.1.7 and MSVC 10.0. 2012-09-07 22:45:05 +02:00
a4e78633e6 Fixed a regression in 3e18116dd5. 2012-09-07 02:14:29 +02:00
29bbf478de Version v4.05 is released! 2012-09-03 22:56:35 +02:00
67609a9b65 Updated Russian translation. Thanks to Иван Митин <bardak@inbox.ru>. 2012-08-24 21:20:00 +02:00
2878dc7ad0 Treat Wave files with IEEE Float (32-Bit) sample format separately from Wave files with 32-Bit Integer sample format. For example, the Opus encoder accepts 32-Bit IEEE Float just fine, but does NOT like 32-Bit Integer as input. 2012-08-22 23:52:55 +02:00
0a28e39309 Update Spanish translation. Thanks to Rub3nCT <rub3nct@gmail.com>. 2012-08-22 21:55:02 +02:00
c5de867488 Fixed a typo in Opus encoder class that broke constrained variable bitrate encoding. 2012-08-22 21:54:06 +02:00
12db8ca7fc Updated F.A.Q. document. 2012-08-21 21:31:18 +02:00
8d6774ba24 Updated some URL string. 2012-08-20 22:23:38 +02:00
c6fcad10c4 Slightly tweaked initialization checks. 2012-08-19 14:34:04 +02:00
9a7f0d5176 Small optimization of known_folder() function. Will now return a const reference. 2012-08-18 22:37:10 +02:00
f282cff154 Updated Visual Studio 2008 project file. 2012-08-18 20:55:59 +02:00
eb88a05341 Turned more global objects into pointers in order to allow late initialization. Also slightly restructured the global locks and added another global lock to guard the IPC struct. 2012-08-18 16:36:39 +02:00
cb2b770a88 Made lamexp_arguments() thread-safe, just to be sure. 2012-08-17 23:47:01 +02:00
655876b447 Bump version. 2012-08-17 20:01:06 +02:00
81011c6e40 Updated Opus-Tools binaries to v0.1.4 with latest libopus (2012-08-16), compiled with ICL 12.1.7 and MSVC 10.0. 2012-08-16 23:28:45 +02:00
123706d87e Update Chinese translation. Thanks to 456Vv <123@456vv.com>. 2012-08-15 21:22:46 +02:00
1af98225a1 Made the lamexp_known_folder() function cached. 2012-08-13 23:12:19 +02:00
f026dce18e Updated Visual Studio 2008 project file. 2012-08-13 17:42:28 +02:00
fb79a81013 Updated Visual Studio 2008 project file. 2012-08-12 20:00:26 +02:00
Git User
8724767980 Made some more global functions thread-safe by using locks. Avoids a race condition in the multi-threaded initialization code. 2012-08-12 17:01:17 +02:00
Git User
a4f3abf6a0 Updated MediaInfo binaries to v0.7.59 (2012-08-08), compiled with ICL 12.1.7 and MSVC 10.0. 2012-08-12 17:00:31 +02:00
661a0de52f Updated DCA Enc binary to the build from 2012-04-19. 2012-08-07 23:10:53 +02:00
8cdb7d88c3 Updated Changelog. 2012-08-07 21:22:11 +02:00
df15c53629 Bump minimum required FhgAacEnc version to 2012-08-06. 2012-08-06 23:42:46 +02:00
c8ad241132 Bump minimum required QAAC version v1.39. 2012-08-05 22:40:56 +02:00
637cc4d884 Updated Opus-Tools binaries to v0.1.4, compiled with ICL 12.1.7 and MSVC 10.0. 2012-08-05 21:28:43 +02:00
531660516d Updated mpg123 decoder binary to v1.14.4 (2012-07-26), compiled with GCC 4.6.1. Also includes Windows 2000 bugfix now. 2012-08-05 14:46:11 +02:00
0deb759096 Updated F.A.Q. document. 2012-08-02 23:32:21 +02:00
0ac460b8dd Update changelog. 2012-08-01 21:31:33 +02:00
2cd7fb1faf Updated MediaInfo binary to a current SVN/Trunk version with Opus support. Also removed the preliminary Opus detection hack. 2012-08-01 00:17:12 +02:00
87ebf07930 Removed a superfluous MessageBeep(). 2012-07-31 21:03:43 +02:00
36c8ba7822 Some more refactoring of the event filter functions: De-uglify the "global" event filter function by using more fine-grained filter functions. 2012-07-30 21:44:44 +02:00
3e18116dd5 Added "custom parameters" options for Opus. Also added a "help" button for all "custom parameters" edit boxes, which will simply show the CLI help screen. 2012-07-29 22:55:02 +02:00
c095bbee95 Some refactoring of the macros. Use the "do {...} while(0)" template where it makes sense. 2012-07-29 19:13:58 +02:00
d44c57e009 Updated Opus binaries. Now compiled with runtime CPU-detection. Also we now have builds with "experimental encoder perceptual tuning" from the "exp_analysis7" branch, enabled by default. 2012-07-29 16:46:01 +02:00
701390b7f7 Updated Opus binaries with version the reports progress as percent. Also added SSE2 versions of opusdec/opusenc binaries. 2012-07-24 23:15:10 +02:00
278f9091fb Replaced the Opus encoder/decoder binary wit custom binaries that support UTF-8 file names and flush the console output properly + expose more Opus encoder options in the GUI. 2012-07-21 19:16:12 +02:00
fcceeeaaac Added support for Opus Audio Codec, based on Opus-Tools v0.1.3 (2012-07-10) by Xiph.org/Mozilla 2012-07-20 23:19:08 +02:00
a49c58a96a Updated mpg123 decoder binary to v1.14.3 (2012-07-01), compiled with GCC 4.6.1. 2012-07-12 00:32:09 +02:00
bc668c1501 Updated Changelog. 2012-07-09 00:33:07 +02:00
c8bd61db92 Updated deployment scripts to keep file attributes, 2012-07-02 01:19:32 +02:00
3c89d3c2ef Include the file "PRE_RELEASE_INFO.txt" in all pre-release builds of LameXP. 2012-07-01 21:11:04 +02:00
e49093c5c7 Updated MediaInfo binary to v0.7.58 (2012-05-28), compiled with ICL 12.1.7 and MSVC 10.0. 2012-06-25 21:59:28 +02:00
17794881a4 Extinguished some remaining uses of argv[] or QApplication::arguments(). 2012-06-23 18:18:57 +02:00
30bc239cd8 Now using our own command-line parser, based on GetCommandLineW() + CommandLineToArgvW , instead of using QApplication::arguments(). This is less portable, but Qt's internal command-line parser has some rather strange behavior with processing certain characters. As a result, with Qt's command-line parser, some path names passed to LameXP got screwed up! Specifically "C:\Some Path\''Foo''.mp3" got mangled to "C:\Some Path''Foo''.mp3", i.e. the Backslash disappeared! Should be fixed now. 2012-06-22 15:49:56 +02:00
accee3da7a When generating the initial output-folder name for the Cue Sheet dialog, make sure there is no folder *or* file of that name yet. The previous code did check for folders only! 2012-06-21 18:31:36 +02:00
e69391919a CueSheet Importer: Fixed generation of the initial (suggested) output folder name when the CUE file name ends with one or multiple dots (now really). 2012-05-29 20:52:45 +02:00
d42c8ceaa0 Added one more mirror. 2012-05-29 19:53:53 +02:00
285746235e CueSheet Importer: Fixed generation of the initial (suggested) output folder name when the CUE file name ends with one or multiple dots. 2012-05-29 18:32:28 +02:00
a291771153 Now using a separate QSemaphore to limit the number of tasks in the queue of the QThreadPool. Instead of starting exactly as many task as there are threads in the pool and adding a new task only after a running one finished, we will now keep a fixed number of tasks in the queue (currently hardcoded to 32). Since there always will be more tasks left in the queue than there are threads in the pool, we ensure that no thread will ever become idle. Might be slightly faster than the "old" approach. 2012-05-25 02:24:44 +02:00
428342af21 Fixed HTML code, need to escape the ampersand. 2012-05-20 23:44:50 +02:00
23165c55a0 Some small updates to the file analyzer benchmark code. 2012-05-15 21:34:20 +02:00
c18785ce1e Changed the method to synchronize the analyzer threads: We now use QSet to maintain a list of the thread id's of all threads that are still running - instead of only recording the highest thread id that has finished. This way a thread can now actually check if there still is any running thread with a lower thread id. Before thread n could only check if thread n-1 has finished yet or not. As a result we can relax the waiting now. Only threads that want to emit a file will wait for the "previous" threads to finish. 2012-05-14 00:50:16 +02:00
5f91fc8749 Updated mpg123 decoder binary to v1.14.2 (2012-05-12), compiled with GCC 4.6.1. 2012-05-12 22:37:29 +02:00
df9f181cb4 Bump version. 2012-05-12 13:09:16 +02:00
193488e26f Fix: In order to ensure the "correct" ordering, *all* threads need to wait for the previous threads to finish - not only the threads that will emit a file. If both, thread n and n+1, want to emit a file and thus n+1 has to wait for n, we additionally must allow thread n+2 to terminate before n and n+1, even if n+2 does *not* emit a file. That's because as soon as n+2 finishes, it unblocks all threads x with x < n+2, which includes n and n+1. If that happens and n+1 is still waiting for n, we effectively allow n+1 to emit its file *before* n. By blocking all threads x with x > n+1 until n+1 has finished (regardless of whether they want to emit a file or not) this problem is resolved. As long as we assume that most threads actually *do* emit a file, this commit shouldn't hurt the performance. 2012-05-12 02:51:24 +02:00
68d2a28c7b Updated MediaInfo binary to v0.7.57 (2012-05-02), compiled with ICL 12.1.7 and MSVC 10.0. 2012-05-12 02:41:20 +02:00
9175daae0d Some code refactoring regarding the QWaitCondition/QMutex in FileAnalyzer_Task. 2012-05-09 02:54:41 +02:00
814b725fe3 Slightly improved progress indicator for file analyzer: Additional files from playlists are now taken into account earlier. 2012-05-08 01:12:26 +02:00
21154b10c4 Some speed-optimizations for the Progress model. 2012-05-07 03:03:14 +02:00
72e8558b5f Added progress indicator to CueSheet import thread. 2012-05-06 23:58:18 +02:00
e13b93f51b Implemented progress indicator for the working banner. 2012-05-06 04:57:00 +02:00
a7a776ed82 Implemented a method to disables update signals from the FileList model. This will significantly speed-up adding a lot files, but comes with the drawback that updates won't be visible immediately. 2012-05-05 21:56:14 +02:00
160b997c76 Now using a QWaitCondition to synchronize the FileAnalyzer threads. 2012-05-05 03:55:27 +02:00
2b514558f9 Fixed a regression in b00b527897. 2012-05-04 21:43:44 +02:00
7d36e9d82e Some minor tweaks to the multi-threaded FileAnalyzer class. 2012-05-04 16:40:02 +02:00
b00b527897 Rewrote FileListModel class to use a QHash map internally. This should speed-up the lookup, especially when adding a huge number of files. 2012-05-04 16:39:02 +02:00
5d69b91c5b Fixed a potential stack overflow due to a QApplication::processEvents() that was called from within a slot which may itself be called again while event processing (leading to a recursion that can eventually overflow the stack!) 2012-05-04 16:38:05 +02:00
14492b9c49 Implemented multi-threading for file analyzer. Now multiple files can be analyzed in parallel. This should speed-up adding files quite a bit, especially when a huge number of files is added at once. 2012-05-04 04:01:10 +02:00
1da4db9594 Made tool registry thread-safe, using a QReadWriteLock. 2012-05-03 23:11:16 +02:00
6cfcf067cc Implemented multi-threading for tool extraction. The extraction of the tools is limited by a/v software. Without an a/v software interfering, the extraction takes no time (less than a second on the test machine). With an a/v software slowing down things, it can take up to 20 seconds or longer. By extracting several files in parallel, we give the a/v software the chance to take advantage of multi-threading. Should help quite a bit, on multi-core systems. 2012-04-29 21:17:51 +02:00
c2a41d783f Development open for version 4.05 now. 2012-04-29 18:00:06 +02:00
f9f70514dd Added Swedish translation. Thanks to Åke Engelbrektson <eson57@gmail.com>. 2012-04-29 17:35:14 +02:00
1364183abc Version v4.04 is released! 2012-04-26 13:43:40 +02:00
26694de518 Updated FAQ document. 2012-04-23 22:50:20 +02:00
caf835dbf9 Better method to prevent MediaInfo from detecting playlist files. 2012-04-20 22:39:19 +02:00
5ff45cd494 Changed temporary installer file name. 2012-04-20 21:11:06 +02:00
d326d39a72 Bump version. 2012-04-19 20:25:12 +02:00
9dccdbee57 Workaround for a recent change in MediaInfo's behavior for M3U playlist files. 2012-04-19 14:40:05 +02:00
9481029960 Make it possible to remove items with the DEL key. 2012-04-19 00:56:04 +02:00
80ef7e0563 Bump version. 2012-04-18 23:15:39 +02:00
40c8874313 Updated Chinese/Taiwanese translation. Thanks to 456Vv <123@456vv.com>. 2012-04-18 22:53:07 +02:00
b2bddd9072 Updated VS2008 project files. 2012-04-17 16:42:30 +02:00
20a9e2632b Added one missing NOBR(). 2012-04-16 18:52:45 +02:00
e8864878a1 Updated German translation. 2012-04-16 01:21:54 +02:00
3bdd8e97a6 Updated Polish translation. Thanks to Sir Daniel K <sir.daniel.k@gmail.com>. 2012-04-15 15:35:26 +02:00
d16323d546 Updated dcaenc binary to version 2012-01-14. 2012-04-15 02:15:32 +02:00
b231e078c1 Updated Spanish translation. Thanks to Rub3n CT <rub3nct@gmail.com>. 2012-04-14 20:10:15 +02:00
c41c904ffa Detect Windows 8 and detect if Windows 8 is running in "compatibility mode" for Windows 7. 2012-04-13 16:37:47 +02:00
1972bb3d2d Bump version. 2012-04-12 14:08:56 +02:00
599519efd2 Updated Qt runtime libraries to v4.8.1 (2012-03-14), compiled with MSVC 10.0. 2012-04-12 03:18:48 +02:00
255b21ab2c Added yet another configuration to build LameXP with *static* Qt5 libraries. Still experimental! 2012-04-11 03:08:31 +02:00
48a23c27d7 Added a new configuration for initial Qt 5.0 support. Needed a few code-changes and workarounds. Highly experimental! 2012-04-11 00:44:40 +02:00
6fa4e9e21d Updated MediaInfo binary to v0.7.56 (2012-04-08), compiled with ICL 12.1.7 and MSVC 10.0. 2012-04-10 03:52:03 +02:00
71b125805c Small optimization of lamexp_themes_enabled(). 2012-04-10 03:51:04 +02:00
027471b385 Updated MediaInfo binary to v0.7.55 (2012-04-05), compiled with ICL 12.1.7 and MSVC 10.0. 2012-04-10 01:25:34 +02:00
f05365e383 Fixed a few memory leaks found by VLD. 2012-04-06 23:15:58 +02:00
7016383fbb Added support for the Visual Leak Detector. This effects "Debug" builds only. 2012-04-06 22:24:05 +02:00
2023c98546 Slightly changed temporary installer name. 2012-04-06 16:22:08 +02:00
d16a116a1d Fix potential memory leak: According to the docs, setModel() creates and sets a new SelectionModel, so we need to remember and delete the "old" SelectionModel. 2012-04-06 16:15:19 +02:00
3b2892b2fd Bump version. 2012-04-06 02:00:44 +02:00
65423ba125 Don't check for elevation on Wine. It seems Wine always runs the process elevated (tested under Wine 1.4 on Ubuntu 12.04). 2012-04-05 16:24:33 +02:00
b3df635784 Changed creation of QFileSystemModel. Object will now be created when the user first visits the "Output Folder" tab. Also added option to "refresh" the directory outline, which will effectively destroy and re-create the QFileSystemModel in order to discard all data that may be cached. 2012-04-05 15:24:45 +02:00
cdf300cd22 Some more Wine workarounds: Disable x64 binaries, as it seems they fail to load under Wine (tested with Wine 1.4 under Ubuntu 12.04 x64). 2012-04-05 13:40:52 +02:00
6adb7b94e7 Updated Russian translation. Thanks to Иван Митин <bardak@inbox.ru>. 2012-04-02 23:33:47 +02:00
6dca891474 Slightly changed cache handling. 2012-03-31 22:20:07 +02:00
17278fb7a6 Use the 'FindExInfoBasic' information level on supported OS (Windows 7 and later). Should further speed-up things. 2012-03-31 16:27:37 +02:00
18b0993d3b Now using FindFirstFileEx() on supported OS. Should be a bit faster, as we can request the FindExSearchLimitToDirectories search limit. 2012-03-30 15:28:47 +02:00
602e1691c4 Various tweaks to improve the QFileSystemModel performance. Also slightly improved the initialization. 2012-03-30 03:35:43 +02:00
158588b3ec Some code refactoring and clean-up. 2012-03-29 19:08:33 +02:00
78c73d6d6e Some improvement of the previous commit. 2012-03-29 03:22:24 +02:00
9b41e9c6a9 New workaround to focus the selected item in the "output folder" view: As the focus will get lost again when the QFileSystemModel asynchronously loads a directory, we need to focus again on each directory loaded. Though we must stop focusing on the selected item, as soon as the user expands a folder. Otherwise the view would scroll unexpectedly... 2012-03-29 01:32:47 +02:00
47f0f1629c Some tweaks to the initialization of the QFileSystem model. 2012-03-28 02:21:34 +02:00
28f7a0cd50 Improved output folder LineEdit. 2012-03-27 22:46:01 +02:00
1738ea5b6e Added button to edit the current output path in a simple LineEdit control. 2012-03-26 22:02:11 +02:00
b4aaaccdf2 Use _beginthreadex() instead of calling CreateThread() directly. This is more correct, when using the MSVCRT. 2012-03-26 04:40:49 +02:00
ca933d1b7e Minor code clean-up. 2012-03-24 19:10:37 +01:00
ff452c17ca Yet another workaround for the previous commit. 2012-03-24 01:29:06 +01:00
2da05e2324 Better workaround for the previous commit. 2012-03-23 01:29:50 +01:00
18094c66f0 Workaround for Windows XP: It appears that QThread::isRunning() may return TRUE even after the QThread object has already emitted the "finished" signal. For some reason this only occurs on Windows XP, but never occurs on my Windows 7 machine. As a workaround we will call QThread::yieldCurrentThread() and then try again. This seems to fix the issue on my Windows XP machine. 2012-03-22 22:26:54 +01:00
f058efa87c Updated MediaInfo binary to v0.7.54 (2012-03-13), compiled with ICL 12.1.7 and MSVC 10.0. 2012-03-21 20:54:47 +01:00
89717e440b Updated SoX binary to v14.4.0 (2012-03-04), compiled with ICL 12.1.7 and MSVC 10.0. 2012-03-16 00:54:51 +01:00
a7a77b9e92 Updated mpg123 decoder binary to v1.13.6 (2011-03-11), compiled with GCC 4.6.1. 2012-03-11 20:25:34 +01:00
d1c2e8d764 Updated mpg123 decoder binary to v1.13.5 (2011-03-07), compiled with GCC 4.6.1. 2012-03-10 13:28:18 +01:00
84450ed6b3 Updated GnuPG binaries to v1.4.12, compiled with GCC 4.6.1. 2012-03-10 03:51:22 +01:00
b0937f9001 More FLAC workarounds. Using "--channel-map=none" will fix most cases, although we will loose the channel map for Wave files that contain a valid channel map. On the other hand, FLAC fails most of the time when trying to use the channel map from the Wave file. 2012-03-09 01:11:29 +01:00
53af74148d Some workarounds for FLAC. It seems FLAC doesn't like 1.0, 3.0, 3.1, 4.0 channel files. It also doesn't like more than 6 channels. It still fails with files that have >2 channels and are NOT in the "Wave Extensible" format. 2012-03-09 00:44:55 +01:00
a2dc3bb295 Fixed detection of 32-Bit Float data via SoX. For whatever reason SoX returns a "precision" of "24-Bit" for 32-Bit Float Wave files, so we have to detect the actual precision from the "sample encoding". 2012-03-08 23:04:00 +01:00
f47b033953 Set supported input formats for FHG AAC encoder. 2012-03-08 01:35:04 +01:00
326fd32ef6 Fixed detection of bit depth. 2012-03-08 01:34:00 +01:00
1d52b628d1 Show which AAC encoder is being used in the GUI. 2012-03-06 22:29:55 +01:00
94d50c9d16 Updated docs for the FHG/QAAC AAC encoder add-in's. 2012-03-06 19:22:55 +01:00
c5b692ffd8 Use the Job Object only on Windows XP and later. This avoids a bunch of warnings on Windows 2000, because SetInformationJobObject() is going to fail there. 2012-03-02 14:31:13 +01:00
80df6532cd Updated LAME encoder binary to v3.99.5 Final (2012-02-28), compiled with ICL 12.1.7 and MSVC 10.0. 2012-03-01 23:31:13 +01:00
a450862150 Patched Qt's QProcess class to pass the CREATE_BREAKAWAY_FROM_JOB flag when creating a new process. This is required, because Windows (Vista and later) will add our child processes to the PCA (Program Compatibility Assistant) job object automatically! And then we cannot add the child processes to our own job object, as a process can be assigned to only one job object. With the CREATE_BREAKAWAY_FROM_JOB flag, we ensure that our child processes does NOT get added to the PCA job object automatically and we can add it to our own job object again. Unfortunately QProcess does NOT provide a way to pass process creation flags yet, so we have to patch Qt for now. Passing the CREATE_BREAKAWAY_FROM_JOB flag may not always be desired though... 2012-03-01 23:14:41 +01:00
2ee08c5f4b Fixed a regression in d92fb7fbcc: We must not close the handle to the Job Object, as long as there still might be a process "tool" running. The regression caused child processes to be terminated unexpectedly sometimes! We now use reference counting in order to avoid this problem. 2012-03-01 02:45:21 +01:00
2c7f740fb9 Updated Changelog. 2012-02-26 15:05:18 +01:00
326c788c8a Updated SoX binary to v14.4.0 RC-3 (2012-02-20), compiled with ICL 12.1.7 and MSVC 10.0. Now the default normalization method is "-n" again. 2012-02-24 22:12:28 +01:00