d0e994b347
Removed some obsolete compatibility code in lamexp_detect_cpu_features().
2013-10-16 03:29:43 +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
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
ae72ce1fcf
Yet another small overhaul of ProcessingDialog and ProcessThread.
2013-10-12 20:34:59 +02:00
8fd45dc4dd
Split ProcessThread::start() method into ProcessThread::init() and ProcessThread::start().
2013-10-11 20:43:31 +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
94c199d849
Make ProcessingDialog use a QThreadPool and, accordingly, make ProcessThread inherit from QRunnable rather than QThread.
2013-10-09 03:14:38 +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
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
1f241a1045
Refactored AAC encoder selection code.
2013-07-14 19:45:28 +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
bd0a370aee
Welcome to year 2013 ;-)
2013-02-08 23:57:50 +01:00
b4cd7c3a29
Handle two more plurals correctly.
2013-01-28 22:22:49 +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
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
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
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
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
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
20d7a2cb58
Bugfix: One of the context menu items was never connected.
2012-11-11 19:36:31 +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
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
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
17794881a4
Extinguished some remaining uses of argv[] or QApplication::arguments().
2012-06-23 18:18:57 +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
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
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
a96237e6b2
Some refactoring of the icon initialization code.
2011-12-26 21:02:55 +01:00
30f1795d32
Added some more "special" application icons.
2011-12-25 01:00:11 +01:00
a0a29b9551
Experimental support for dcaenc, by Alexander E. Patrakov <patrakov@gmail.com>.
2011-12-22 21:53:25 +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
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
6a90dad03f
Adjusted QAAC detection for shared 'libsoxrate' library.
2011-11-22 23:48:54 +01:00
3e7ae9642c
Changed detection of QAAC for the new fully-static build.
2011-11-21 22:28:14 +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
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