Commit Graph

912 Commits

Author SHA1 Message Date
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
86e17a04ff Bump version + update Changelog file. 2012-02-23 21:21:02 +01:00
3c1938af3c Fixed a potential live-lock situation: Signals from the QThread can get lost, before we reach the QEventLoop->exec(), even if the required connections already exists. It seems that QApplication::processEvents() will discard signals for our QEventLoop, if that QEventLoop is not running yet! Without the QApplication::processEvents(), those signals would simply be enqueued until we call QEventLoop->exec(). In reality this bug was never triggered under normal circumstances, but it seems on some systems it can take longer to perform the "fade in" than to finish the initialization thread. In that situation the bug *was* triggered and caused the live-lock... 2012-02-23 17:00:22 +01:00
d92fb7fbcc Updated Monkey's Audio binary to v4.11 (2011-04-20), including STDERR flush fix. 2012-02-21 22:36:13 +01:00
97ab6bd0be Fix regular expression for new version of Monkey's Audio. 2012-01-27 03:21:59 +01:00
dbd0c860e1 Updated Musepack decoder to output progress info. Also added code to parse the output. 2012-01-26 22:26:52 +01:00
871866606d Updated Musepack decoder binary to revision 475 (2011-08-10), compiled with ICL 12.1.6 and MSVC 10.0. 2012-01-26 21:32:53 +01:00
149910135c Updated Monkey's Audio binary to v4.10 (2011-04-16). 2012-01-26 03:07:03 +01:00
7d95f114a2 Try to keep the window of the Web Updater tool focused. 2012-01-24 02:46:29 +01:00
3630e54f4e Slightly improved "announce" message box. 2012-01-24 01:19:09 +01:00
0fc8c5bae4 Updated MediaInfo binaries with latest fix to properly handle tags with a "\n" when the "--inform" mode is used. Also improved internal handling of multiple streams. 2012-01-14 20:28:43 +01:00
50ac87149e Updated dcaenc binary. 2012-01-14 01:35:50 +01:00
603d21545b Updated file analyzer to use the "--inform" parameter of MediaInfo with a template file. Much simplifies the parsing of MediaInfo's output. Also much improved cover art retrieval. 2012-01-14 01:11:58 +01:00
02b1567723 Some UI cosmetics: Nicer positioning of encoder selection radio-buttons. 2012-01-13 16:03:07 +01:00
38ad322fbd Improved CSV parser. 2012-01-05 21:08:04 +01:00
f857054dda Added support for importing Meta tags from a CSV files. 2012-01-04 21:10:33 +01:00
8e65917d9c Added support for exporting Meta tags to a simple CSV file. 2012-01-04 03:23:07 +01:00
9b687fff9a Happy New Year 2012! 2012-01-02 00:52:27 +01:00
3f4be5c846 Fixed AC-3 encoding with sources that have more than 6 channels. 2012-01-01 21:31:48 +01:00
c772b9bc2d Updated x64 binaries with latest MPress version. Also removed Windows 8 workaround. 2011-12-30 20:21:25 +01:00
1f001a65e2 Better handling of system shutdown. Now using the Qt event system to broadcast a special event when the system is going to shutdown (i.e. WM_QUERYENDSESSION or WM_ENDSESSION). This gives each top-level widget the chance to react to the system shutdown *before* we return from the message handler. Doing any clean-up after returning from the message handler is impossible, because Windows will kill the process immediately after WM_ENDSESSION has been processed. Note that Windows XP (and earlier) will NOT send WM_QUERYENDSESSION or WM_ENDSESSION to processes that have a console attached! Therefore, if we have a debug console attached, we cannot do anything on these systems. Our process will be killed without any notification...
Also improved LameXP's IPC mechanism: There now are several slots for IPC-commands in the shared memory area ("queue support"). This way, the sender can post several commands in sequence without getting blocked. The receiver can process those at a later time.
2011-12-29 14:42:20 +01:00
1bbda2c030 Added simple log-file support. Use environment variable "LAMEXP_LOGFILE" to setup a log file. 2011-12-27 20:10:19 +01:00
db587fe228 Prevent some more dialogs from blocking a quick system shutdown. 2011-12-27 13:51:01 +01:00
d5a4aa72e3 Windows will kill our process immediately after we return from handling the WM_ENDSESSION message, so we have to clean-up explicitly *before* returning from the message handler. Not nice, but there is no other way. Also, as Windows will kill our process anyway and thus prevent a proper application shutdown, we can just call exit() from the message handler. This makes sure nothing "unexpected" can happen in the short moment that our application would continue to run after returning from the message handler. 2011-12-27 05:47:38 +01:00
9a9d2e6819 Explicitly handle WM_QUERYENDSESSION and WM_ENDSESSION messages to make sure LameXP won't block Windows from shutting down. 2011-12-27 05:04:53 +01:00
a96237e6b2 Some refactoring of the icon initialization code. 2011-12-26 21:02:55 +01:00
805d3f7393 Added one more "special" application icon. 2011-12-25 22:29:04 +01:00
30f1795d32 Added some more "special" application icons. 2011-12-25 01:00:11 +01:00
dce362c997 Make the CPU usage indicator work on Windows 2000. 2011-12-24 04:20:23 +01:00
e848b3bd8a Updated dcaenc binary. 2011-12-23 23:33:43 +01:00
d574745043 Restrict bitrate selector for dcaenc to a sane range. It seems everything above 4096 kbps will fail, even with 6 channels. 2011-12-23 02:29:06 +01:00
36d4f4fb74 Updated dcaenc. Also encoders can now report all supported channel numbers and downmix will be invoked as needed. We still downmix to Stereo, if the given channel number isn't supported. In a future version we should downmix to the most suitable supported channel number. 2011-12-23 00:43:11 +01:00
a0a29b9551 Experimental support for dcaenc, by Alexander E. Patrakov <patrakov@gmail.com>. 2011-12-22 21:53:25 +01:00
a392864916 Improved the resample filter. It will now also handle the adjustment of the bit-depth. 2011-12-22 18:36:41 +01:00
1a238db3db Update file properties after the decoding step by using SoX in "--i" mode. Required, because some properties (such as 'bits per sample') cannot be known beforehand. 2011-12-22 00:06:34 +01:00
2ad5c3068d Prepare to support audio encoders that only support specific bit-depths. 2011-12-21 01:23:21 +01:00
1d9aaf90ed Updated Chinese/Taiwanese translation. Thanks to 456Vv <123@456vv.com>. 2011-12-20 13:12:01 +01:00
2ff648b4fd Updated MediaInfo binaries to v0.7.50 (2011-12-19), compiled with ICL 12.1.6 and MSVC 10.0. 2011-12-20 00:25:41 +01:00
660ce78f79 Renamed one local var. 2011-12-19 17:38:36 +01:00
3141ebf2ee Improved detection of default language: Each language file can now have a country id in addition to the language id. This is required, because some languages (e.g. Chinese) have country-specific variants. 2011-12-19 17:26:20 +01:00
d1803f1a3b Print the "script" of the language file. 2011-12-19 16:20:52 +01:00
612f744afe Added 'Traditional Chinese' (Taiwanese) translation by 456Vv <123@456vv.com>. 2011-12-19 15:48:50 +01:00
683b7a82a5 QDesktopServices::openUrl() fails horribly, if we try to explore a folder like "C:\Foo\Bar" while there is a file "C:\Foo\Bar.exe". Going back to ShellExecute() for now. 2011-12-19 02:09:45 +01:00
97170324e3 Added "Ignore" button to message box. 2011-12-18 18:19:14 +01:00
c49ce7e530 Artwork can now be changed by double-click. 2011-12-18 15:19:28 +01:00
6657745daa Improved language file initialization code. 2011-12-18 15:19:07 +01:00
44da665abc Force column resize, after an item in the source file list has been edited. 2011-12-17 22:01:42 +01:00
2ad95434a3 Fixed one typo. 2011-12-17 20:57:12 +01:00
dc63a2d115 Added Chinese translation by 456Vv <123@456vv.com>. 2011-12-17 16:53:13 +01:00
9f3777bbde Check Qt build date and build key. 2011-12-17 15:56:24 +01:00
c71d8ee2c8 Updated Ukrainian translation + made one more string translatable. 2011-12-15 14:28:03 +01:00
388f98e90a Added UTF-16 (LE and BE) support to Playlist and Cue Sheet import. 2011-12-13 23:33:21 +01:00
621ddc8179 Added a new global function to get a list of all available Text Codecs. 2011-12-10 23:12:47 +01:00
b633f40e4c If the Cue Sheet isn't clearly UTF-8 (i.e. a BOM is found), then let the user select the desired Codepage. 2011-12-10 17:06:31 +01:00
6770f1ec90 QString::fromLocal8Bit() doesn't work as expected, as we explicitly set the CodecForLocale to UTF-8 in the initialization code. Therefore we can't use QString::fromLocal8Bit() at places where the system's default Codec is needed. Instead we will now get the actual system Codec via QTextCodec::codecForName("System") at those places. That's not nice, but solves the problem. 2011-12-10 01:59:45 +01:00
545b9b4967 Improved handling of different character encodings for M3U(8) and PLS playlist import. 2011-12-09 00:34:07 +01:00
6e819e45b3 If no BOM was found, check whether decoding the input using the "local 8-Bit" Codepage produces any "replacement" characters (U+FFFD). In that case we assume a decoding error and fall back to Latin-1. 2011-12-08 14:46:11 +01:00
8c72137fe1 Workaround for a bug that causes MediaInfo to not detect the duration of Wave files (64-Bit only). 2011-12-04 20:33:06 +01:00
3e2e6f66e6 Small fix of previous commit. 2011-12-03 16:10:33 +01:00
1585e6e467 Slightly tweaked how the progress bar is updated. 2011-12-02 22:40:12 +01:00
98fbf7bf3b Account for the fact that some web-sites send "HTTP 200 OK" successfully, but then time-out on the way to send their payload. In this case we will now give 1/2 connection point. 2011-12-02 20:05:23 +01:00
a6c55c69c2 Added some info on how the Auto Update systems works to the FAQ document. Also added a "dummy" Manual file. 2011-12-02 01:14:32 +01:00
e4d414b822 Added more "known hosts" to the list: We now use a list of 64 domains, taken (mostly) from the Alexa 'top 500 sites on the web' list, to test the Internet connectivity. Also added a self-test function to check all hosts (press CTRL+F12 in the update dialog). 2011-12-01 22:16:06 +01:00
d5c5aacb8b Apply Horner scheme to avoid costly exponentiation. 2011-11-28 15:38:45 +01:00
5585d53fc7 Print the total duration when the process is completed. 2011-11-28 00:35:43 +01:00
c1b88a7d07 Slightly tweaked formula to selected the number of instances based on CPU count. Maximum value is now 16. 2011-11-27 02:06:03 +01:00
3a74f55c5f Updated FAQ document for the new 'number of instances' algorithm. 2011-11-26 22:28:00 +01:00
431bf4b9ff Much simplify cores2instances() function by using a LUT. 2011-11-26 17:25:33 +01:00
d81f65e7e7 Yet another new formula to selected the number of instances based on CPU count. This time a few desired 'sample points' have been defined and a 'cubic spline' through these sample points has been approximated. This solution should be more mathematically correct. 2011-11-26 15:30:24 +01:00
284e796e72 New formula to selected the number of instances based on CPU count. 2011-11-26 02:47:48 +01:00
2243c77f4b Now using a QSemaphore to make the observer threads sleep. This allows waking up the threads immediately *without* having to poll the 'terminated' flag at short intervals. 2011-11-25 01:01:30 +01:00
fb53e209b5 Disable word-wrap in processing window's table view. 2011-11-23 00:38:20 +01:00
8db30bdd68 Fixed a crash in QAAC detection code. 2011-11-23 00:03:42 +01:00
11acbb60a0 Bump minimum required QAAC version to 1.05. 2011-11-22 23:51:50 +01:00
6a90dad03f Adjusted QAAC detection for shared 'libsoxrate' library. 2011-11-22 23:48:54 +01:00
6235115429 Setup TMP and TEMP environment variables for *all* tools. Also add "$EXEDIR\QTfiles" to the PATH for QAAC. 2011-11-22 12:43:32 +01:00
3e7ae9642c Changed detection of QAAC for the new fully-static build. 2011-11-21 22:28:14 +01:00
20f425c284 More reliable method to detect QAAC and make sure the required CoreAudioToolbox library is available. 2011-11-21 14:40:32 +01:00
da5dfdc85e Added optional support for the QAAC encoder. Requires QuickTime v7.7.1 (or later) and the QAAC front-end. 2011-11-21 01:22:41 +01:00
346985876f Updated MediaInfo binaries to latest "trunk" version. 2011-11-21 00:56:10 +01:00
5cac3faa8b Make sure that the extracted "cover art" image file is valid. 2011-11-19 14:06:39 +01:00
16aaebec22 Updated LAME encoder binaries to v3.99.2 Final (2011-11-18), compiled with ICL 12.1.7 and MSVC 10.0. 2011-11-19 02:58:14 +01:00
37cd023080 Allow faster termination if the 'observer' threads. 2011-11-19 02:57:30 +01:00
55a91042ec Reduce polling interval of "observer" threads to limit the number update signals. 2011-11-18 20:47:34 +01:00
3f3451e5c1 Implemented coalescing of progress updates, in order to reduce the number of signals that are sent to the main/GUI thread. Depending on the encoder/decoder used, this reduces the CPU time consumed by the LameXP process quite a bit. 2011-11-16 22:56:32 +01:00
a2cae5c288 Slightly tweak algorithm to automatically set the number of instances: Instead of restricting the number of instances to 4, we now use '(cpu_cores / 2) + 2' instances for more than 4 CPU cores. For at most 4 CPU cores, we still use 'cpu_cores' instances. This way we can use more than 4 instances on CPU's with more than 4 cores, but the number of instances won't grow linearly with the number of CPU cores - should help a bit to avoid HDD thrashing. 2011-11-16 22:53:18 +01:00
61e5ab9f6a Version v4.03 R2 is released! 2011-11-12 16:17:07 +01:00
9b3aada3c3 Updated MediaInfo binaries to v0.7.50 (2011-09-23), compiled with ICL 12.1.6 and MSVC 10.0. 2011-11-12 16:04:07 +01:00
f566aa466a Updated LAME encoder to v3.99.1 Final (2011-11-05), compiled with ICL 12.1.6 and MSVC 10.0. 2011-11-11 20:39:31 +01:00
cf87eab613 Merge branch 'master' of github.com:lordmulder/LameXP 2011-11-11 18:08:58 +01:00
be410216a9 Reworked SplashScreen fade-in and fade-out code a bit. 2011-11-11 18:08:22 +01:00
84053a76f4 Use qMin() and qMax() instead of min() and max() macros. Also use qBound() where appropriate. 2011-11-08 15:12:31 +01:00
ce160fd64b Fixed compilation with Visual Studio 2008. 2011-11-08 14:50:54 +01:00
aa9a513a2b Fixed compilation *without* latest platform SDK. 2011-11-07 17:29:07 +01:00
5a32fc3b82 Implemented a more correct way to initialize the ITaskbarList3 interface. We now actually wait for the "TaskbarButtonCreated" message. 2011-11-07 17:13:41 +01:00
b9a2ebf660 Make sure the "outer" installer isn't renamed to 'LameXP.exe' or 'LameXP-Portable.exe', because it confused the LockedList plug-in. 2011-11-06 14:19:47 +01:00
10daa60c53 Version v4.03 is released! 2011-10-31 11:58:15 +01:00
623d149917 Fixed context menu position mapping in "processing" dialog. 2011-10-30 22:23:33 +01:00
a7126f42d2 Display "N/A" if CPU usage cannot be determined (as on Win2k). 2011-10-30 21:41:00 +01:00
a6ddde787e Win2k fix: GetSystemTimes() is not available before WinXP with SP-1. 2011-10-29 22:26:39 +02:00
b1098f4177 Bump patch version + minor improvements to previous commit. 2011-10-29 21:11:51 +02:00
02b7cdc3e1 Added indicators for current CPU usage, RAM usage and free disk space to the processing window. 2011-10-29 16:26:09 +02:00
0126635669 Fixed a bug with the "Prepend relative source file path to output file" option: This option should not be in effect when "Save output files to the same location where the input file is located" is enabled. Therefore, in the GUI, the "Prepend relative source file path to output file" option was correctly disabled (greyed out) when "Save output files to the same location where the input file is located" was checked. Nonetheless "Prepend relative source file path to output file" could still be in effect, if the user had checked that option *before* it had been disabled (greyed out). This is fixed now. 2011-10-24 00:31:46 +02:00
01bc64859d Added a hint that the version number in the name of the ZIP file, which Nero offers for download, doesn't tell the whole truth. 2011-10-23 18:05:27 +02:00
181b8686ea Added some info on Hibernation to the F.A.Q document. 2011-10-22 17:49:46 +02:00
6c67cb0012 Check if hibernation is support on the computer. If not, disable the hibernate option. 2011-10-22 01:34:24 +02:00
a98206bd70 Added an option to hibernate the computer ("suspend to disk") instead of shutting it down ("power off"). 2011-10-22 01:13:28 +02:00
0e6058df9e Moved Windows 8 64-Bit hack to a better place. MPress will not be fixed soon for Windows 8, so we will have to keep that hack for a while... 2011-10-21 16:17:22 +02:00
4a9ee707b1 Updated Polish translation. Thanks to Sir Daniel K <sir.daniel.k@gmail.com>. 2011-10-20 22:36:34 +02:00
6a04c29ad9 Some refactoring: Moved tools info into a separate header file + added simple self-test to Thread_Initialization. 2011-10-19 00:24:03 +02:00
a14b030a5c Re-organized CPU type selection. This should also fix a potential bug, which might have caused an Intel-only binary to be used on 64-Bit AMD systems. 2011-10-18 18:54:56 +02:00
e5e9f63258 Updated LAME encoder to v3.99 Final (2011-10-17), compiled with ICL 12.1.6 and MSVC 10.0. Note: The "i386" binary uses CPU Runtime Detection with on optional(!) SSE2-optimized code path, while the "sse2" binary uses Intel-specific SSE2 optimizations and does NOT use CPU Runtime Detection. 2011-10-18 18:52:52 +02:00
d14ecfffa6 Fixed web-update tool. After the recent update of the Inetc plug-in, the updater was not working anymore. D'oh! 2011-10-16 19:15:40 +02:00
1a9aa81d3a More extensive use of the NOBR macro + code clan-up. 2011-10-16 16:38:01 +02:00
0b33754dba Updated "disque" URL. 2011-10-15 15:53:07 +02:00
b57d08b874 Updated Changelog. 2011-10-15 01:32:58 +02:00
e3d1a6cc7a Better way to obtain the ISO date, without using a Temp file. 2011-10-14 23:39:31 +02:00
de5b2458c1 Updated Qt Framework to v4.8.0 RC-1, built with Visual Studio 2010. Also improved OS detection a bit. 2011-10-14 18:02:37 +02:00
e9bfc225f0 Some more updates to Russian translation by Иван Митин <bardak@inbox.ru>. 2011-10-11 22:41:08 +02:00
57a1b8146e Changed icon for loading a different Cue Sheet file. 2011-10-11 16:44:28 +02:00
b86b7c45a5 More updates to Russian translation by Иван Митин <bardak@inbox.ru>. 2011-10-11 13:57:40 +02:00
84cc763278 Updated mpg123 decoder binary to v1.13.4 (2011-09-07), compiled with GCC 4.6.1. 2011-10-11 02:04:12 +02:00
24efb53f3a Some updates to Russian translation by Иван Митин <bardak@inbox.ru>. 2011-10-10 22:26:50 +02:00
22c25d334e Updated Web Updater and Elevator binaries. Now with newer StdUtils plug-in. 2011-10-09 22:52:54 +02:00
901bf4c7c6 Updated Ukrainian translation. Thanks to Arestarh <arestarh@ukr.net>. 2011-10-09 21:15:21 +02:00
c13939aa12 Got rid of the need to explicitly unload the StdUtils plug-in. 2011-10-09 17:37:10 +02:00
7c5ef4ca58 More installer clean-up. 2011-10-08 22:58:11 +02:00
11781e8a8d Clean-up installer script. 2011-10-08 19:34:24 +02:00
ad94a4726b Updated installer to get rid of "parameters.nsh", now using StdUtils plug-in to get the parameters. 2011-10-08 18:20:20 +02:00
9d652fb2e0 Added support for /Force to uninstaller. Required some tweaks for the 'parameters.nsh' include file. 2011-10-07 16:06:48 +02:00
af7bb2026a Made the channel equalization mode of the "normalization" filter an advanced option. The "-ne" mode still is default, be you can use "-nb" or even "-n" now. The last one still has problems with multi-channel files. 2011-10-06 23:55:42 +02:00
c80f45f704 Use ShellExecute() to run the Uninstaller, because the Uninstaller now needs to be elevated (and thus QProcess can fail). 2011-10-06 14:35:13 +02:00
f753f3ad41 Updated translator's guide + FAQ document. 2011-10-04 23:17:34 +02:00
66c70657ef Updated installer wrapper to use StdUtils and wait for the actual installer to terminate. 2011-10-03 12:52:12 +02:00
0e31ec7cad Added Polish translation. Thanks to Sir Daniel K <sir.daniel.k@gmail.com>. 2011-10-03 01:33:12 +02:00
9d09a8d5b0 Installer updates. 2011-10-02 22:14:09 +02:00
866fb13e2e Updated MediaInfo and wma2wav binaries. Now compiled with new stdout/stderr Unicode fix. 2011-10-01 03:40:49 +02:00
f8512798a2 Added hack to disable 'x64' support on Windows 8 Developer Preview, as our MPress-compressed x64 binaries currently crash on that platform. It's not yet clear whether Windows 8 or MPress is at fault... 2011-09-30 20:17:42 +02:00
48efab12eb Updated Web-Updater and Elevator binary. NSIS updated again. 2011-09-29 20:59:54 +02:00
2d4770e277 Merge branch 'master' of github.com:lordmulder/LameXP
Conflicts:
	src/Config.h
2011-09-29 20:07:26 +02:00
282528ea67 Set text codec to UTF-8, so qDebug/qWarning/qFatal don't destroy Unicode strings. Also remove qDebug64() and friends, as we don't need them any more. 2011-09-29 20:06:09 +02:00
b87e13a5eb * Updated Ukrainian translation. Thanks to Arestarh <arestarh@ukr.net>. 2011-09-29 19:04:34 +02:00
4c867dc325 Added a button for loading a different Cue Sheet to the Cue Sheet importer dialog. 2011-09-29 17:36:38 +02:00
9f011cb572 Also repair 'cout' and 'cerr' to not mangle UTF-8 strings. 2011-09-27 21:32:45 +02:00
8e63e2e4ec Updated MediaInfo binaries to v0.7.50 (2011-09-23), compiled with MSVC 10.0. 2011-09-24 15:59:29 +02:00
d017608edd Updated Web-Updater binary. After last update the Web-Updater failed to verify the signatures on Windows 2000, because of a broken NSIS plug-in. 2011-09-24 01:49:20 +02:00
9276645f1b More fixes for the Cue Sheet parser: Strings don't have to be enclosed in quotes, if they don't contain any whitespace chars, so we should support that case. Also generate a title from the track number, if the Cue Sheet doesn't define a title for the track. 2011-09-24 00:15:50 +02:00
466d339d9d Added support for the non-standard tags "REM DATE" and "REM GENRE" to the CUE Sheet parser. 2011-09-23 21:30:55 +02:00
bb986dd203 Re-added missing "<br>"'s that got lost in the recent refactoring. 2011-09-20 00:29:01 +02:00
1fc851af2b Added CLI parameters to overwrite the CPU feature flags. Useful for testing. 2011-09-20 00:03:51 +02:00
a77ee5c397 Don't check for updates when application is run for the very first time (after install or update). 2011-09-19 18:52:02 +02:00
41b9763ef8 Slightly tweak installer + updated Web Updater binary. 2011-09-19 17:27:12 +02:00
20d2e33a7d Improved announce box. 2011-09-18 02:01:45 +02:00
daa780d90f Updated MediaInfo binaries to v0.7.49 (2011-09-09), compiled with MSVC 10.0 + some message box text refactoring. 2011-09-17 23:08:59 +02:00
c08fa1493a Added support for a few Playlist file name prefixes. Will be chosen based on the file names in the Playlist. 2011-09-06 18:47:13 +02:00
85cc4daac3 Make the FileAnalyzer remember the recently analyzed files. This way the audio files won't be MediaInfo'ed twice, when adding a folder that contains audio files *and* a playlist references these audio files. 2011-09-06 00:51:00 +02:00
64696fa133 Workaround for a bug(?) in bug in SoX' gain/normalization filter that sometimes caused the "normalized" file to be empty. 2011-09-05 22:42:23 +02:00
9e9b3ed25e When a folder that does NOT contain any files is dropped, descent into its sub-folders (if any). 2011-09-05 15:36:58 +02:00
b687666ac9 Temporarily hide the "disque" widget in About dialog while showing one of the sub-dialogs. 2011-08-29 15:57:17 +02:00
bcbd8defce Revert: Avoid applying the Downmix filter on Mono/Stereo sources. Otherwise we need to decode (i.e. copy) Wave files, even when the Downmix filter does nothing. 2011-08-27 21:28:20 +02:00
037287ddb9 Fixed compilation with Visual Studio 2010. 2011-08-27 20:07:21 +02:00
24a8dcafa5 Updated changelog + more installer updates. 2011-08-27 16:24:03 +02:00
8faa0949bd Update installer script: Service pack detection for more platforms. 2011-08-27 14:33:35 +02:00
2df038a3e2 Updated Ukrainian translation. Thanks to Arestarh <arestarh@ukr.net>. 2011-08-26 18:45:17 +02:00
992133d1e2 Improved initialization of config directory. 2011-08-26 16:32:25 +02:00
ec8db207f5 Workaround for "console window not drawing" bug on Wine. 2011-08-26 03:28:34 +02:00
2da39922ca Added warnings when LAME algorithm quality is set to "extreme" values. 2011-08-25 03:44:46 +02:00
b84f66f741 Remember most recent path for "add file(s)" and "add directory" dialogs. 2011-08-23 18:48:16 +02:00
10ae6c8451 Better workaround for "ResizeToContents not updating" bug. 2011-08-23 17:01:11 +02:00
8300d58c46 Updated LAME binaries, compiled with ICL 12.0 and Win2k-fix. Also reorganized QRC files a bit. 2011-08-23 14:09:28 +02:00
137535927a Workaround for a bug in Qt's TableView that causes column widths to not be updated immediately when ResizeToContents is used. We have to force the update via event filter. 2011-08-22 00:03:36 +02:00
95797b11b5 Updated Ukrainian translation. Thanks to Arestarh <arestarh@ukr.net>. 2011-08-21 18:41:32 +02:00
95f627ee1a Some more clean-up for FhgAacEnc support + updated documents. 2011-08-21 14:43:18 +02:00
e811a64534 Slightly improved FhgAacEnc integration. 2011-08-19 19:25:01 +02:00
84883ab519 Added experimental(!) support for FhgAacEnc. Replaces the Nero AAC encoder, if available. 2011-08-19 15:27:58 +02:00
85b2a5326f Updated MediaInfo binary to v0.7.48 (2011-08-17), compiled with MSVC 10.0 2011-08-17 22:54:15 +02:00
dfc752b764 Added "wma2wav" and "avs2wav" to About dialog. 2011-08-16 23:09:50 +02:00
02f50c8e68 Re-compiled more tools with Windows 2000 hack + reorganized CPU flags. 2011-08-16 22:31:04 +02:00
fc538b24d5 Updated MediaInfo and wma2wav binaries with Win2k-compatible versions + installer tweaks. 2011-08-15 21:32:47 +02:00
b2d1eceb41 Restored Windows 2000 support: Added hacks that avoid dependency on EncodePointer() and DecodePointer(), as these functions are missing from KERNEL32.DLL in Windows 2000. 2011-08-15 15:34:44 +02:00
7e14e0f1a7 Restored Windows 2000 support (experimental!). 2011-08-15 15:27:56 +02:00
74b06e7541 Updated German translation. 2011-08-08 20:45:59 +02:00
5ab869ed82 Added "Favorites" menu for output folders. 2011-08-08 20:26:30 +02:00
3c87a01c59 Added two more channel configurations. 2011-08-08 03:53:42 +02:00
35e80de71d Tweaked downmix channel weights. 2011-08-07 23:54:47 +02:00
dae4def2fa Downmix filter will now check if the input already is Mono/Stereo, so we can safely invoke the filter for ALL sources. 2011-08-07 14:04:17 +02:00
ea4b30a12a In Downmix filter: Choose the "remix" parameters based on the number of input channels. 2011-08-07 04:06:03 +02:00
3f90295c70 Use "remix" filter instead of "-c" option for downmixing. Hopefully gives better results. Default WAVE channel ordering is assumed. 2011-08-06 21:52:56 +02:00
1fdfab1160 Refactored code to insert the Downmix filter in processing thread. 2011-08-06 18:56:09 +02:00
ce872af94c Apply "Force Stereo Downmix" only for sources with more than two channels. 2011-08-06 14:12:20 +02:00
fbee147f07 Added an option option to enforce Stereo Downmix. 2011-08-05 21:52:43 +02:00
229357f77c Preview example file name for current rename pattern. 2011-08-05 15:41:19 +02:00
613c9721a7 Prevent rename pattern edit box from being translated, so the text won't be lost anymore. 2011-08-05 02:33:32 +02:00
7e1f790e9b Added an option to rename the output files (based on an user-defined pattern). More macros might be added at a later time. 2011-08-04 23:26:38 +02:00
93d4fb14ee Make lamexp_clean_filename() a global function. 2011-08-04 20:35:40 +02:00
272cef76f4 Removed some more remnants of "old" WMA decoder + updated changelog. 2011-08-04 00:55:17 +02:00
90d304fac2 Updated wma2wav binary to 2011-07-31. 2011-07-31 21:31:30 +02:00
ff622e29c0 Fixed a bug that could files to be added twice. Files weren't actually added two times, because we have a check for duplicate files later, but the error message for unsupported/rejected files did pop up twice! 2011-07-28 13:37:00 +02:00
816e874c4c Initialize stdout and stderr in a way that won't mangle UTF-8 string. Now we can use standard fprintf() to output UTF-8 string to the console -> console output workarounds removed. 2011-07-28 13:35:24 +02:00
7127271652 Updated MediaInfo binaries to v0.7.47 (2011-07-27), compiled with MSVC 10.0. 2011-07-27 22:17:43 +02:00
74e6bb7672 Converted Ukrainian installer translation from Cyrillic Codepage (Windows-1251) to proper UTF-8. 2011-07-26 23:01:31 +02:00
270f2fd1ec Further increased timeout delay to 10 Minutes. It seems FAAD sometimes stops sending status updates :-/ 2011-07-26 22:23:32 +02:00
327ca1ae75 Added 'wma2wav' as WMA decoder and removed all support for WMA decoder by NCH Swift Sound. 2011-07-26 22:17:14 +02:00
c5606cf45a Use QtConcurrent::run() in ShellIntegration class instead of manually managing the thread. ShellIntegration is now completely static and must not be instantiated. 2011-07-15 13:44:32 +02:00
54c6cae91b Updated MediaInfo binaries to v0.7.46 (2011-07-04), compiled with MSVC 10.0. 2011-07-14 02:03:04 +02:00