1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-12-11 15:16:27 +01:00

Update Nyquist to v3.09.

This commit is contained in:
Leland Lucius
2015-04-07 22:10:17 -05:00
parent f88b27e6d8
commit 9fb0ce5b82
358 changed files with 26327 additions and 7043 deletions

View File

@@ -0,0 +1,60 @@
sys/unix/osx/README.txt -- notes on OS X (Apple) version of Nyquist
Roger B. Dannenberg
23 April 2011
HOW TO REBUILD STUBS TO CALL NYQUIST PRIMITIVES FROM XLISP
The file nyqsrc/sndfnint.c implements XLISP functions that correspond
to Nyquist primitives such as SND-OSC. This file and a number of
associated files (such as sndfnintdefs.h) are built automatically by
the intgen program. This process is automated in the Linux Makefile,
but here's how to do it under OS X.
0. COMPILE NYQUIST WITH XCODE
Before changing the sources, make sure you can compile your existing
installation of Nyquist using XCODE.
1. COMPILE INTGEN WITH XCODE
From XCODE, choose Active Configuration: Deployment, Active Target:
intgen, Active Executable: intgen.
Build (Command-B).
Result is in nyquist/macosxproject/build/Deployment/intgen. You might
want to make an alias to this or move it to your ~/bin directory or
change your PATH so you can execute this from the command line without
typing the full path. In the following, I assume simply typing
"intgen" will run the application.
After setting up intgen to run, the command "which intgen" should
indicate the path to intgen that the shell will use.
2. WORK IN A TERMINAL WINDOW AND CD TO THE MAIN NYQUIST DIRECTORY
Open a Terminal application.
cd nyquist [or navigate using cd to wherever your nyquist sources are]
3. GENERATE THE INTERFACE CODE
Note: if you are adding a new primitive, you will want to modify
sys/unix/osx/sndfnint.cmdline by inserting the name of the header (.h)
file for the new primitive. (For a nyquist release, the name should
also go into a list in nyquist/misc/transfiles.lsp and the Makefiles
should be rebuilt, but we'll stick to the Apple-specific tasks here.)
intgen @sys/unix/osx/sndfnint.cmdline
The files sndfnint.c, sndfnint.lsp, sndfnintdefs.h, and sndfnintptrs.h
will be generated and placed in the current (nyquist) directory.
4. INSTALL THE FILES
You might want to make a safe backup copy of the original
nyqsrc/sndfnint.c, nyqsrc/sndfnint.lsp, nyqsrc/sndfnintdefs.h, and
nyqsrc/sndfnintptrs.h for reference.
Move the new files to nyqsrc:
mv sndfnint.c sndfnint.lsp sndfnintdefs.h sndfnintptrs.h nyqsrc
5. RECOMPILE NYQUIST WITH XCODE

View File

@@ -0,0 +1,5 @@
#csh
# INSTRUCTIONS: for developers, in the top nyquist directory:
# ln -l sys/unix/osx/run
# ln -s macosxproject/build/ny
java -cp jnyqide/NyquistIDE.jar jnyqide.Main

View File

@@ -0,0 +1,105 @@
sndfnint
nyqsrc/sndfmt.h
nylsf/sndfile.h
nyqsrc/sound.h
nyqsrc/add.h
nyqsrc/avg.h
nyqsrc/compose.h
nyqsrc/convolve.h
nyqsrc/downsample.h
nyqsrc/fft.h
nyqsrc/inverse.h
nyqsrc/multiseq.h
nyqsrc/resamp.h
nyqsrc/resampv.h
nyqsrc/samples.h
nyqsrc/sndmax.h
nyqsrc/sndread.h
nyqsrc/sndseq.h
nyqsrc/sndsliders.h
nyqsrc/sndwrite.h
nyqsrc/yin.h
nyqsrc/nyq-osc-server.h
nyqsrc/trigger.h
nyqsrc/lpanal.h
nyqsrc/phasevocoder.h
nyqsrc/pvshell.h
tran/abs.h
tran/allpoles.h
tran/alpass.h
tran/alpasscv.h
tran/alpassvv.h
tran/amosc.h
tran/areson.h
tran/aresonvc.h
tran/aresoncv.h
tran/aresonvv.h
tran/atone.h
tran/atonev.h
tran/biquadfilt.h
tran/buzz.h
tran/chase.h
tran/clip.h
tran/congen.h
tran/const.h
tran/coterm.h
tran/delaycc.h
tran/delaycv.h
tran/eqbandvvv.h
tran/exp.h
tran/follow.h
tran/fmosc.h
tran/fromobject.h
tran/fromarraystream.h
tran/gate.h
tran/ifft.h
tran/instrclar.h
tran/instrclarall.h
tran/instrclarfreq.h
tran/instrsax.h
tran/instrsaxall.h
tran/instrsaxfreq.h
tran/integrate.h
tran/log.h
tran/lpreson.h
tran/maxv.h
tran/offset.h
tran/oneshot.h
tran/osc.h
tran/partial.h
tran/pluck.h
tran/prod.h
tran/pwl.h
tran/quantize.h
tran/recip.h
tran/reson.h
tran/resonvc.h
tran/resoncv.h
tran/resonvv.h
tran/sampler.h
tran/scale.h
tran/shape.h
tran/sine.h
tran/siosc.h
tran/slope.h
tran/sqrt.h
tran/tapf.h
tran/tapv.h
tran/tone.h
tran/tonev.h
tran/upsample.h
tran/white.h
tran/stkrev.h
tran/stkpitshift.h
tran/stkchorus.h
tran/instrbow.h
tran/instrbowedfreq.h
tran/instrbanded.h
tran/instrmandolin.h
tran/instrsitar.h
tran/instrmodalbar.h
tran/instrflute.h
tran/instrflutefreq.h
tran/instrfluteall.h
tran/fmfb.h
tran/fmfbv.h

View File

@@ -0,0 +1,69 @@
;; system.lsp -- system-dependent lisp code
; local definition for play
; this one is for Mac OS-X:
(if (not (boundp '*default-sf-format*))
(setf *default-sf-format* snd-head-wave))
(if (not (boundp '*default-sound-file*))
(compute-default-sound-file))
(if (not (boundp '*default-sf-dir*))
(setf *default-sf-dir* "/tmp"))
(format t "*default-sf-dir* (default sound file directory) is ~A~%"
*default-sf-dir*)
(if (not (boundp '*default-sf-mode*))
(setf *default-sf-mode* snd-mode-pcm))
(if (not (boundp '*default-sf-bits*))
(setf *default-sf-bits* 16))
(if (not (boundp '*default-plot-file*))
(setf *default-plot-file* (strcat (get-user) "-points.dat")))
; FULL-NAME-P -- test if file name is a full path or relative path
;
; (otherwise the *default-sf-dir* will be prepended
;
(defun full-name-p (filename)
(or (eq (char filename 0) #\/)
(eq (char filename 0) #\.)))
; RELATIVE-PATH-P -- test if filename or path is a relative path
;
(defun relative-path-p (filename)
(not (eq (char filename 0) #\/)))
(setf *file-separator* #\/)
;; PLAY-FILE - play a sound file
;;
(defun play-file (name)
(s-save (s-read name) NY:ALL "" :play t))
;; R - replay last file written with PLAY
(defun r () (play-file *default-sound-file*))
;;;; use this old version if you want to use sndplay to play
;;;; the result file rather than play the samples as they
;;;; are computed. This version does not autonormalize.
;; PLAY - write value of an expression to file and play it
;;
;(defmacro play (expr)
; `(prog (specs)
; (setf specs (s-save (force-srate *sound-srate* ,expr)
; 1000000000 *default-sound-file*))
; (r)))
;;;;
; local definition for play
(defmacro play (expr)
`(s-save-autonorm ,expr NY:ALL *default-sound-file* :play *soundenable*))
;; use standard s-plot