Fixes slow load on first run of Nyquist effect.
Revert aud-import-effects to optional, and add
aud-do-command as fast alternative.
Slow load now only on first debug use of new commands
and cached until Nyquist temp folder is cleared.
To avoid unnecessary overhead, 'Lispy' scripting commands
only provide additional validation when debugging enabled.
AUD-PRINT-COMMAND added as handy reference for new commands.
Cache may be refreshed manually with (aud-refresh-debug-data-cache).
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).
When compiling, I got this error:
/lib-src/libnyquist/nyquist/nyqsrc/sndread.c: In function 'snd_make_read':
/lib-src/libnyquist/nyquist/nyqsrc/sndread.c:169:30: error: invalid operands to binary | (have 'int' and 'long int *')
169 | susp->sf_info.format |= format;
| ^~
I would like to suggest this fix for this error.
* [NYQUIST] Fix build on CYGWIN
Cygwin requires to include unistd.h for building without errors.
* [NYQUIST] Fix build on CYGWIN.
Cygwin requires to include endian.h to build without errors.
Author: Paul Licameli <paul.licameli@audacityteam.org>
Date: Mon Feb 26 11:18:22 2018 -0500
Use casts with function pointers to quiet compilation warnings in Nyquist
Author: Leland Lucius <github@homerow.net>
Date: Wed Oct 2 10:17:00 2019 -0500
Possible fix for bug #590
This change reduces the risk of LADSPA plugins referencing
Audacity symbols by using the RTLD_DEEPBIND flag when loading
the plugins.
It also addresses an issue specific to the "blop" plugins where
they load their own libraries (without RTLD_DEEPBIND).
A much better solution would be to change Audacity's default
symbol visibility to "hidden" which would expose ONLY symbols
specificially marked as visible.
Author: Paul Licameli <paul.licameli@audacityteam.org>
Date: Tue Nov 13 08:36:22 2018 -0500
lib-src/libnyquist: fix warning about always-false comparison...
... but this raises questions about the intention to catch negative values,
which if they ever happened, were just mis-cast to unsigned at call sites
Author: Paul Licameli <paul.licameli@audacityteam.org>
Date: Tue Feb 27 13:51:10 2018 -0500
Changes to make xlisp.h usable in C++ code...
1) #include guard
2) "C" linkage for all function declarations
3) some uses of const
and a1dc8305f0a369b97b6a9f44d4e97197f1983872
Author: Paul Licameli <paul.licameli@audacityteam.org>
Date: Thu Feb 22 01:02:15 2018 -0500
Fix mistake in commit a1dc830 and add a comment
Author: Paul Licameli <paul.licameli@audacityteam.org>
Date: Wed Feb 21 15:46:18 2018 -0500
A function to extend XLisp's table of function bindings dynamically
Author: James Crook <james.k.crook@gmail.com>
Date: Sun Jun 26 08:35:19 2016 +0100
Bug1223: (correction). Fix new potential crash in following pointer.
With recent changes to the Nyquist code for freeing blocks, the pointer 'next' could be uninitialised when 'list' points to the zero chain. So Audacity would follow a rogue pointer. We'd get away with it if the uninitialised value happened to be zero.
Author: Mojca Miklavec <mojca.miklavec.lists@gmail.com>
Date: Fri Feb 26 15:11:55 2016 +0100
comment out extra tokens at end of #endif directive to avoid compiler warnings [-Wextra-tokens]
------------------------------------------------------------------------
r331 | rbd | 2020-10-13 12:40:12 -0500 (Tue, 13 Oct 2020) | 2 lines
Also forgot to install NyquistWords.txt
------------------------------------------------------------------------
r330 | rbd | 2020-10-13 12:34:06 -0500 (Tue, 13 Oct 2020) | 2 lines
Forgot to move nyquistman.pdf from docsrc/s2h to release
------------------------------------------------------------------------
r329 | rbd | 2020-10-13 11:32:33 -0500 (Tue, 13 Oct 2020) | 2 lines
Updated some version numbers for 3.16.
------------------------------------------------------------------------
r328 | rbd | 2020-10-13 11:20:52 -0500 (Tue, 13 Oct 2020) | 2 lines
Fixed NyquistIDE antialiasing for plot text, fix format of message.
------------------------------------------------------------------------
r327 | rbd | 2020-10-12 21:01:53 -0500 (Mon, 12 Oct 2020) | 2 lines
Fixed a couple of format problems in manual. This version of Nyquist has been tested wtih macOS, Linux, 32&64-bit Windows.
------------------------------------------------------------------------
r326 | rbd | 2020-10-12 20:21:38 -0500 (Mon, 12 Oct 2020) | 1 line
Modified WIN32 32-bit XLisp to use 64-bit FIXNUMs. This allows XLisp and Nyquist to handle big sounds even on 32-bit machines. Probably at some cost, but inner loops are mostly float and int32, and the Nyquist release is 64-bit anyway. Maybe we'll have to run some benchmarks on Audacity, which is still 32-bit on Windows.
------------------------------------------------------------------------
r325 | rbd | 2020-10-12 13:16:57 -0500 (Mon, 12 Oct 2020) | 1 line
Win64 passes bigfiletest.lsp now. This version should work on all 64-bit systems now. These changes untested on Linux and macOS.
------------------------------------------------------------------------
r324 | rbd | 2020-10-11 21:31:53 -0500 (Sun, 11 Oct 2020) | 2 lines
I couldn't free enough space on my linux box, so I adjusted the bigfiletest to write 8-bit ulaw. It's still >4GB and >4G samples. Works on Linux.
------------------------------------------------------------------------
r323 | rbd | 2020-10-11 19:41:25 -0500 (Sun, 11 Oct 2020) | 2 lines
Missing file from last commit.
------------------------------------------------------------------------
r322 | rbd | 2020-10-11 19:36:08 -0500 (Sun, 11 Oct 2020) | 1 line
Found another case where WIN64 needs int64_t instead of long for sample count.
------------------------------------------------------------------------
r321 | rbd | 2020-10-11 19:33:25 -0500 (Sun, 11 Oct 2020) | 3 lines
Fixed s-save to handle optional and keyword parameters (which should never have been mixed in the first place). Documentation cleanup - should be final for this version.
------------------------------------------------------------------------
r320 | rbd | 2020-10-11 14:44:37 -0500 (Sun, 11 Oct 2020) | 2 lines
Fixes to handle IRCAM sound format and tests for big file io working on macOS.
------------------------------------------------------------------------
r319 | rbd | 2020-10-10 21:31:58 -0500 (Sat, 10 Oct 2020) | 2 lines
Changes for linux and to avoid compiler warnings on linux.
------------------------------------------------------------------------
r318 | rbd | 2020-10-10 20:50:23 -0500 (Sat, 10 Oct 2020) | 1 line
This is the test used for Win64 version.
------------------------------------------------------------------------
r317 | rbd | 2020-10-10 20:34:34 -0500 (Sat, 10 Oct 2020) | 1 line
This version works on Win64. Need to test changes on macOS and linux.
------------------------------------------------------------------------
r316 | rbd | 2020-10-10 19:59:15 -0500 (Sat, 10 Oct 2020) | 2 lines
PWL changes to avoid compiler warning.
------------------------------------------------------------------------
r315 | rbd | 2020-10-10 19:34:04 -0500 (Sat, 10 Oct 2020) | 2 lines
A few more changes for 64-bit sample counts on Win64
------------------------------------------------------------------------
r314 | rbd | 2020-10-10 13:19:42 -0500 (Sat, 10 Oct 2020) | 2 lines
Fixed int64_t declaration in gate.alg
------------------------------------------------------------------------
r313 | rbd | 2020-10-10 12:07:40 -0500 (Sat, 10 Oct 2020) | 2 lines
Fixes to gate for long sounds
------------------------------------------------------------------------
r312 | rbd | 2020-10-10 11:47:29 -0500 (Sat, 10 Oct 2020) | 2 lines
Fixed sound_save types for intgen
------------------------------------------------------------------------
r311 | rbd | 2020-10-10 11:09:01 -0500 (Sat, 10 Oct 2020) | 2 lines
Fixed a 64-bit sample count problem in siosc.alg
------------------------------------------------------------------------
r310 | rbd | 2020-10-10 11:03:12 -0500 (Sat, 10 Oct 2020) | 2 lines
Fixed sndmax to handle 64-bit sample counts.
------------------------------------------------------------------------
r309 | rbd | 2020-10-10 10:57:04 -0500 (Sat, 10 Oct 2020) | 2 lines
Forgot to re-translate all tran/*.alg files with fix for int64 cast to int32. This version compiles on macOS and ready for test on Win64.
------------------------------------------------------------------------
r308 | rbd | 2020-10-10 10:16:05 -0500 (Sat, 10 Oct 2020) | 2 lines
Everything seems to compile and run on macOS now. Moving changes to Windows for test.
------------------------------------------------------------------------
r307 | rbd | 2020-10-10 09:23:45 -0500 (Sat, 10 Oct 2020) | 1 line
Added casts to avoid compiler warnings and to review changes to support 64-bit sample counts on Windows. Still not complete, and waiting to regenerate and compile tran directory code after updates to translation code that will insert more casts.
------------------------------------------------------------------------
r306 | rbd | 2020-10-09 21:55:15 -0500 (Fri, 09 Oct 2020) | 2 lines
Rebuilt seqfnint.c from header files.
------------------------------------------------------------------------
r305 | rbd | 2020-10-09 21:53:33 -0500 (Fri, 09 Oct 2020) | 1 line
Changed some FIXNUMS to LONG to avoid compiler warnings in seqfnint.c
------------------------------------------------------------------------
r304 | rbd | 2020-10-09 21:44:03 -0500 (Fri, 09 Oct 2020) | 2 lines
I discovered forgotten regression-test.lsp and added test that requires 64-bit sample counts to pass. Fixed a few bugs revealed by running the type-checking regression tests.
------------------------------------------------------------------------
r303 | rbd | 2020-10-09 12:28:58 -0500 (Fri, 09 Oct 2020) | 2 lines
Changes for 64-bit sample counts broke mult-channel s-save. Fixed in the commit for macOS.
------------------------------------------------------------------------
r302 | rbd | 2020-10-09 10:03:39 -0500 (Fri, 09 Oct 2020) | 2 lines
Changed snd-play to return samples computed and used that to make a test for computing long sounds that would overflow 32-bit length counts.
------------------------------------------------------------------------
r301 | rbd | 2020-10-09 09:11:26 -0500 (Fri, 09 Oct 2020) | 2 lines
corrected mistake in delaycv.alg and re-translated
------------------------------------------------------------------------
r300 | rbd | 2020-10-09 09:09:06 -0500 (Fri, 09 Oct 2020) | 2 lines
Fix to delaycv.alg -- "s" changed to "input" to avoid matching "s" in "sample_type".
------------------------------------------------------------------------
r299 | rbd | 2020-10-09 09:03:33 -0500 (Fri, 09 Oct 2020) | 4 lines
To avoid compiler warnings, XLisp interfaces to C int and long are now
specified as LONG rather than FIXNUM, and the stubs that call the C
functions cast FIXNUMs from XLisp into longs before calling C functions.
------------------------------------------------------------------------
r298 | rbd | 2020-10-08 22:20:26 -0500 (Thu, 08 Oct 2020) | 2 lines
This commit has many more fixes to handle long (64-bit) sounds, including a lot of fixes for warnings by Visual Studio assigning int64_t to long (works on macOS, doesn't work on VS). This was compiled and tested on macOS, and even computed a 27.1-hour sound using OSC, LP, SUM and MULT (haven't tested I/O yet).
------------------------------------------------------------------------
r297 | rbd | 2020-10-07 13:04:02 -0500 (Wed, 07 Oct 2020) | 2 lines
This is a major cleanup. It started with the goal of changing long to int64_t for sample counts so that on 64-bit windows, where long is only 32-bits, the sample counts would nevertheless be 64-bit allowing long sounds, which was a limitation for long recordings in Audacity. Since I was using compiler warnings to track possible loss-of-precision conversions from 64-bit sample counts, and there were *many* warnings, I started cleaning up *all* the warnings and ended up with a very large set of changes, including "modernizing" C declarations that date back to XLisp and CMU MIDI Toolkit code and were never changed. This version runs all the examples.sal code on macOS, but will surely have problems on Windows and Linux given the number of changes.
------------------------------------------------------------------------
r296 | rbd | 2020-10-06 13:34:20 -0500 (Tue, 06 Oct 2020) | 2 lines
More changes from long to int64_t for sample counts.
------------------------------------------------------------------------
r295 | rbd | 2020-10-06 11:53:49 -0500 (Tue, 06 Oct 2020) | 2 lines
More work on using 64-bit sample counts. Changed MAX_STOP from 32-bit to 64-bit limit.
------------------------------------------------------------------------
r294 | rbd | 2020-10-06 11:48:05 -0500 (Tue, 06 Oct 2020) | 2 lines
Made some changes so that sample counts are int64_t (for windows) instead of long to support sample counts above 31 bits.
------------------------------------------------------------------------
r293 | rbd | 2020-10-04 21:30:55 -0500 (Sun, 04 Oct 2020) | 2 lines
Fixed a few minor things for Linux and tested on Linux.
------------------------------------------------------------------------
r292 | rbd | 2020-10-04 21:00:28 -0500 (Sun, 04 Oct 2020) | 2 lines
Update extensions: all are minor changes.
------------------------------------------------------------------------
r291 | rbd | 2020-09-24 13:59:31 -0500 (Thu, 24 Sep 2020) | 2 lines
New implementation of seq and seqrep, added get-real-time, documented get-real-time, fixed examples.sal and examples.lsp which are now in lib rather than extensions (so they are now back in the basic installation), other cleanup.
------------------------------------------------------------------------
r290 | rbd | 2020-08-16 16:24:52 -0500 (Sun, 16 Aug 2020) | 2 lines
Fixed bug in snd-gate, revised GATE and NOISE-GATE to handle multi-channel sound. RMS now handles multi-channel input. S-AVG added to take multichannel input (but not used, because RMS could not be written without making SND-SRATE convert multichannel sound to vector of floats. That seems to be going toward a fully vectorized model. Not going there for now.
------------------------------------------------------------------------
r289 | rbd | 2020-07-09 16:27:45 -0500 (Thu, 09 Jul 2020) | 2 lines
Added GET-REAL-TIME function to XLISP. May not work yet on Windows. Various fixes for compiler warnings. I noticed FLAC doesn't work (I guess it never did) and I cannot figure out how this even links because flac_min seems to be undefined. Something to look at later.
I've added the comment 'REVIEW:' where I have some concern that
the database and our copy of it could get out of step, or simply that
we fail to report a problem to the user.
I'd like these reviewed and turned into comments that make it
easier to check for correctness, for example saying where an
error is reported, or why it is OK to do no further recovery action.