OSDN Git Service
lordmulder [Sat, 23 Jun 2012 16:18:57 +0000 (18:18 +0200)]
Extinguished some remaining uses of argv[] or QApplication::arguments().
lordmulder [Fri, 22 Jun 2012 13:49:56 +0000 (15:49 +0200)]
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.
lordmulder [Thu, 21 Jun 2012 16:31:36 +0000 (18:31 +0200)]
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!
lordmulder [Tue, 29 May 2012 18:52:45 +0000 (20:52 +0200)]
CueSheet Importer: Fixed generation of the initial (suggested) output folder name when the CUE file name ends with one or multiple dots (now really).
lordmulder [Tue, 29 May 2012 17:53:53 +0000 (19:53 +0200)]
Added one more mirror.
lordmulder [Tue, 29 May 2012 16:32:28 +0000 (18:32 +0200)]
CueSheet Importer: Fixed generation of the initial (suggested) output folder name when the CUE file name ends with one or multiple dots.
lordmulder [Fri, 25 May 2012 00:24:44 +0000 (02:24 +0200)]
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.
lordmulder [Thu, 24 May 2012 10:59:58 +0000 (12:59 +0200)]
Updated VS2008 project file.
lordmulder [Sun, 20 May 2012 21:44:50 +0000 (23:44 +0200)]
Fixed HTML code, need to escape the ampersand.
lordmulder [Tue, 15 May 2012 19:34:20 +0000 (21:34 +0200)]
Some small updates to the file analyzer benchmark code.
lordmulder [Sun, 13 May 2012 22:50:16 +0000 (00:50 +0200)]
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.
lordmulder [Sat, 12 May 2012 20:37:29 +0000 (22:37 +0200)]
Updated mpg123 decoder binary to v1.14.2 (2012-05-12), compiled with GCC 4.6.1.
lordmulder [Sat, 12 May 2012 11:09:16 +0000 (13:09 +0200)]
Bump version.
lordmulder [Sat, 12 May 2012 00:51:24 +0000 (02:51 +0200)]
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.
lordmulder [Sat, 12 May 2012 00:41:20 +0000 (02:41 +0200)]
Updated MediaInfo binary to v0.7.57 (2012-05-02), compiled with ICL 12.1.7 and MSVC 10.0.
lordmulder [Wed, 9 May 2012 00:54:41 +0000 (02:54 +0200)]
Some code refactoring regarding the QWaitCondition/QMutex in FileAnalyzer_Task.
lordmulder [Mon, 7 May 2012 23:12:26 +0000 (01:12 +0200)]
Slightly improved progress indicator for file analyzer: Additional files from playlists are now taken into account earlier.
lordmulder [Mon, 7 May 2012 01:03:14 +0000 (03:03 +0200)]
Some speed-optimizations for the Progress model.
lordmulder [Sun, 6 May 2012 21:58:18 +0000 (23:58 +0200)]
Added progress indicator to CueSheet import thread.
lordmulder [Sun, 6 May 2012 02:57:00 +0000 (04:57 +0200)]
Implemented progress indicator for the working banner.
lordmulder [Sat, 5 May 2012 19:56:14 +0000 (21:56 +0200)]
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.
lordmulder [Sat, 5 May 2012 01:55:27 +0000 (03:55 +0200)]
Now using a QWaitCondition to synchronize the FileAnalyzer threads.
lordmulder [Fri, 4 May 2012 19:43:44 +0000 (21:43 +0200)]
lordmulder [Fri, 4 May 2012 14:40:02 +0000 (16:40 +0200)]
Some minor tweaks to the multi-threaded FileAnalyzer class.
lordmulder [Fri, 4 May 2012 14:39:02 +0000 (16:39 +0200)]
Rewrote FileListModel class to use a QHash map internally. This should speed-up the lookup, especially when adding a huge number of files.
lordmulder [Fri, 4 May 2012 14:38:05 +0000 (16:38 +0200)]
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!)
lordmulder [Fri, 4 May 2012 02:01:10 +0000 (04:01 +0200)]
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.
lordmulder [Thu, 3 May 2012 21:11:16 +0000 (23:11 +0200)]
Made tool registry thread-safe, using a QReadWriteLock.
lordmulder [Sun, 29 Apr 2012 19:17:51 +0000 (21:17 +0200)]
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.
lordmulder [Sun, 29 Apr 2012 16:00:06 +0000 (18:00 +0200)]
Development open for version 4.05 now.
lordmulder [Sun, 29 Apr 2012 15:41:16 +0000 (17:41 +0200)]
Added Swedish translation. Thanks to Åke Engelbrektson <eson57@gmail.com>.
lordmulder [Sun, 29 Apr 2012 15:35:14 +0000 (17:35 +0200)]
Added Swedish translation. Thanks to Åke Engelbrektson <eson57@gmail.com>.
lordmulder [Thu, 26 Apr 2012 11:43:40 +0000 (13:43 +0200)]
Version v4.04 is released!
lordmulder [Mon, 23 Apr 2012 20:50:20 +0000 (22:50 +0200)]
Updated FAQ document.
lordmulder [Sat, 21 Apr 2012 11:36:56 +0000 (13:36 +0200)]
Fixed a type in German translation.
lordmulder [Fri, 20 Apr 2012 20:39:19 +0000 (22:39 +0200)]
Better method to prevent MediaInfo from detecting playlist files.
lordmulder [Fri, 20 Apr 2012 19:11:06 +0000 (21:11 +0200)]
Changed temporary installer file name.
lordmulder [Thu, 19 Apr 2012 18:25:12 +0000 (20:25 +0200)]
Bump version.
lordmulder [Thu, 19 Apr 2012 12:40:05 +0000 (14:40 +0200)]
Workaround for a recent change in MediaInfo's behavior for M3U playlist files.
lordmulder [Wed, 18 Apr 2012 22:56:04 +0000 (00:56 +0200)]
Make it possible to remove items with the DEL key.
lordmulder [Wed, 18 Apr 2012 21:15:39 +0000 (23:15 +0200)]
Bump version.
lordmulder [Wed, 18 Apr 2012 21:04:51 +0000 (23:04 +0200)]
Fixed language codes.
lordmulder [Wed, 18 Apr 2012 20:53:07 +0000 (22:53 +0200)]
Updated Chinese/Taiwanese translation. Thanks to 456Vv <123@456vv.com>.
lordmulder [Wed, 18 Apr 2012 20:52:05 +0000 (22:52 +0200)]
Updated Russian translation. Thanks to Иван Митин <bardak@inbox.ru>.
lordmulder [Tue, 17 Apr 2012 14:42:30 +0000 (16:42 +0200)]
Updated VS2008 project files.
lordmulder [Mon, 16 Apr 2012 16:52:45 +0000 (18:52 +0200)]
Added one missing NOBR().
lordmulder [Sun, 15 Apr 2012 23:21:54 +0000 (01:21 +0200)]
Updated German translation.
lordmulder [Sun, 15 Apr 2012 13:35:26 +0000 (15:35 +0200)]
Updated Polish translation. Thanks to Sir Daniel K <sir.daniel.k@gmail.com>.
lordmulder [Sun, 15 Apr 2012 13:34:47 +0000 (15:34 +0200)]
Updated Korean translation. Thanks to JaeHyung Lee <kolanp@gmail.com>.
lordmulder [Sun, 15 Apr 2012 00:15:32 +0000 (02:15 +0200)]
Updated dcaenc binary to version 2012-01-14.
lordmulder [Sat, 14 Apr 2012 18:10:15 +0000 (20:10 +0200)]
Updated Spanish translation. Thanks to Rub3n CT <rub3nct@gmail.com>.
lordmulder [Sat, 14 Apr 2012 15:35:00 +0000 (17:35 +0200)]
Small update to translator's guide.
lordmulder [Fri, 13 Apr 2012 14:37:47 +0000 (16:37 +0200)]
Detect Windows 8 and detect if Windows 8 is running in "compatibility mode" for Windows 7.
Andriy Bilous'ko [Fri, 13 Apr 2012 06:03:30 +0000 (09:03 +0300)]
Updated Ukrainian translation.
lordmulder [Thu, 12 Apr 2012 12:08:56 +0000 (14:08 +0200)]
Bump version.
lordmulder [Thu, 12 Apr 2012 01:18:48 +0000 (03:18 +0200)]
Updated Qt runtime libraries to v4.8.1 (2012-03-14), compiled with MSVC 10.0.
lordmulder [Wed, 11 Apr 2012 01:08:31 +0000 (03:08 +0200)]
Added yet another configuration to build LameXP with *static* Qt5 libraries. Still experimental!
lordmulder [Tue, 10 Apr 2012 22:44:40 +0000 (00:44 +0200)]
Added a new configuration for initial Qt 5.0 support. Needed a few code-changes and workarounds. Highly experimental!
lordmulder [Tue, 10 Apr 2012 01:52:03 +0000 (03:52 +0200)]
Updated MediaInfo binary to v0.7.56 (2012-04-08), compiled with ICL 12.1.7 and MSVC 10.0.
lordmulder [Tue, 10 Apr 2012 01:51:04 +0000 (03:51 +0200)]
Small optimization of lamexp_themes_enabled().
lordmulder [Mon, 9 Apr 2012 23:25:34 +0000 (01:25 +0200)]
Updated MediaInfo binary to v0.7.55 (2012-04-05), compiled with ICL 12.1.7 and MSVC 10.0.
lordmulder [Fri, 6 Apr 2012 21:15:58 +0000 (23:15 +0200)]
Fixed a few memory leaks found by VLD.
lordmulder [Fri, 6 Apr 2012 20:24:05 +0000 (22:24 +0200)]
Added support for the Visual Leak Detector. This effects "Debug" builds only.
lordmulder [Fri, 6 Apr 2012 14:36:13 +0000 (16:36 +0200)]
Fix of previous commit.
lordmulder [Fri, 6 Apr 2012 14:22:08 +0000 (16:22 +0200)]
Slightly changed temporary installer name.
lordmulder [Fri, 6 Apr 2012 14:15:19 +0000 (16:15 +0200)]
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.
lordmulder [Fri, 6 Apr 2012 00:00:44 +0000 (02:00 +0200)]
Bump version.
lordmulder [Thu, 5 Apr 2012 14:24:33 +0000 (16:24 +0200)]
Don't check for elevation on Wine. It seems Wine always runs the process elevated (tested under Wine 1.4 on Ubuntu 12.04).
lordmulder [Thu, 5 Apr 2012 13:24:45 +0000 (15:24 +0200)]
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.
lordmulder [Thu, 5 Apr 2012 11:40:52 +0000 (13:40 +0200)]
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).
lordmulder [Mon, 2 Apr 2012 21:33:47 +0000 (23:33 +0200)]
Updated Russian translation. Thanks to Иван Митин <bardak@inbox.ru>.
lordmulder [Sat, 31 Mar 2012 20:20:07 +0000 (22:20 +0200)]
Slightly changed cache handling.
lordmulder [Sat, 31 Mar 2012 14:27:37 +0000 (16:27 +0200)]
Use the 'FindExInfoBasic' information level on supported OS (Windows 7 and later). Should further speed-up things.
lordmulder [Fri, 30 Mar 2012 13:28:47 +0000 (15:28 +0200)]
Now using FindFirstFileEx() on supported OS. Should be a bit faster, as we can request the FindExSearchLimitToDirectories search limit.
lordmulder [Fri, 30 Mar 2012 01:35:43 +0000 (03:35 +0200)]
Various tweaks to improve the QFileSystemModel performance. Also slightly improved the initialization.
lordmulder [Thu, 29 Mar 2012 17:08:33 +0000 (19:08 +0200)]
Some code refactoring and clean-up.
lordmulder [Thu, 29 Mar 2012 01:22:24 +0000 (03:22 +0200)]
Some improvement of the previous commit.
lordmulder [Wed, 28 Mar 2012 23:32:47 +0000 (01:32 +0200)]
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...
lordmulder [Wed, 28 Mar 2012 00:21:34 +0000 (02:21 +0200)]
Some tweaks to the initialization of the QFileSystem model.
lordmulder [Tue, 27 Mar 2012 20:46:01 +0000 (22:46 +0200)]
Improved output folder LineEdit.
lordmulder [Mon, 26 Mar 2012 20:02:11 +0000 (22:02 +0200)]
Added button to edit the current output path in a simple LineEdit control.
lordmulder [Mon, 26 Mar 2012 02:40:49 +0000 (04:40 +0200)]
Use _beginthreadex() instead of calling CreateThread() directly. This is more correct, when using the MSVCRT.
lordmulder [Sat, 24 Mar 2012 18:10:37 +0000 (19:10 +0100)]
Minor code clean-up.
lordmulder [Sat, 24 Mar 2012 00:30:23 +0000 (01:30 +0100)]
Merge branch 'master' of github.com:lordmulder/LameXP
lordmulder [Sat, 24 Mar 2012 00:29:06 +0000 (01:29 +0100)]
Yet another workaround for the previous commit.
Andriy Bilous'ko [Fri, 23 Mar 2012 09:03:57 +0000 (11:03 +0200)]
Updated Ukrainian translation.
lordmulder [Fri, 23 Mar 2012 00:29:50 +0000 (01:29 +0100)]
Better workaround for the previous commit.
lordmulder [Thu, 22 Mar 2012 21:26:54 +0000 (22:26 +0100)]
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.
lordmulder [Thu, 22 Mar 2012 01:38:02 +0000 (02:38 +0100)]
Updated F.A.Q. document.
lordmulder [Wed, 21 Mar 2012 19:54:47 +0000 (20:54 +0100)]
Updated MediaInfo binary to v0.7.54 (2012-03-13), compiled with ICL 12.1.7 and MSVC 10.0.
lordmulder [Thu, 15 Mar 2012 23:56:29 +0000 (00:56 +0100)]
Merge branch 'master' of github.com:lordmulder/LameXP
lordmulder [Thu, 15 Mar 2012 23:54:51 +0000 (00:54 +0100)]
Updated SoX binary to v14.4.0 (2012-03-04), compiled with ICL 12.1.7 and MSVC 10.0.
Andriy Bilous'ko [Thu, 15 Mar 2012 09:19:57 +0000 (11:19 +0200)]
Updated Ukrainian translation.
lordmulder [Sun, 11 Mar 2012 19:25:34 +0000 (20:25 +0100)]
Updated mpg123 decoder binary to v1.13.6 (2011-03-11), compiled with GCC 4.6.1.
lordmulder [Sat, 10 Mar 2012 12:28:18 +0000 (13:28 +0100)]
Updated mpg123 decoder binary to v1.13.5 (2011-03-07), compiled with GCC 4.6.1.
lordmulder [Sat, 10 Mar 2012 02:51:22 +0000 (03:51 +0100)]
Updated GnuPG binaries to v1.4.12, compiled with GCC 4.6.1.
lordmulder [Fri, 9 Mar 2012 00:11:29 +0000 (01:11 +0100)]
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.
lordmulder [Thu, 8 Mar 2012 23:44:55 +0000 (00:44 +0100)]
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.
lordmulder [Thu, 8 Mar 2012 22:04:00 +0000 (23:04 +0100)]
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".
lordmulder [Thu, 8 Mar 2012 00:35:04 +0000 (01:35 +0100)]
Set supported input formats for FHG AAC encoder.