【BLE MIDI】开发 BLE MIDI 硬件电子乐器设备需要遵循的相关规范 ( 资料收集 )(一)

简介: 【BLE MIDI】开发 BLE MIDI 硬件电子乐器设备需要遵循的相关规范 ( 资料收集 )(一)

文章目录

前言

一、Android 相关的 BLE MIDI 资料

二、iOS 相关的 BLE MIDI 资料

三、支持 BLE-MIDI 模块 BT401

四、单片机制作电子乐器

五、博客资料

前言

如何开发一个 标准的 BLE MIDI 设备 , 该设备可以被 Android / iOS / Mac / Windows / Linux 等操作系统平台识别为标准 MIDI 设备 , 并从该设备中接收 MIDI 信号 ;


本博客主要是收集一下网上的相关资料 ;


蓝牙 MIDI 是苹果的专利 , 基本上 iOS , Mac 系统上 , 对 BLE MIDI 支持的很好 , 但是对于 Android , 支持的不是太好 , Android 在 6.0 6.06.0 以后的系统中逐渐加入了对 MIDI 的支持 ;


市面上的 BLE MIDI 对 iOS 兼容的很好 , 但是对 Android 兼容的不太完善 ;


标准的 BLE-MIDI 硬件设备开发成的乐器 , 要兼容以下平台的如下软件 :


Windows : Cubase


Mac : Logic Pro


iOS : 库乐队 ( Garage Band ) , 泡泡钢琴 , 弹琴吧 , 完美钢琴 , 木色都钢琴 , MIDI Wrench , PA Player , 海伦智能陪练 , 海伦智能钢琴 , Piano Diary , 钢琴之旅 , 罗兰钢琴伴侣 , Music School , find piano , SimplyPiano , Dust Buster 2 , PianoMaestro , flowkey 等软件 ;

image.png


Android : 泡泡钢琴 , 完美钢琴






一、Android 相关的 BLE MIDI 资料


主要参考 Android 相关的开发文档 和 AOSP 相关文档 ;



参考文档 :


MIDI 概览 : https://source.android.google.cn/devices/audio/midi#ble

MIDI 架构 : https://source.android.google.cn/devices/audio/midi_arch

MIDI 测试程序 : https://source.android.google.cn/devices/audio/midi_test

原生 MIDI API : https://developer.android.google.cn/ndk/guides/audio/midi?hl=zh_cn

AMidi.h 中的 Midi 类 API : https://developer.android.google.cn/ndk/reference/group/midi?hl=en

MidiDevice API : https://developer.android.google.cn/reference/android/media/midi/MidiDevice?hl=en

MIDI 文档 : https://developer.android.google.cn/reference/android/media/midi/package-summary.html





二、iOS 相关的 BLE MIDI 资料


在网上找到一个 苹果的蓝牙低功耗 MIDI 规范 , " Apple Bluetooth Low Energy MIDI Specification.pdf " , 该文档 , 以及翻译版本放在了博客的附件中 ;


最主要的设置 , 就是 服务 , 特性 , 以及特性的各种属性 , 读 , 写 , 通知 ;


image.png


BLE 服务设置为 : 03B80E5A-EDE8-4B33-A751-6CE34EC4C700


BLE 特性设置为 : 7772E5DB-3868-4112-A1A9-F2669D106BF3


该特性的属性设置为 : Read, Write, Notify



自行下载本博客资源 , 查看该规范 ;



image.pngimage.png

目录
相关文章
|
2天前
|
Android开发
Android MediaTek 平台增加UART接口的红外模块支持,支持NEC红外遥控
Android MediaTek 平台增加UART接口的红外模块支持,支持NEC红外遥控
8 0
|
8月前
|
API 开发者
HarmonyOS学习路之开发篇—设备管理(控制类小器件)
控制类小器件指的是设备上的LED灯和振动器。其中,LED灯主要用作指示(如充电状态)、闪烁功能(如三色灯)等;振动器主要用于闹钟、开关机振动、来电振动等场景。
|
10月前
|
IDE 开发工具
LabVIEW LINX Toolkit控制Arduino设备(拓展篇—1)
在LabVIEW和单片机(Arduino)系列专栏中使用LabVIEW Interface for Arduino接口工具包实现和Arduino联控。本篇博文将拓展讲解另一款新的接口工具包实现对Arduino的控制,它就是LabVIEW LINX。 LabVIEW LINX Toolkit可支持驱动Raspberry Pi、BeagleBoard和Arduino开发板,包含数字、模拟、SPI、I2C、UART、PWM等驱动接口,非常适合创客开发实践。
|
开发工具
RK3399平台开发系列讲解(内核驱动外设篇)6.19、摄像头OV4689模组驱动代码分析
RK3399平台开发系列讲解(内核驱动外设篇)6.19、摄像头OV4689模组驱动代码分析
134 0
 RK3399平台开发系列讲解(内核驱动外设篇)6.19、摄像头OV4689模组驱动代码分析
RK3399平台开发系列讲解(高速设备驱动篇)6.61、USB如何模拟HID设备
RK3399平台开发系列讲解(高速设备驱动篇)6.61、USB如何模拟HID设备
119 0
RK3399平台开发系列讲解(高速设备驱动篇)6.61、USB如何模拟HID设备
红外热成像仪测温模块 API 移植-I2C 和关键接口函数
API 说明文件里面有官方的移植指导,但我觉得可以把重点放在与 MLX90640 具体操作有关的几个函数上,而与标准 I2C 相关的函数和文件结构还是按照自己习惯的套路实现。这样更符合我们开发人员的可控性的习惯。
红外热成像仪测温模块 API 移植-I2C 和关键接口函数
|
Ubuntu 物联网 Android开发
QT应用编程: 编写低功耗BLE蓝牙调试助手(Android系统APP)
QT应用编程: 编写低功耗BLE蓝牙调试助手(Android系统APP)
1400 0
QT应用编程: 编写低功耗BLE蓝牙调试助手(Android系统APP)
|
物联网 API 芯片
HarmonyOS系统中内核实现NFC无线通信的方法
大家好,今天主要聊一聊,如何使用鸿蒙系统中的NFC视频通信方法。
183 0
HarmonyOS系统中内核实现NFC无线通信的方法
|
存储 JSON 物联网
HarmonyOS系统中内核实现智慧物流控制的方法
大家好,今天主要和大家聊一聊,如何使用鸿蒙系统实现智能物流的开发.
174 0
HarmonyOS系统中内核实现智慧物流控制的方法