Contents
- download
- SuperCollider
- Python
- wxPython
- Python 2.3.5 Setup
- wxPython setup
- SC3のinstall
- SC3よりPySCLang.pydをコピー
- DLLのinstall
- SC3の起動
- 使ってみる
- 音を出す
- ひっかかったポイント
SuperCollider Win32
■download
SuperCollider
Python
すでに、Python 2.4.1が出ているが、下記wxPythonの関係から、あえて2.3.5にした。
wxPython
■Python 2.3.5 Setup
- Python-2.3.5.exeを実行
- C:\usr\Python23 にしてからNext →Next →Next →Next →Next →Finish
■wxPython setup
- wxPythonWIN32-2.5.2.8u-Py23.exeを実行
- →Next →Yes →Next →Next →Next →Finish
■SC3のinstall
- SC3-WIN32-2004-10-20-21h30.zipを解凍
- C:\usr\SC3\readme_win32.txt となるように配置。
■SC3よりPySCLang.pydをコピー
% cd c:/usr/SC3 % cp PySCLang.pyd c:/usr/Python23/Lib/site-packages
■DLLのinstall
必要なDLLをinstallする。
- http://www.dll-files.com/
- http://www.dll-files.com/dllindex/dll-files.shtml?mfc71 mfc71.dll
- http://www.dll-files.com/dllindex/pop.php?mfc71
mfc71.dllをc:\WINDOWS\system32に移動する。
■SC3の起動
- c:\usr\SC3\SCSpawn.exe を実行
- ここで「MFC71.DLLが見つからなかった」などと言われたら、DLLをinstallする。
- 「SuperCollider 3 Launch Panel」が表示される。
- 音のポートなどを指定するのが重要。とりあえずdefaultにする。
- Launch SC3 and CLoseを押す
- 新しくコマンドプロンプトが出てきて、「SuperCollider 3 server ready..」と表示されるはず。
c:\WINDOWS\system32\cmd.exe - scsynth.exe -u 5710 -c 4096 -a 128 -i 2- -o 2 z 64 -Z 0 -S 0 -b 1
みたいなWinodow titleである。
- UDPを使ってるので、「ブロックを解除する」を押す
■使ってみる
- C:\usr\SC3\Psycollider.py をダブルクリックするのかな?
- なんかWindowが開いたぞ。
- FileメニューからNew Code Windowを選択。
s.initTree;
と入力してから、Ctrl+Enterで実行。
- なんにも反応が無いけれど、実行されているのだ。
- SC Logという別Windowsに、ログが表示される。
- 「a Server」などと表示されているはず。
s.boot;
としてCtrl+Enter
server already running a Server
となる。
■音を出す
- c:\usr\SC3\Help_windows\Tutorial.rtf を参考にして音を出してみよう。
(
SynthDef("sine", { arg freq=800;
var osc;
osc = SinOsc.ar(freq, 0, 0.1); // 800 Hz sine oscillator
Out.ar(0, osc); // send output to audio bus zero.
}).writeDefFile; // write the def to disk in the default directory synthdefs/
)
これを入力してから、その部分を選択し、それからCtrl+Enterする。
- 選択してからCtrl+Enterするのがポイント。Emacsのeval-last-sexpとは違って、単にカーソルの手前を見てくれるわけではない。Evalしてほしいところを選択してからCtrl+Enterする必要がある。
a SynthDef
と、SC Logの方に表示される。 これで C:\usr\SC3\synthdefs\sine.scsyndef というファイルが生成される。
s.sendSynthDef("sine");a Server
s.sendMsg("/s_new", "sine", x = s.nextNodeID, 1, 1);a Server
音でてる! OK!
s.sendMsg("/n_free", x);a Server
音が止まります。
s.quit;
/quit sent a Server
サーバが止まります。
ようやく使えるようになった。
■ひっかかったポイント
- Python 2.4.? ではwxPythonがはいらない。
- コードを入力するWindowには何の反応もない。SC Logという別Windowにログが出る。
- Evalする部分を、選択してからCtrl+Enterする
Last modified: 2006-09-05