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
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
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
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
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
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
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
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
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
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