1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-05-09 08:12:40 +02:00

209 Commits

Author SHA1 Message Date
Paul Licameli
87f368f380 Redo AliasedFile using wxFileNameWrapper. 2016-04-17 03:31:16 -04:00
Paul Licameli
61177a15ad More consistent mutual exclusion in calls to certain sf_ functions; ...
... also SFCall to simplify thread-safe calls, and SFFile for RAII of SNDFILE
objects.
2016-04-14 15:20:37 -04:00
Paul Licameli
24df87bb4c Fix resource leaks in the usage of the FFMPEG library with RAII objects...
... This includes failure paths in the initialization if import.  Those
resources would have been reclaimed before program exit, but not as soon as
they should have been.

... This also includes certain leaks that would happen every time a file is
successfully imported or exported.  We never used avformat_free_context or
av_dict_free as we should have!

... There were also AVPacket objects repeatedly reinitialized without proper
cleanups in between.  That might have leaked memory too.
2016-04-13 20:31:54 -04:00
Steve Daulton
5b968e8250 Fix bug 1374 2016-04-12 21:58:44 +01:00
Paul Licameli
c3cca71461 Sweep for filename copying: import and export 2016-04-10 22:24:12 -04:00
Steve Daulton
1be7b0086f Consistent bit rates in MP3 export dialog
and update Plot Spectrum default.
2016-04-07 13:17:16 +01:00
Paul Licameli
ff3e3d0e83 ExportPlugin::CreateMixer returns a smart pointer 2016-04-06 14:56:05 -04:00
Paul Licameli
456c8fb01e ExportPlugins managed with smart pointers 2016-04-06 14:08:42 -04:00
Steve Daulton
b5c5d55d2f Fix bug 285 2016-04-01 21:46:56 +01:00
James Crook
b764c465d0 Reduced some repetitive code. Added credit for Mark Young.
Also added i18n-hint on translation and a couple of TODOs for further improvement.
2016-04-01 11:13:32 +01:00
tip2tail
aa5ffe99a7 Timer Recording Enhancements to allow Automatic Save and Export after
recording.  Also allows for additional options to be carried out after a
successful timer recording such as Exit, Retsrat and Shutdown.
2016-03-30 20:42:59 +01:00
Paul Licameli
43790cfa56 std::vector for wave track pointers; remove deprecated TrackList function; ...
... and some more uses of const
2016-03-01 20:54:48 -05:00
Paul Licameli
3cc4754ac7 Fix warnings for nonexhaustive switches on enumerations 2016-02-26 14:56:31 -05:00
Paul Licameli
990080ae7d Replace virtual with override wherever possible; eliminate needless virtual...
... for functions in final classes.

override is like const -- it's not necessary, but it helps the compiler to
catch mistakes.

There may be some overriding functions not explicitly declared virtual and I did
not identify such cases, in which I might also add override.
2016-02-26 12:35:38 -05:00
Paul Licameli
7824e94030 Harmlessly qualify classes as final (or explicitly comment not)...
... Should have no effect on generated code, except perhaps some slight faster
virtual function calls.  Mostly useful as documentation of design intent.

Tried to mark every one of our classes that inherits from another, or is a
base for others, or has abstract virtual functions, and a few others besides.
2016-02-24 20:58:30 -05:00
Paul Licameli
88eeebcb8b Undoing and redoing of Tags...
Use reference counting (in std::shared_ptr) to avoid replicating Tags with each
Undo state.
2016-02-24 19:25:39 -05:00
Paul Licameli
a5b6c9fd8f Add some const qualifiers; define TrackListConstIterator 2016-02-24 19:10:39 -05:00
Paul Licameli
ffe9989f7c Don't use an internal iterator in Tags 2016-02-24 19:10:38 -05:00
Paul Licameli
83e8a80f61 Sweep unnecessary wxString copies: export 2016-02-22 22:22:25 -05:00
Paul Licameli
1c07741d57 Sizers are owned by wxWindow objects when added, so use safenew, or...
... use unique_ptr in the interim between building them and adding.

This checks eliminates some naked news, which were not paired with deletes.
2016-02-18 18:58:38 -05:00
Paul Licameli
4d78e353c3 Revert "sizers"
This reverts commit 84c0a0b6663a1210be502a76ab9c48dd330b3919.
2016-02-18 14:50:52 -05:00
Paul Licameli
84c0a0b666 sizers 2016-02-18 02:54:50 -05:00
Paul Licameli
dbaa811577 Stack-allocate where possible! ...
... Removed many unnecessary naked news and deletes.
2016-02-17 18:15:57 -05:00
Paul Licameli
df6a7c5464 More uses of safenew for classes we derive from wxWindow classes...
... Also removed some unnecessary deletes of widgets that are managed by parent
windows
2016-02-14 20:39:28 -05:00
Paul Licameli
3f237daddc Use macro safenew for many allocations of wxWindow subclasses 2016-02-14 20:20:19 -05:00
Paul Licameli
7c4c45a0d5 "new"->"NEW" in comments, easier to find remaining naked operator new 2016-02-14 18:52:41 -05:00
Paul Licameli
8e46ff48d5 Fix unreported memory leak in command-line export...
... Solution was to stack-allocate!

To make the leak happen, export with "external program" and edit the command to
"foobar" or other nonextistent program instead of lame.
2016-02-01 13:14:06 -05:00
Steve Daulton
d6b8080a5d Fix for bug 1313 2016-01-29 22:12:41 +00:00
Paul Licameli
a047fcf0f8 Travis 2016-01-26 14:14:10 -05:00
Paul Licameli
53a8b44f1d Bug1217: Export "other uncompressed files" now uses correct default extension...
... but there is this consequence:  If you do type an explicit extension,
which is one of the acceptable extensions though different from the
"Header:" chocie, then it is also corrected, silently.  This behavior is
different from other cases where the user types an inappropriate explicit
extension and is prompted to fix it.
2016-01-26 13:48:37 -05:00
Leland Lucius
9dd79c9f80 Remove flushing of preferences in ShuttlePrefs and only
flush when all settings have been written.
2015-12-21 20:07:24 -06:00
Benjamin Drung
162392e8cf ExportMP3: Fix compiling with static loading
Audacity can be built with dynamically loading/unloading the MP3 library
(the default) or dynamically linked against the shared object file
(--disable-dynamic-loading). The code to load the library is only needed
in the former case.
2015-10-16 00:36:26 +02:00
Leland Lucius
aefde8ad30 Fix for bug #1216 2015-09-30 10:22:23 -05:00
Leland Lucius
11bc5fedb3 Fix for bug #896 2015-09-04 10:01:09 -05:00
Leland Lucius
4e0cb1af71 Check for valid lame lib before prompting for metadata. 2015-08-27 22:29:02 -05:00
Leland Lucius
a35669a562 Follow up to bug #1112
The custom FFmpeg options should check for a valid FFmpeg
environment also.
2015-08-26 14:11:37 -05:00
Leland Lucius
e5ce636234 Fix for bug #1124 2015-08-26 12:40:55 -05:00
Leland Lucius
5c3ff022e6 Additional changes for bug #1112
See http://bugzilla.audacityteam.org/show_bug.cgi?id=1112#c7
2015-08-26 12:15:02 -05:00
Leland Lucius
6c73bab41e Fix for bug #1142 2015-08-26 11:18:55 -05:00
Leland Lucius
9c4eb4943f Fix for bug #1140 2015-08-26 09:23:44 -05:00
Leland Lucius
6944ae9dff Adjust WMA default bitrate to 128. 2015-08-24 23:45:35 -05:00
Leland Lucius
b8dc019146 Adjust MP3 export defaults as suggested in bug #1136 2015-08-24 00:58:23 -05:00
Leland Lucius
2e2dcd1bcf Fix for bug #1150 2015-08-24 00:34:59 -05:00
Leland Lucius
6a9dae20f5 Appearance on OSX is now back to normal or better
Some additional wx3 cleanup as well.
2015-08-23 20:25:01 -05:00
Leland Lucius
54902ddb65 Fix for bug #1136 2015-08-16 15:21:39 -05:00
Leland Lucius
8d236b88ae Fix bug #1110 2015-08-09 23:28:13 -05:00
Leland Lucius
f342ae8836 Fix bug #1123 2015-08-09 21:35:14 -05:00
Leland Lucius
617e0713df This should fix bug #1111
In addition it adds an option to open the full FFmpeg options
dialog.
2015-08-05 02:28:42 -05:00
Steve Daulton
246a8c17ef Save overwrite choice in Export Multiple 2015-08-03 16:02:41 +01:00
Leland Lucius
37168ebbf6 Merge remote-tracking branch 'upstream/master' into wx3 2015-07-28 15:06:25 -05:00