无法从 Overtone 连接到外部 SuperCollider 音频服务器

Can not connect to an external SuperCollider audio server from Overtone

我是Clojure beginner, and I am trying to play with Overtone. But I am having trouble starting Overtone and connecting it with an external SuperCollider服务器。

我正在遵循 Overtone 文档中的教程:Connecting scsynth。由于我使用的是 Windows 10 64 位,因此我无法使用 Internal SuperCollider 服务器。所以我安装了 SuperCollider 并确保音频服务器 运行ning 在 127.0.0.1:57110.

现在,当我尝试在 lein relp 上加载 Overtone 环境时,我在 return 中得到了 nil。

user=>(use 'overtone.core)
nil

所以如果成功加载泛音环境,现在我们应该连接到外部 SuperCollider 服务器。我们可以通过两种方式做到这一点。从 Overtone 中启动外部服务器,或连接到现有的 运行ning 服务器。

为了启动外部服务器,我尝试了以下命令,但出现未解析的符号错误。

user=> (boot-external-server)

CompilerException java.lang.RuntimeException: Unable to resolve symbol: boot-external-server in this context, compiling:(C:\Users\<user>\AppData\Local\Temp\form-init401744747046363104.clj:1:1)

所以我尝试在端口 57110 上连接到现有服务器 运行ning 但我收到类似的未解析符号错误,

user=> (connect-external-server 57110)

CompilerException java.lang.RuntimeException: Unable to resolve symbol: connect-external-server in this context, compiling:(C:\Users\<user>\AppData\Local\Temp\form-init401744747046363104.clj:1:1)

user=> (connect-external-server)

CompilerException java.lang.RuntimeException: Unable to resolve symbol: connect-external-server in this context, compiling:(C:\Users\<user>\AppData\Local\Temp\form-init401744747046363104.clj:1:1)

当我 运行 (use 'overtone.core) 时,我应该得到 nil 吗?我的假设是,所有这些符号都未解析,因为尚未加载 Overtone 命名空间。

如何解决这个问题以在我的系统上启动 Overtone?

我使用 (ns user (:require [overtone.core :refer :all])) 而不是 (use 'overtone.core),这解决了问题。现在我可以调用 (boot-external-server)(connect-external-server) 而不会出现未解析的符号错误。