首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在csound中,midipolyaftertouch是否被破坏了?

在csound中,midipolyaftertouch是否被破坏了?
EN

Stack Overflow用户
提问于 2020-02-15 15:07:01
回答 1查看 40关注 0票数 0

我没有太多的运气与midipolyaftertouch操作码。基本上

代码语言:javascript
复制
kPea init 0.1
midipolyaftertouch kPea, 1, 0.1, 0.9
printk2 kPea

实际上不会对和弦回音消息作出响应。另一方面,手动编码的粗略等效项

代码语言:javascript
复制
kPea init 0.1
kstatus,kchan,kdata1,kdata2 midiin
if (kstatus==160 && kchan==1) then
    kPea = kdata2 * 0.007
    printk2 kPea
endif     

工作正常。那么这是midipolyaftertouch中已知的bug吗?除了手册中的用法之外,我找不到任何midipolyaftertouch的用法示例,所以我猜几乎没有人使用它……顺便说一句,aftouch获取的是通道,而不是每个音符的触摸后(压力),即aftouch查询kstatus == 208 (确实可以工作,但当然不是每个音符)。有关区别,请参阅this

我在Windows上使用的是Csound 6.13测试版,它是在Windows系统上安装的2.3.0版(因为这是该版本的卷心菜附带的版本)。

EN

回答 1

Stack Overflow用户

发布于 2020-02-15 16:48:59

在文档后面还有另一个实际有效的操作码,即polyaft

代码语言:javascript
复制
kPea init 0.1
inote   notnum          ; note number
kPea    polyaft inote, 0.1, 0.9
printk2 kPea

看一下midipolyaftertouch的C源代码,它实际上是以与polyaft完全相同的方式进行索引的。基于此,我尝试了:

代码语言:javascript
复制
kPea init 0.1
inote   notnum          ; note number
midipolyaftertouch kPea, inote, 0.1, 0.9
printk2 kPea

这实际上也是有效的。

在MIDI API行话中,"MIDI控制器编号“(通常是) means键/音符编号...不像在DAWs的世界中,one使用例如“多个MIDI控制器”来表示几个键盘,而不是同一键盘的几个键……此外,Csound有多个控制器的概念,在后者/DAW意义上,由-M启动开关选择,尽管它calls他们的"MIDI设备“。

文档中的midipolyaftertouch代码示例不可能工作,除非您只是尝试将D0作为键/注释;在这里插入关于坏掉的时钟的笑话。有趣的是,文档是由源代码作者为该操作码编写的,所以这不是其他人误解代码的情况……

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60236638

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档