跳转到主要内容

通过命令行使用MIDI配置Akai EWI USB MIDI风琴控制器

项目描述

ewi-usb-config-cli

在Linux、macOS或Windows上,通过命令行使用MIDI配置Akai EWI USB MIDI风琴控制器。

安装

通过pip

pip install ewi-usb-config-cli

通过pipx

pipx install ewi-usb-config-cli

用法

usage: ewi-usb-config [-h] [-d DEVICE_ID] [-a] [-f] [-r PATH] [--all-banks]
                      [-s PATH] [-p PORT] [-t TIMEOUT] [-v] [--version]
                      [setting ...]

Configure an Akai EWI USB MIDI wind controller via MIDI.

positional arguments:
  setting               Setting to send to EWI in the form name=value (can be
                        given more than once)

options:
  -h, --help            show this help message and exit
  -d DEVICE_ID, --device-id DEVICE_ID
                        SysEx Device ID (default: 0x7F)
  -a, --ascii           Set SysEx dump output format to ASCII hexadecimal
                        values
  -f, --force           Allow overwriting existing file when writing received
                        SysEx dump
  -r PATH, --receive PATH
                        Receive SysEx dump from EWI and save in file PATH (use
                        '-' to write to standard output)
  --all-banks           Request all settings banks (0-3) (the purpose of banks
                        1 and 3 is unclear)
  -s PATH, --send PATH  Send SysEx dump file PATH to EWI (use '-' to read from
                        standard input)
  -p PORT, --port PORT  Number or (part of) name of MIDI input/output port to
                        open (default: 'EWI-USB')
  -t TIMEOUT, --timeout TIMEOUT
                        SysEx dump reception timeout (default: 5)
  -v, --verbose         Output verbose messages of program operation to stderr
  --version             show program's version number and exit

Settings:
   breath-gain, bite-gain, bite-ac-gain, pb-gain, key-delay, unknown-1,
   midi-channel, fingering, transposition, velocity, breath-cc-1, breath-cc-2,
   unknown-2, bite-cc-1, bite-cc-2, pb-up-cc, pb-down-cc

示例

通过USB连接您的Akai EWI USB风琴控制器,并使用系统MIDI工具检查它是否显示为带有“EWI-USB”名称的MIDI输入和输出端口。

然后使用终端通过ewi-usb-config程序向EWI发送命令。

例如,将键延迟设置为10(出厂默认值为7)

ewi-usb-config key-delay=10

配置在咬住橡胶口哨时发送的MIDI控制更改类型,仅发送调制(CC #1),并禁用发送音高弯折。还将咬增益设置为20(出厂默认值为64)

ewi-usb-config bite-cc-1=0 bite-cc-2=1 bite-gain=20

配置响应于呼吸输入发送的MIDI消息类型为呼吸控制器(CC #2)和通道触后,这是出厂默认行为

ewi-usb-config breath-cc-1=2 breath-cc-2=127

使用-r|--receive选项从设备检索所有当前设置作为MIDI系统独占(SysEx)转储,并将其写入文件ewi-usb.syx

ewi-usb-config -r ewi-usb.syx

使用-s|--send选项将SysEx转储发送到设备,以恢复转储中保存的所有设置

ewi-usb-config -s ewi-usb.syx

检索设置转储,但通过添加-a|--ascii选项并使用-作为输出文件名来指示标准输出,将SysEx数据作为ASCII十六进制数输出

ewi-usb-config -ar -

这将产生如下输出

F0 47 7F 6D 00 00 06 40 40 40 40 07 7F F7
F0 47 7F 6D 02 00 0B 00 00 40 78 02 7F 00 7F 00 7F 7F F7

请注意,此格式不能加载回EWI USB。它主要是作为开发人员的调试工具。

设置值

除非在此处另有说明,否则所有设置都取自0到127的值。

  • 对于控制器设置,该范围内的一些值没有任何效果。请参阅下一节中的表格以获取详细信息。

  • fingering设置支持以下值

    指法系统
    0 标准EWI指法
    1 萨克斯管
    2 长笛
    3 双簧管
    4 EVI阀门1
    5 EVI阀门2(反向音板)
  • midi-channel设置取值范围为0(通道1)到15(通道16)。

  • transposition设置取值为52 - 76,64表示无移调,56 = -12半音,76 = +12半音。

  • 对于velocity设置,零(0)表示EWI将使用动态速度值进行音符开启消息,根据呼吸强度,而值1 - 127将使音符开启消息具有固定速度的设置值。

控制器

呼吸CC 1 呼吸CC 2 咬合CC 1 咬合CC 2 音板向上 音板向下
0 关闭 关闭 关闭 关闭 关闭 关闭
1-119 MIDI CC 1-119 MIDI CC 1-119 MIDI CC 1-119 MIDI CC 1-119 MIDI CC 1-119 MIDI CC 1-119
124 - - 音程弯音向上 - - -
125 - - 音程弯音向下 - - -
126 - - 上下音程弯音 - - -
127 触后 触后 上下触后 触后 音程弯音向上 音程弯音向下

触后始终是通道压力,即单通道触后音符压力,即多通道触后,不受支持。

开发

使用hatch工具

  • hatch run ewi-usb-config --version
  • hatch run ewi-usb-config --help
  • hatch status
  • hatch project metadata | jq -C | less-R
  • hatch version

注意: hatch run ewi-usb-config可以缩写为hatch run euc

部署

hatch version <new version number>
git add ewi_usb_config/version.py
git commit -m "Bump version to <new version number>"
git tag -a -m "Tagging new release <new version number>" vX.Y.Z
git push --tags master

... 让GitHub Actions release工作流程完成剩余工作。

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定要选择哪个,请了解更多关于安装软件包的信息。

源分布

ewi_usb_config_cli-0.1.0.tar.gz (10.0 kB 查看散列)

上传时间

构建分布

ewi_usb_config_cli-0.1.0-py3-none-any.whl (11.7 kB 查看散列)

上传时间 Python 3

支持者: