如何手动启动scsynth和sclang?

时间:2015-07-24 07:59:15

标签: supercollider

我正在使用SuperCollider,我想基本上打包一个已经写好的音乐脚本。这是因为想要从虚幻引擎4中调用它,因为它值得。

我知道SuperCollider以服务器/客户端心态运行,scsynth是服务器,sclang是客户端。我在Mac机器上,我试图手动启动sclang / scsynth。这就是我的预期。

$> scsynth -u 2000 # This is running in another Terminal tab...

$> sclang -u 2000 MyScript.scd # Shouldn't this hook it up?
# An interactive terminal starts here...Shouldn't my commands
# be going to the server I started up?

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

对端口号的一个小误解。 scsynth和sclang都可以监听UDP端口。在您的代码示例中,您已经开始在2000年进行scsynth侦听,然后在2000年开始侦听侦听。这是两个进程侦听2000,而不是一个进程发送和一个进程侦听。

如果您在端口2000上启动scsynth,那么与它通信的方式不是sclang -u 2000,而是通过在sclang脚本中设置端口。如果我假设您使用的是默认服务器,那么您可以检查语言认为它正在与之交谈的NetAddr

   "Default server is at this IP and port: %".format(Server.default.addr).postln;

如果要将其设置为端口2000:

  Server.default.addr.port = 2000;