音価

音価とは音の長さ。既に以前の日記で幾つか述べていたのですが、風の便りで間違えを訂正することになりました。音の長さをあらわす組み込み定数qdを4分音符と書きましたが以下のように訂正します。

 sd 付点16分音符(休符)

 id 付点8分音符(休符)

 qd 付点4分音符(休符)

 hd 付点2分音符(休符)

 wd 付点全音符(休符)

付点は1.5倍です。付点なしをどのようにあらわすのかという事になる。

 s 16分音符(休符) 

 i 8分音符(休符)

 q 4分音符(休符)

 h 2分音符(休符)

 w 全音符(休符)

ただし、組み込み定数sはどうやらうまくないようです。実は初期設定ファイルを書き変えることで解決できるのですが、それはまた後の話で。

初期設定ファイル

Audacityフォルダ(ディレクトリ)にnyquistフォルダがあります。ここには拡張子lspのファイルがたくさんあります。1番最初に読み込まれるファイルはinit.lspになります。ここで読み込まれていないファイルは、このフォルダに置いてあったとしても'すぐには'使えません。init.lspを開いてみる。

init.lsp(最初の7行目まで)

; init.lsp -- default Nyquist startup file
(load "nyinit.lsp")

; add your customizations here:
;    e.g. (setf *default-sf-dir* "...")

; (load "test.lsp")

コメントアウトされてない部分は2行目の
(load "nyinit.lsp")
ここでnyinit.lspファイルを読み込んでいます。つまり独自に関数などを書いて再利用することも出来ます。例えば7行目にコメントアウトされたtest.lspファイルがありますが、これは読み込まれていません。それではtest.lspを開いてみる。

test.lsp(長いので最初の5行目まで)

(defun ss () (osc c5))

(defun tt () (stretch 2 (snd-tapv (ss) 1.1 (scale *d* (lfo 10)) 2.2)))
(setf *d* .01)

先ほどのinit.lspで7行目のコメントアウトを解除すればtest.lspに書かれている関数を呼び出すことが出来ます。このように

(ss)

サイン波が聞こえますね。
また別の方法ですが、直接Nyquistプロンプトに

(load "test.lsp")
(ss)

とすることもできます。この場合はinit.lspのコメントアウトを解除する必要がありませんよ。つまりNyquistプロンプトで直接読み込む。