【发布时间】:2013-02-28 00:34:35
【问题描述】:
我正在使用基于 Python 的 API 编写与 Ableton Live 8 一起使用的控制器。在我的代码中,我使用 API 中提供的方法来观察属性值的变化,并在值发生变化时调用函数。我的目标是在注意到值更改时更改剪辑的颜色。
我的代码已经完成,它编译没有错误。来自 Ableton 的日志:
742234 ms. RemoteScriptError: RuntimeError
742234 ms. RemoteScriptError: :
742234 ms. RemoteScriptError: Changes cannot be triggered by notifications
742234 ms. RemoteScriptError:
这似乎是使用内置通知系统在通知期间更改现场设置的结果。触发实际更改AFTER,监听函数已经完成执行应该可以工作。这可以使用 Python 实现吗?
编辑澄清:
目前我们有
- 发现值变化,调用函数
- 函数尝试更改剪辑颜色(导致错误)
我们需要
- 监听器注意到值变化,调用函数
- 函数找到新的颜色值
- 函数执行结束
- 在侦听器范围之外调用另一个函数,并更改剪辑颜色
【问题讨论】:
-
我对 Abelton Live 一无所知,但我猜如果通知无法进行修改,会有一些 API 允许您排队等待稍后发生的事情(一次通知已结束)。我在任何地方都找不到 API 的文档,所以我不能再具体了。
-
使用 Max For Live API 中的函数可以做到这一点,但我正在尝试在此之外工作。我想我需要创建自己的监听器,并观察全局变量的变化。
标签: python-2.7 listener ableton-live