利用Novation Launchpad MK2上的24位RGB LED轻松制作MIDI消息

launchpad-rgb的Python项目详细描述


启动板rgb

Novation的Launchpad MK2有80个24位RGB LED,但普通的MIDI消息协议只允许127种颜色。
如何获得63*63*63颜色的最大功率?当然是系统独家消息!

MIDI系统独占消息是特定设备类型的独占消息。这样做的目的是让设备制造商能够在保持带内状态的同时实现midi规范之外的特性。

太棒了!现在怎么办?
系统独占消息比普通消息更复杂。它们需要一个包含设备id(指定消息的目的)的头,以及两个子id(指定要调用的功能)。

此库是创建系统独占消息的一种方便方式,该消息可以访问启动板mk2上可用的完整24位rgb颜色。

消息对象存储所有将要更改的注释及其新颜色。消息的实例方法修改该数据并返回消息,以便您可以链接调用。要获取实际的sysex数据(不包括0xf0以开始,0xf7以结束消息),请像调用函数一样调用该对象。返回的数据可以放入任何midi消息库,如mido。

示例:

msg = Message().row(0, 1, 0.5, 0.25)
msg.note(1, 1, 1, 0.5, 0.25).note(8, 1, 1, 0.5, 0.25)
data = msg()
print(data) -> [0, 32, 41, 2, 24, 11, 11, 63, 31.5, 15.75, 12, 63, 31.5, 15.75,
               13, 63, 31.5, 15.75, 14, 63, 31.5, 15.75, 15, 63, 31.5, 15.75,
               16, 63, 31.5, 15.75, 17, 63, 31.5, 15.75, 18, 63, 31.5, 15.75,
               22, 63, 31.5, 15.75, 29, 63, 31.5, 15.75]

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java是否存在这样一种场景:Java7的Hashmap实现优于Java8的实现   java如何打印这些完整的数组?   java BuildException:未能执行aapt   java如何使用类。未知类型的集合返回的cast()   java准备语句返回错误的值   webview 安卓中的java显示身份验证对话框   java如何重命名列名JPA Hibernate   java查询从特定用户和特定时间段的Oracle表(通过比较原始表和备份表)中选择修改的行   java Youtube视频仅在三星S6设备上加载时自动暂停   未调用java RecyclerView getItemViewType   使用JSch setCommand执行带有源选项的java Shell ping命令时失败   java Hibernate:无法删除|删除分离的实例   Java Spring@MappedSuperclass字段作为子类中的@Id字段   java Android:确定单击了哪个按钮,因为该按钮未在xml中定义   如何计算java阵列内存使用率   使用Java查找按字母顺序排列的第一个字符串   javascript注销功能刷新页面,但页面仍已登录   当接口作为参数提供时,java依赖项注入不起作用   java中带原语的字符串扭曲