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

时间:2017-06-13 18:14:14

标签: clojure overtone

我是Clojure初学者,我正在尝试使用Overtone。但是我无法启动Overtone并将其与外部SuperCollider服务器连接。

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

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

user=>(use 'overtone.core)
nil

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

要启动外部服务器,我尝试了以下命令,但是我得到了未解决的符号错误。

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上运行的现有服务器,但是我得到了类似的未解决的符号错误,

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)

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

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

1 个答案:

答案 0 :(得分:1)

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