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

11372 Commits

Author SHA1 Message Date
Paul Licameli
705d4a26a5 Don't supply "Waveform (dB)" to the 'VIEW property in Nyquist...
... consistently with the drop-down menu, and now the Tracks Preferences too.

Only distinguish Waveform and Spectrogram and nil.

See also commit e3d9fd9.
2020-01-17 22:48:23 -05:00
Paul Licameli
000d63c95e Widen the hot zone for sub-view rearrangement...
... so it's wider than the close button
2020-01-17 16:14:23 -05:00
Paul Licameli
f10b303279 A close box button for sub-views 2020-01-17 16:10:46 -05:00
Paul Licameli
0f3f13502c Fix hot zones of sub-view cursors...
which got broken at 876cd92ed3a1729a4211938ab3c67c649df4cb3e

And remove duplicate function
2020-01-17 16:04:45 -05:00
Paul Licameli
851b49d912 Avoid churn of handles for sub-view adjustment and rearrangement 2020-01-17 15:53:33 -05:00
Paul Licameli
b45e3e8aac Separate default waveform scale choice in Tracks preferences...
... Some complications in handling correct migration of preferences from
config files in older versions
2020-01-17 12:28:52 -05:00
Paul Licameli
6c3731061f Switch priority of adjust and rearrange hit tests for sub-views 2020-01-17 11:03:25 -05:00
David Bailes
d531e8a2f8 Fix Linux build.
Problem caused by my commit: 64079c3. DBL_MAX was not declared.
2020-01-17 10:06:27 +00:00
David Bailes
64079c3f55 Keyboard scrubbing: faster change of direction
If one of the keyboard scrubbing keys is being held down, and the other keyboard scrubbing key is pressed:
1. With current behaviour, scrubbing in the other direction only starts when the original key is released - scrubbing stops and then starts in the other direction.
2. With the new behaviour, scrubbing immediately changes direction, and does not stop when the original key is released - scrubbing does not stop and then start again.

New behaviour:
If one of the keyboard scrubbing keys is being held down,
2020-01-17 09:32:17 +00:00
Paul Licameli
6fd29ad863 Restrict y coords of the hot zone for the new sub-view rearrangement 2020-01-16 15:01:52 -05:00
Paul Licameli
876cd92ed3 Remove the 16x16 cursors, unused since d52d8de 2020-01-16 14:42:56 -05:00
Paul Licameli
a95838a3e8 Better cursors for sub-view rearrangement 2020-01-16 12:06:59 -05:00
SteveDaulton
e14c9538ad Nyquist: Fix multichan-expand
Many existing Nyquist plug-ins require the old version
of multichan-expand, so in Audacity we need to support
both the old and new versions.
2020-01-16 13:37:26 +00:00
Leland Lucius
30f61a535d Don't copy lsp/ny files to the Resources folder
Needed to remove them from the Audacity project
as they were showing up in the "Resources" folder
of the app bundle unnecessarily.
2020-01-15 14:36:05 -06:00
Paul Licameli
a1ef73398b Implement click and drag to rearrange sub-view permutation...
... The hot zone is 15 pixels wide at the left of the track contents, and the
cursor is a hand.  Those particular choices can be easily amended.
2020-01-15 13:50:28 -05:00
Paul Licameli
1fa41808c2 Some refactoring of SubViewAdjustHandle 2020-01-15 13:44:10 -05:00
Paul Licameli
468d48b8dd Bug2245 residual: better color choice for sub-view separator...
... so it can be seen also in High Contrast theme
2020-01-15 12:58:06 -05:00
Paul Licameli
94af81b9f7 Fix Ubuntu build 2020-01-15 11:08:17 -05:00
Paul Licameli
e3e75705a6 Fix error in const overload of ClientData::Site::FindIf 2020-01-15 11:08:17 -05:00
David Bailes
6b9c8e79cc Bug 1954: Clicks may occur starting/pausing play-at-speed or Scrub
Problem:
On Windows, after 50ms, there is a short period of roughly zero introduced into the output. On Linux, there is also a spike which sounds like a crackle.

In AudioIO::FillBuffers(), Mixer::SetTimesAndSpeed() is called, which sets mT0 and mT1 to a small interval.
In Mixer::MixVariableRates(), all the samples in the interval are used, which means the Resample::Process() is called with last equal to true.
So when Mixer::MixVariableRates() is called again, the resampler is being reused after a call to Process() in which last is true.
It is not stated in the soxr documentation if the resampler will produce valid results in this case, and it's only the scrubbing code which does this.
I think this is the problem, and so the partial fix below avoids this happening.

Partial fix for play-at-speed and keyboard scrubbing:
For these, there is no need to reset the values of mT0 and mT1. (There is no need to allow for the sample position being used to potentially jump around.)
So for these cases, Mixer::SetSpeed() is called, rather than Mixer::SetTimesAndSpeed().
2020-01-15 11:12:40 +00:00
SteveDaulton
f11b2b6bab Restore Nyquist *runtime-path* 2020-01-15 01:37:45 +00:00
Paul Licameli
cbe4a46af2 Bug2265: Should save and restore track heights...
... Regression happened at 3f1fd8ced0fb5fe617ad2dd7808cd1ae2ca2c0f3

The heights were written to file, but not read back again.

This fix was done carefully to avoid making dependency cycles.  We don't want
Track to depend on TrackView or TrackControls.

It's not great that LabelTrack, NoteTrack, TimeTrack, and WaveTrack now have
those dependencies, but at least they don't make cycles.

It would be better to figure out how to attach the view and controls to the
track with ClientData, then just invoke BuildAll to repopulate the view and
controls, so that they are non-null when you reach
Track::HandleCommonXMLAttribute.
2020-01-14 20:04:32 -05:00
Paul Licameli
bd95b910bb Bug2245: Draw a line separating split views 2020-01-14 19:26:56 -05:00
Paul Licameli
9e0372cbea Bold, clickable, butting clip boundaries also in spectrum view 2020-01-14 15:16:30 -05:00
Paul Licameli
97b7572504 Stroke clip edges in spectrum views too, improving split appearance 2020-01-14 14:37:54 -05:00
Paul Licameli
98bd937389 Add the multi-view menu item only if there are multiple sub-views...
... anticipating possible subtraction of all spectrogram code into an optional
plug-in in a later release
2020-01-14 14:06:22 -05:00
Paul Licameli
ae1644627f Define ClientData::slots() 2020-01-14 14:03:50 -05:00
Leland Lucius
333c6905b1 Update Nyquist system.lsp to the r288 version
It removes the "s-plot" function which, when defined as it was in
our system.lsp, caused Nyquist initialization to fail.
2020-01-14 09:44:32 -06:00
Paul Licameli
caf36b42ca 886c80b: Add a comment referencing the correct bug number, 2275 2020-01-13 17:51:27 -05:00
Paul Licameli
886c80bbca Bug2267 residual: do something about un-checking the last sub-view...
... when in Multi View mode.

And what we do here is disable the menu item.  The visible check indicates
which view is enabled, but you are not allowed to un-check it.  While the
Multi View item appears enabled and with a check mark.  That should be
suggestive enough to let the user discover how to exit multi view.
2020-01-13 17:48:18 -05:00
Leland Lucius
033ba8f626 Update build for new Nyquist r288 runtime 2020-01-13 13:34:25 -06:00
Leland Lucius
017915d5b6 Reapply local changes to Nyquist runtime
commit 48b6a9a8594c072de0849f33ad554e7f60980bb4
Author: Steve Daulton <SteveDaulton@users.noreply.github.com>
Date:   Wed Dec 18 20:28:04 2019 +0000

    Update init.lsp

    *NYQ-PATH* is not required (and not currently used).
    Use *RUNTIME-PATH* instead (already defined in Nyquist, but not previously documented).

commit f99d564fd6dbddfa995ff16ae18aef3429aee2ed
Author: Steve Daulton <stevedaulton@gmail.com>
Date:   Tue Jul 2 15:02:00 2019 +0100

    Fix bug 2148

    Ensure that backslashes in GetInfo data are escaped.

commit 5a7b6a7323a12591f79176588581e7dd84a49038
Author: Steve Daulton <stevedaulton@gmail.com>
Date:   Thu Dec 27 19:44:05 2018 +0000

    Fix multiple selection Nyquist file widget

    Wx "Style" flags are 4 bytes, not 1 byte.
    Also update a couple of comments in passing.

commit 26e19bfd5a2485aaa8aa1554b9d45c248b4c134b
Author: Steve Daulton <stevedaulton@gmail.com>
Date:   Fri Nov 9 16:35:37 2018 +0000

    Add aud-do-support.lsp for Linux build

    Provides Nyquist (LISP) wrapper functions for macro "Commands".

commit 46a3f91d5946a0248631d590a05073911f7f87cc
Author: Steve Daulton <stevedaulton@gmail.com>
Date:   Mon Oct 29 15:20:36 2018 +0000

    Add some useful path definitions for Nyquist

commit 37ec7da3c33efbd7e804b59e8b3cbfec8ece8b8e
Author: Steve Daulton <stevedaulton@gmail.com>
Date:   Thu Oct 11 02:43:07 2018 +0100

    Throw error if Nyquist *LOCALE* is malformed

    Partial translations are allowed.

commit 297bf442a45b4e7fd7831a35102585ac2d50cbc3
Author: Steve Daulton <stevedaulton@gmail.com>
Date:   Tue Oct 9 01:13:48 2018 +0100

    Fix typo in 665e2d0

commit 665e2d0e9c72335911a8572393d0b30ee38b1662
Author: Steve Daulton <stevedaulton@gmail.com>
Date:   Tue Oct 9 01:04:05 2018 +0100

    Correction to translation of rms.ny

    Update Russian translation in rms.ny and make variables local to
    underscore function.

commit 5d34d022a5cc7c4efa631a3a815121584dd2e9c6
Author: Steve Daulton <stevedaulton@gmail.com>
Date:   Sun Oct 7 18:40:41 2018 +0100

    Add rms.ny to Audacity bundle

    Tidy translation code in init.lsp
    Include rms.ny in Makefile.am
    Add rms.ny to Linux package
    Update Makefiles with: autoreconf --force --no-recursive
    Add rms.ny to mac build
    Add rms.ny to Windows build

commit ae2bbb327613ed35ddc1e37d5f9fd443180b06c2
Author: Steve Daulton <stevedaulton@gmail.com>
Date:   Mon Sep 3 16:57:06 2018 +0100

    AUD-GET-INFO function added to init.lsp

    Provide built-in Nyquist function to call scripting command
    GetInfo, and return result as LISP list.

commit 367d15a0b0695f0aa29bc4500c6702bd17c3ce6f
Author: Steve Daulton <stevedaulton@gmail.com>
Date:   Sun Aug 26 20:07:47 2018 +0100

    Add a couple of helpers for parsing string

    Provides a convenient function and macro, intended specifically for
    parsing strings returned by (aud-do "GetInfo: ...

commit 504cf0fe8553a60aee5557e820c43ca6aa51a47a
Author: Steve Daulton <stevedaulton@gmail.com>
Date:   Sun May 6 17:08:12 2018 +0100

    Runtime translation for 3rd party Nyquist plug-ins

    3rd party plug-ins may provide their own translations for runtime
    messages (return strings and debug messages).
2020-01-13 12:46:34 -06:00
Leland Lucius
e6c1a89123 Update Nyquist runtime to r288
Totally forgot about these when upgrading Nyquist to r288.
2020-01-13 12:43:39 -06:00
SteveDaulton
69ee0a8963 Update label in Nyquist Plug-in Installer 2020-01-11 18:03:21 +00:00
SteveDaulton
98a21259e0 Update Nyquist Plug-in Installer
Now supports installing multiple plug-ins at the same time.
Also supports .lsp and help files (.html and .txt).
2020-01-11 16:04:47 +00:00
James Crook
1176b61953 Wording changes, per wiki:
https://wiki.audacityteam.org/wiki/Wording
2020-01-10 17:02:31 +00:00
Paul Licameli
d28967b7ad Bug2275 residual: don't get into state where you can't select audio...
... if you enter multi-view, then (try to) toggle both sub-views off.

Now instead, the second toggling will have no effect.
2020-01-09 15:15:11 -05:00
Paul Licameli
4018546a96 A comment 2020-01-09 15:15:11 -05:00
Paul Licameli
dd0e41048f Bug2282 residual: Partition sub-view heights 1:1 not 2:1...
... when doing steps to reproduce in that bug report
2020-01-09 15:15:10 -05:00
Paul Licameli
8fa01eceb4 Bugs 2282, 2275: crashes in multi-view...
... when you shrink a sub-view then toggle it, or toggle all views off then
exit multi-view

Fix it by making GetSubViews more robust to contents of mPlacements
2020-01-09 15:15:04 -05:00
Paul Licameli
d01c24d4d6 Revert "Bug 2282 - Multi-view: Array out of bounds exception (crash)"
This reverts commit e047c07a90e25eaee775922ee3b963f154c3ea76.
2020-01-09 15:12:00 -05:00
Paul Licameli
da2f5491ae Revert "Bug 2275 - Crash when unchecking Multi-view with neither of the views checked"
This reverts commit 57ff92b20c01ce6da39475858775619a532e106b.
2020-01-09 15:12:00 -05:00
Paul Licameli
d50dae4dd2 Bug2279 fix reimplemented...
... Don't hard-code the number of sub-views as two.

This modifies the fix at commit 596fd7c02f487aac65046c0ec46d680d69ee21e8
2020-01-09 14:01:12 -05:00
James Crook
7f8905be8e Bug 2278 - Changes in Spectrogram Settings dialog change Multi-view to a 100:0 Spectrogram
Fix needs to be reviewed by Paul in case the code I commented out actually IS needed.
2020-01-09 16:20:48 +00:00
James Crook
57ff92b20c Bug 2275 - Crash when unchecking Multi-view with neither of the views checked 2020-01-09 15:56:00 +00:00
James Crook
e047c07a90 Bug 2282 - Multi-view: Array out of bounds exception (crash) 2020-01-09 15:13:36 +00:00
James Crook
596fd7c02f Bug 2279 - Multi-view: turning it on does not cause a split Multi-view to be displayed 2020-01-09 14:04:31 +00:00
Paul Licameli
05e24ec760 Remove unused declaration 2020-01-08 19:53:02 -05:00
Paul Licameli
66fd95f3d6 Rewrite the path through NyquistEffect, in the case that...
... you use the prompt, and you enter a complete script with control comments
that are reinterpreted to put up a second dialog.

This simplifies Effect::Delegate() and avoids mutual recursion of ShowInterface
with DoEffect.
2020-01-08 16:48:37 -05:00
Paul Licameli
e8c8db8b33 Parent and dialog factory arguments of Effect::DoEffect are optional 2020-01-08 16:47:21 -05:00