SuperCollider Win32

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する。

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