c095bbee95
Some refactoring of the macros. Use the "do {...} while(0)" template where it makes sense.
2012-07-29 19:13:58 +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
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
7016383fbb
Added support for the Visual Leak Detector. This effects "Debug" builds only.
2012-04-06 22:24:05 +02:00
9b687fff9a
Happy New Year 2012!
2012-01-02 00:52:27 +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
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
805d3f7393
Added one more "special" application icon.
2011-12-25 22:29:04 +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
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
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
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
1fc851af2b
Added CLI parameters to overwrite the CPU feature flags. Useful for testing.
2011-09-20 00:03:51 +02:00
2da39922ca
Added warnings when LAME algorithm quality is set to "extreme" values.
2011-08-25 03:44:46 +02:00
7e14e0f1a7
Restored Windows 2000 support (experimental!).
2011-08-15 15:27:56 +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
3ad816f660
Show a warning to the use in case of "slow" startup (i.e. when buggy a/v is slowing down the startup procedure)
2011-06-24 18:17:04 +02:00
8eba258624
Use structured exception handling.
2011-06-22 01:10:53 +02:00
4bb7185a0f
Added global exception handler routine.
2011-04-17 15:53:28 +02:00
60ac414c30
Updated LAME binary to v3.99 Beta-0 (2011-04-16), compiled with ICL 12.0.3. Also updated LAME switches accordingly.
2011-04-16 21:21:08 +02:00
26fe0b0499
Slightly refactored macros.
2011-04-14 01:40:11 +02:00
431ed392e2
Rewrote initialization code: Instead of extracting all binaries at startup and later selecting the suitable binary for the detected CPU, we will now extract only the binaries that are suitable for the detected CPU. This way we need to extract fewer files at startup. Also CPU selection can be skipped later, as there will be only one registered binary for each tool (the one suitable for the CPU).
2011-04-11 02:53:29 +02:00
f60515ca50
Use custom Wave files instead of Beep(), as the Beep() function doesn't work reliably on all platforms.
2011-03-18 12:37:18 +01:00
108c167767
Added an option to shutdown the computer as soon as all files are completed.
2011-03-18 01:12:17 +01:00
f2ab4c0467
Changed behavior of lamexp_temp_folder() function: Try to create the temporary folder in %TMP% first and fall back to "%LOCALAPPDATA%\Temp" only if %TMP% doesn't exist or isn't writable.
2011-03-08 01:12:40 +01:00
698480e185
Dummy commit.
2011-03-05 03:51:12 +01:00
f0a7686b72
Dummy commit.
2011-03-05 03:01:36 +01:00
3f718caa2d
Updated MediaInfo binaries to v0.7.42 (2011-03-03), compiled with ICL 12.0.2 and MSVC 9.0.
2011-03-05 01:56:00 +01:00
0e0f63fe0d
Output log messages as debug strings, if no console is attached.
2011-03-04 23:46:00 +01:00
8016e186dc
Fix a bug in the CPU detection code that could result in an infinite loop, if the CPU doesn't provide 'Extended Function CPUID Information'. Core of this problem is that VC's __cpuid() intrinsic has the parameters defined as 'int', but returns values of type 'unsigned int'.
2011-02-07 22:01:06 +01:00
cedb9c21a8
Increase expire interval for pre-release version to 30 days (was 14 before).
2011-01-20 22:06:59 +01:00
96db5e86c2
Happy new year!
2011-01-01 17:04:25 +01:00
b45f345fa3
Simplify compatibility mode detection + check for process elevation
2010-12-27 01:50:22 +01:00
8e38c1d3e2
Implemented the DropBox widget.
2010-12-22 01:01:01 +01:00
40b0300284
Implemented a method to "detect" the user's TEMP folder that doesn't depend on the %TMP% environment variable. QDir::temp() internally uses GetTempPath(), which *does* depend on %TMP%.
2010-12-07 22:58:28 +01:00
be4ce0d81c
Added AAC encoding support.
2010-12-03 23:01:17 +01:00
53a1bf6e38
Implement update reminder + added options to disable the update reminder and/or the sound effects + improved installer
2010-11-29 20:36:27 +01:00
11f57aecfe
Ogg Vorbis encoding support.
2010-11-26 00:29:53 +01:00
571df62e39
Implement support for Job Objects + improve log view.
2010-11-24 21:00:59 +01:00
c0ece99b69
Implemented logging and added a log file view.
2010-11-22 21:45:00 +01:00
47a6c2fdff
Make "Save output files to the same location where the input file is located" option work.
2010-11-21 21:51:22 +01:00
970f2cd8fb
Create playlist file + serialize filename generation, just to be sure.
2010-11-20 22:14:10 +01:00
cffa6a2454
Correctly forward meta info to MP3 encoder and apply.
2010-11-20 19:16:04 +01:00
1633489aaf
Actually use selected encoder in progress dialog + forward output dir.
2010-11-20 02:14:22 +01:00
28a926b820
Implement multi-theaded processing in progress dialog.
2010-11-19 21:11:54 +01:00
98dc212d68
Make message handler routine thread-safe.
2010-11-19 13:31:45 +01:00
7a79c476a3
Implemented processing dialog, no functionality yet.
2010-11-17 19:35:50 +01:00
c543451f67
Also detect number of CPU cores and x64 support
2010-11-15 14:02:58 +01:00