Commit Graph

103 Commits

Author SHA1 Message Date
Paul Licameli cfbdd2d22e Type alias ManualPageID for wxString used in many places...
... eliminating many direct mentions of wxString.  A real type distinction will
be made next.
2021-07-01 13:33:04 -04:00
Paul Licameli f369b5109b Change almost all uses of WaveTrack::Get() to GetFloats() ...
... A call graph browser easily shows that the extra generality of fetching
samples in some other format is only used in Benchmark -- where the format is
always the same as what the track is constructed with.

This makes re-verification of the claims in comments two commits ago easier.
2021-05-27 11:38:10 -04:00
Paul Licameli c5ebc396eb Audacity.h has shrunk to nothing, now remove it! 2021-05-10 00:05:23 -05:00
Paul Licameli e653b4aaf8 Eliminate Experimental.h, configure compile options instead...
... This makes it impossible to forget to include the EXPERIMENTAL definitions
(such as when cutting and pasting code) and so get unintended quiet changes of
behavior.

The EXPERIMENTAL flags are now specified instead in new file Experimental.cmake
2021-04-27 12:40:07 -04:00
Leland Lucius cbf1bb558e AUP3: Removes OD code related to project file handling
This removes all of the OnDemand code embedded throughout
    the main codebase. Individual files related specifically
    to OD have been left in place, but removed from the build.
2020-07-01 01:14:05 -05:00
Paul Licameli 4d09705a73 Change XO to XXO in many more places, with no effects at all...
... because the two macros have the same expansion, and are both checked for
in the --keyword arguments passed to msgfmt by locale/update_po_files.sh.

This commit makes ONLY such changes, and comments in Internat.h.  It is big
but quite harmless.

The intention is to introduce a type distinction in a later release, by defining
XXO differently.  XXO is used where & characters in strings (for hotkeys of menu
items or control prompts) are permitted, XO where not.
2020-05-22 13:07:50 -04:00
David Bailes eeeb4f3e1f Built-in effect dialogs: add access keys where necessary
Several of the dialog were missing acccess keys.
Note: access keys not added to Distortion effect as yet, due to complexity of control names changing when the Distortion type is changed.
2020-03-27 10:51:34 +00:00
Paul Licameli 37c8a6ef23 Remove unused member variable 2020-03-21 16:19:13 -04:00
Paul Licameli b683ed8c07 Remove vestiges of unification of Normalize with Loudness 2020-03-21 11:14:13 -04:00
Paul Licameli 69dab8b552 Each built-in effect class registers itself with BuiltinEffectsModule 2020-01-19 19:16:51 -05:00
Paul Licameli 4579835911 Eliminate one of the ## macro hacks in LoadEffects 2020-01-19 19:16:51 -05:00
Paul Licameli 747c35645a TranslatableString for checkbox captions 2019-12-23 19:15:34 -05:00
Paul Licameli 707a069712 ShuttleGui::AddVariableText takes TranslatableString 2019-12-23 18:53:00 -05:00
Paul Licameli 618fee21ec TranslatableString for ComponentInterface::GetDescription() 2019-12-16 14:21:57 -05:00
Paul Licameli 9a609fe1fe TranslatableString in ProgressDialog 2019-12-14 01:48:15 -05:00
Paul Licameli b5ee7676fd Rename ShuttleGui::SetSizeHints, chain-call it like other methods...
... And rewrite some other existing calls to SetMinSize
2019-12-02 19:35:06 -05:00
Paul Licameli 9eeef4713d Define and use ShuttleGui::Name and NameSuffix...
... For radio buttons, the name will default to the same as the prompt if not
otherwise specified
2019-12-02 16:55:46 -05:00
Paul Licameli 1d32824e02 Define and use ShuttleGui::Validator 2019-12-02 11:21:40 -05:00
Paul Licameli b256a4fd1a Less code directly inside ShuttleGui code blocks...
... Trying to reduce that just to chained calls on S, or conditional and looping
logic for variations in layout.

Lift some declarations to higher scope; or use expressions that avoid local
variables; or even use lambdas for more complicated computation of arguments
for the member functions of S.
2019-11-29 15:16:51 -05:00
Max Maisel c3d25cfb44 Remove all Loudness related code from Normalize effect. 2019-11-22 19:42:33 +01:00
Paul Licameli 71250b1dc3 WaveTrack.cpp does not depend on ODDecodeBlockFile.cpp...
... cutting off ODDecodeBlockFile and ODDecodeTask into a small cycle of 2
2019-06-22 21:46:34 -04:00
Paul Licameli 6c57948d8f Remove unnecessary #include-s from .cpp files...
... Unnecessary because transitively included.

But each .cpp file still includes its own .h file near the top to ensure
that it compiles indenendently, even if it is reincluded transitively later.
2019-05-16 17:21:00 -04:00
Paul Licameli 0b733eed3f Remove (or comment) ProgressDialog.h in headers...
... For ImportPlugin, use unique_ptr not Maybe to hold it, and take constructors
out-of-line.
2019-04-04 09:47:57 -04:00
Paul Licameli d71a54b4e9 Remove wx/checkbox.h from headers 2019-03-28 12:55:34 -04:00
Paul Licameli b8aea73c91 Remove wx/stattext.h from headers 2019-03-27 14:33:46 -04:00
Paul Licameli 7766d9a192 AddCheckBox takes a bool for initial state, not string 2019-03-27 12:58:40 -04:00
Paul Licameli 906e55f047 Experimental.h in all .h or .cpp files that directly use EXPERIMENTALs...
... except Audacity.h; and in no others.

Do so even if Experimental.h gets multiply included, as in both the .h and
.cpp files.

This makes it easier to do a text scan to be sure there are no unintended quiet
changes of meaning because of omission of Experimental.h when the flag is
an enabled one.

Also move inclusions of Experimental.h earlier.

Also don't require Experimental.h to be preceded by Audacity.h to define
EXPERIMENTAL_MIDI_OUT correctly.
2019-03-17 22:54:00 -04:00
Paul Licameli 3ff61f3e10 Remove Shuttle.h from other headers 2019-03-17 15:03:05 -04:00
Paul Licameli c68e336247 More use of std:: style members of wxString...
... replacing:

Length => length
Len => length
2019-03-10 14:44:54 -04:00
James Crook 466e9c179e Create ComponentInterface
It combines the old IdentInterface with the ParamsInterface, providing an identifier and parameters (if needed).
The main purpose of the change is to make the class hierarchy (as viewed via doxygen) much easier to follow.
2018-11-02 17:04:43 +00:00
Steve Daulton 4f964c359b bug 2017 'offset' was used uninitialised 2018-10-30 15:58:47 +00:00
Paul Licameli 6ca721b03a Fix a string again...
... This string appears when you enter a positive, invalid value for peak
amplitude in the Normalize effect.  It didn't look right with periods (a space
was left before the first period).  Let's use parentheses instead.
2018-10-15 12:59:02 -04:00
Paul Licameli ef97ce88ca Correct more double spaces 2018-10-15 12:54:44 -04:00
Paul Licameli 4c75175e41 Remove GetLink(ed) in Normalize effect...
... It's much simpler and should be easy to generalize, but what would be
appropriate messages?
2018-10-01 13:42:29 -04:00
James Crook 0ea4ff1395 Add internationalization hints. 2018-08-28 16:35:06 +01:00
Steve Daulton e1ae057806 Disable experimental loudness normalizing 2018-08-22 20:45:50 +01:00
James Crook 4d24c0249b Use dB, not LUFS by default.
Parameter name to camel-case, not spaced.
Also a wording change on the choice prompt.
2018-07-28 11:17:04 +01:00
Max Maisel 9cbb67acba Fix too low loudness normalization levels.
LUFS are defined as the power of the signal, not as the root mean square.
Accidential use of the RMS caused incorrect normalization to only half
of the LUFS value.
2018-07-27 16:50:27 +02:00
James Crook 487769d2b6 Change more prompts when switching between LUFS and dB in Normalize.
As well as changing more prompts, the choice between prompts is now made in UpdateUI, rather than also doing so in PopulateOrExchange.
2018-07-26 19:05:31 +01:00
James Crook bcb60d1f6e Fix initial display of dB/LUFS in Normalize Effect.
Previously it could show dB with the LUFS value, on first use.
Also made the VI string LUFS/dB sensitive.
2018-07-26 17:54:08 +01:00
Max Maisel e68ea1a272 Added missing bias value in Normalize LUFS calculation. 2018-07-26 17:11:10 +02:00
Max Maisel 0ed9b9d34b Separated peak and LUFS normalization presets. 2018-07-26 17:09:44 +02:00
Max Maisel 58929e4c6c Fixed stereo track LUFS calculation according to EBU R128. 2018-07-26 17:09:44 +02:00
Max Maisel b1598fd214 Fix peak normalize regression introduced by refactoring (bug #1908). 2018-07-26 17:09:44 +02:00
Max Maisel 514c3f897f Improved source reference for EBU R128 sampling rate adaption. 2018-07-26 17:07:01 +02:00
Max Maisel ed41183536 Implement EBU R128 loudness normalization.
Please note that normalizing to large LUFS values may introduce clipping
of large peaks. However, the recommended target value in EBU R128 of
-23 LUFS should be totally safe but only uses a small amount of the
possible quantization range. For tracks with normal dynamic range,
normalizing to about -10 LUFS should be possible without clipping.
2018-07-24 17:38:17 +02:00
Max Maisel d16b4526ce Refactor Normalize extent calculation in preparation of EBU R128 loudness normalization. 2018-07-24 17:29:51 +02:00
Max Maisel 6655f6e38a Fix normalize progress bar in case of stereo tracks.
Before this commit, progress jumped from 0.25 to 0.5,
then from 0.75 to 0.25 and finally from 0.5 to 0.75 when
normalizing a dependent stereo track.
2018-07-24 17:20:52 +02:00
Paul Licameli b200819f75 Use IdentInterfaceSymbol to identify commands and effects 2018-04-11 11:51:10 -04:00
James Crook de53f64757 Bug 499 - Normalize includes white space in offset calculation 2018-03-25 15:58:34 +01:00