1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-05-02 16:49:41 +02:00

3201 Commits

Author SHA1 Message Date
Leland Lucius
7db0eebd65 Pull in the right library in wx3 builds 2015-04-18 23:39:49 -05:00
Leland Lucius
6609fbbfdd Really use the right indices this time 2015-04-18 23:11:22 -05:00
Leland Lucius
7a0aa43a82 Convert all wxTRANSLATE() to XO()
XO() can be used anywhere a string must be extracted for translation
but not automatically translated at runtime.
2015-04-18 23:03:49 -05:00
Leland Lucius
f0ab978dbf Use the right array index 2015-04-18 16:58:25 -05:00
Paul-Licameli
96585b3377 Add empty ViewInfo.cpp 2015-04-18 16:49:21 -04:00
Leland Lucius
4e26fb654c Fix up Tone and Chirp based on Steve's feedback
Thanks Steve
2015-04-18 12:34:35 -05:00
James Crook
9fc9963236 Fix problem where HistoryWindow was not updating.
We now also call the UpdateDisplay function when we show the window.
2015-04-18 18:16:19 +01:00
Leland Lucius
923827966c Add debug report (crash report) to Help menu
This captures crashes on Windows along with the stack backtrace.

On Linux (fedora 21 at least), the necessary function to enable
capture is not included in the system wx libs.  But, a self built
version works fine and capture the backtrace, so I'm assuming
other distros will probably work as well.

On OSX, the crashes are caught, but it does not include the
backtrace.

But, really, the backtraces aren't all that useful in a release
build since we don't ship with debug symbols and optimization
plays havoc with proper backtraces anyway.

The real benefit will be for the support folks as they can now
get consistent info from user by asking the to generate a report
from the "Help->Generate Support Data" menu item.
2015-04-18 05:06:28 -05:00
Leland Lucius
2a9690b902 Add new Diags* files to Mac build 2015-04-18 04:51:56 -05:00
James Crook
6e7d866d3c Struct initialiser changed to use = for gcc 4.0 compatibility 2015-04-18 09:22:46 +01:00
Leland Lucius
835000d916 Should fix the invalid initial duration for generator effects 2015-04-17 22:52:34 -05:00
Leland Lucius
80c3705e7c Add new files and fix Linux includes 2015-04-17 17:37:28 -05:00
Paul-Licameli
836b3c6d6b Merge: Fix assertion violations in wave clip cache code. 2015-04-17 18:29:40 -04:00
Paul-Licameli
a37d6c56be Fix assertion violations in wave clip cache code. 2015-04-17 18:26:54 -04:00
Paul-Licameli
4323ad60f6 Merge branch 'master' into scrubbing 2015-04-17 18:25:52 -04:00
Paul-Licameli
46e937e3ea Fix assertion violations from the previous change. 2015-04-17 18:21:43 -04:00
James Crook
dbe92940ad Added another missing #include "Diags.h" (UndoManager.cpp) 2015-04-17 23:11:20 +01:00
Leland Lucius
3e1fbcd5ec Additional autosave speed improvement and 1 fix
This changes the autosave XML file to a binary representation
during writing to speed up autosave processing.  A lot of the
time used during autosave is a result of having to convert and
print all of the values to the XML file.

Writing the same information, but in binary format, reduces
all of that to just the bare essentials and the actual write
I/O.

During recovery, the binary file is read and converted to
the real xML representation and processing happens as it
did before.

It is a noticeable difference with very long or many tracks.

The included fix has to do with append recording.

Say you have 3 tracks and you want to append recorded audio
to the middle track.  Sometime later Audacity crashes and
upon recovery, the recorded audio is actually appended to
the third track, not the second one.

This fixes that by adding an "autosaveid" to each track as
it is written to the autosave file.  The same ID is written
to the recording recovery appends to the autosave file.

Then, during recovery, the IDs are matched up and the audio
gets appended to the proper track.

These autosaveid attributes are only present in the autosave
file and not in saved project files.
2015-04-17 16:58:26 -05:00
James Crook
6a84f657c3 Added missing #include "Diags.h" 2015-04-17 22:53:58 +01:00
James Crook
13f8333873 First use of Diags.
Refined the Diags Macros, and used to actually monitor timings.
2015-04-17 22:43:14 +01:00
James Crook
fafe3f105a Added DIAG macros for countdown logging
Also for tracking memory use and for timing.
2015-04-17 22:43:14 +01:00
Leland Lucius
5bd99f94cd Merge branch 'master' of https://github.com/lllucius/audacity
Conflicts:
	src/toolbars/ControlToolBar.cpp
2015-04-17 16:37:17 -05:00
Leland Lucius
69b044e321 Restore tracks if recording fails to start
During an append record, silence may need to be added to the
end of the existing track(s) to fill any gap between the end
and the common recording start time.

But, if the recording fails to start, this silence is left at
the ends of the tracks.

This change fixes that by making a copy of the tracks before
recording starts and restoring the tracks from that copy if
the start fails.
2015-04-17 16:35:48 -05:00
Leland Lucius
8ab7c271c9 Restore tracks if recording fails to start
During an append record, silence may need to be added to the
end of the existing track(s) to fill any gap between the end
and the common recording start time.

But, if the recording fails to start, this silence is left at
the ends of the tracks.

This change fixes that by making a copy of the tracks before
recording starts and restoring the tracks from that copy if
the start fails.
2015-04-17 16:31:01 -05:00
Leland Lucius
c38d863158 Update DtmfGen.cpp
Set correct default
2015-04-17 13:40:19 -05:00
Paul-Licameli
eb03098c9b Merge: Add user interface for scrubbing and Experimental.h switches
EXPERIMENTAL_SCRUBBING_BASIC enables middle-click-drag to scrub, or to seek
when shift is down.

EXPERIMENTAL_SCRUBBING_SMOOTH_SCROLL adds middle-double-click-drag to
scrub or (with SHIFT down) to seek while keeping the playhead at the midline
of the track display.

EXPERIMENTAL_SCRUBBING_SCROLL_WHEEL allows control wheel to vary the speed
limit, while scrubbing (not seeking).

All three are enabled in this commit.

Also notice the changes to status bar messages and the Mouse Preferences dialog.

Scrubbing works only in Select and Multi tools.
2015-04-17 14:14:21 -04:00
Paul-Licameli
10e35bb6bb Add user interface for scrubbing and Experimental.h switches
EXPERIMENTAL_SCRUBBING_BASIC enables middle-click-drag to scrub, or to seek
when shift is down.

EXPERIMENTAL_SCRUBBING_SMOOTH_SCROLL adds middle-double-click-drag to
scrub or (with SHIFT down) to seek while keeping the playhead at the midline
of the track display.

EXPERIMENTAL_SCRUBBING_SCROLL_WHEEL allows control wheel to vary the speed
limit, while scrubbing (not seeking).

All three are enabled in this commit.

Also notice the changes to status bar messages and the Mouse Preferences dialog.

Scrubbing works only in Select and Multi tools.
2015-04-17 14:09:35 -04:00
Paul-Licameli
f549e335f6 Merge branch 'master' into scrubbing 2015-04-17 14:05:07 -04:00
Steve Daulton
30c61f648d Merge remote-tracking branch 'upstream-audacity/master' into QuickPlay2 2015-04-17 17:58:48 +01:00
Steve Daulton
702d9d75e5 Timeline Quick Play bug fixes and enhancements 2015-04-17 17:52:13 +01:00
Paul-Licameli
c65570c465 Merge Fix display caching for waveforms and spectrograms so smooth scrolling works
This will matter if the smooth-scrolling version of scrubbing is enabled

The problem was accumulation of roundoff errors when deciding which pixel
column data to copy from old caches to new caches, when the number of samples
scrolled was not an integer multiple of samples per pixel (itself, not always
an integer)

Thus repeated scrolling by small amounts caused the wave display or spectrogram
to creep relative to the time ruler!
2015-04-17 11:38:53 -04:00
Paul-Licameli
cc2a26956a Fix display caching for waveforms and spectrograms so smooth scrolling works
This will matter if the smooth-scrolling version of scrubbing is enabled

The problem was accumulation of roundoff errors when deciding which pixel
column data to copy from old caches to new caches, when the number of samples
scrolled was not an integer multiple of samples per pixel (itself, not always
an integer)

Thus repeated scrolling by small amounts caused the wave display or spectrogram
to creep relative to the time ruler!
2015-04-17 11:12:47 -04:00
Paul-Licameli
187f9d3d54 Merge branch 'master' into scrubbing 2015-04-17 03:04:02 -04:00
Paul-Licameli
f49a94755d Merge branch 'scrubbing' -- preliminaries only, not the complete feature 2015-04-17 02:54:34 -04:00
Paul-Licameli
d988c3329f Support for scrubbing in playback engine, but unused 2015-04-17 02:35:06 -04:00
Paul-Licameli
5abfd25a34 Support backwards play, a requirement for scrubbing
Uncomment the line at the top of ControlToolBar::PlayPlayRegion to play
everything backwards and test it

It even works correctly with a time track
2015-04-17 02:25:52 -04:00
Paul-Licameli
2b85d0edb4 Preliminary function argument list changes and comments, for scrubbing project
In particular, use an options structure for AudioIO::StartStream to simplify
calls

ControlToolBar::PlayPlayRegion also takes that structure as an argument, and a
SelectedRegion instead of two times

And other changes
2015-04-17 02:25:39 -04:00
Paul-Licameli
21fd4ab374 Remove the unsuccessful scrubbing experiment of 2.0.6. 2015-04-17 02:25:26 -04:00
Leland Lucius
b453e2d8ea Merge pull request #34 from lllucius/builtin_effects
Migrating the remaining effects
2015-04-16 23:51:22 -05:00
Leland Lucius
8fbfa460c4 Migrating the remaining effects
This brings the builtin, LV2, and VAMP effects inline with the
Audio Units, LADSPA, and VST effects.  All effects now share
a common UI.

This gives all effects (though not implemented for all):

User and factory preset capability
Preset import/export capability
Shared or private configuration options

Builtin effects can now be migrated to RTP, depending on algorithm.
LV2 effects now support graphical interfaces if the plugin supplies one.
Nyquist prompt enhanced to provide some features of the Nyquist Workbench.

It may not look like it, but this was a LOT of work, so trust me, there
WILL be problems and everything effect related should be suspect.  Keep
a sharp eye (or two) open.
2015-04-16 23:36:28 -05:00
Leland Lucius
40e6bcc56a Merge pull request #33 from lllucius/clean_libsrc
Clean libsrc
2015-04-16 15:40:53 -05:00
Leland Lucius
a03d65ef4d Cleanup lib-src
Removing:

id3lib
libresample
libsamplerate
taglib
2015-04-16 14:41:41 -05:00
Steve Daulton
94fcb2a922 Update Experimental.h
Remove obsolete #define
2015-04-16 13:46:39 -05:00
Steve Daulton
ca25b45978 Update Nyquist.cpp
Remove earlier ifdef'd version of time/date property
2015-04-16 13:46:39 -05:00
Steve Daulton
9ad9f8543f Update Experimental.h
Remove obsolete #define
2015-04-14 20:59:24 +01:00
Steve Daulton
dbed4affe8 Update Nyquist.cpp
Remove earlier ifdef'd version of time/date property
2015-04-14 20:42:15 +01:00
Leland Lucius
35cbd1c017 Copy waflib into build directory to prevent python compiler
code from poluting source tree.
2015-04-14 11:17:37 -05:00
Steve Daulton
fa3d546cf8 Merge branch 'master' of github.com:audacity/audacity into nyquistPlus 2015-04-14 13:56:15 +01:00
Steve Daulton
d8d292edc7 Add time and date property list. 2015-04-14 13:50:51 +01:00
Paul-Licameli
ff06f33c70 Merge branch 'temp2' 2015-04-14 02:33:06 -04:00