欢迎使用由@实习人类,@萤火冷光(@通义灵码插件,主要是它) 共同开发的Phone Sensor Based MIDI Controller(简称Phone MIDI Controller)
这个方案能够将你的手机变成一个MIDI CC控制器!它通过检测手机倾斜程度来控制CC11,通过检测手机晃动来控制CC1,同时我们还有一个通过检测距离传感器来控制开闭的可选择打开的MIDI CC输出(默认CC3)。
可以自行更改cc1和cc11以及可选项cc_opt的输出映射到的MIDI CC控制器序号
- 倾斜检测 → 控制 MIDI CC11
- 晃动检测 → 控制 MIDI CC1
- 距离传感器 → 可选控制 MIDI CC3
- 支持局域网通信
- 支持虚拟 MIDI 端口输出
- 可配置传感器灵敏度和行为
- 手机上安装 传感器数据传输.apk
- 使用loopmidi 添加midi端口
- 手机与电脑连接同一局域网
- 电脑端运行midi_controller.exe
- 选择刚刚用loopmidi创建的端口
- 打开手机软件,点击发现设备(选择屏幕上显示的ip地址,输入端口号 [默认8080] ),点击开始发送
- 注意音源内要选择使用创建的虚拟端口
在 set.ini 内可以更改部分配置,配置值对应作用已注释
- aef: 平滑指数,用于数据平滑处理 (取值范围: 0.0 - 1.0,默认值: 0.1)
- cc1_max: CC1最大值,用于限制CC1数据范围 (默认值: 30)
- send_frequency: 发送频率(Hz),控制MIDI消息发送频率 (默认值: 60)
- listen_port: 监听端口号,用于接收安卓设备发送的数据 (默认值: 8080)
- 开关状态: MIDI CC控制器开关状态 (可选值: true(开启), false(关闭))
Phone MIDI Controller/
├── app/ # Android应用源代码
├── artwork/ # 电脑端程序图标(png)
├── midi_controller_v0_6_1.py # Python MIDI控制器主程序
├── midi_controller_v0_6_1.exe # 编译后的可执行文件
├── set.ini # 配置文件
├── 传感器数据传输.apk # Android应用安装包
└── README.md # 项目说明文件
- Android Kotlin: 用于开发手机端传感器数据采集应用
- Python: 用于开发电脑端MIDI信号处理程序
- MIDI协议: 用于音乐设备数字接口通信
- Socket通信: 用于手机与电脑间的数据传输