Hi Clemens,
On Thu, Oct 1, 2015 at 12:27 PM, Clemens Ladisch clemens@ladisch.de wrote:
Felipe Tonello wrote:
I am planning to start the support of MIDI BLE profile[1].
I suggest two main goals:
- To be transparent to applications, i.e., use rawmidi and sequencer
ALSA interfaces to interact.
- To support peripheral and central BLE roles.
My question is: what is the best way possible of doing it?
Just write a (user-space) sequencer client.
But this will limit to seq interface only. It will not be available via rawmidi interface, right? Unless I load snd-virtmidi, correct? That was what I was suggesting at first, but I don't really like the idea of loading snd-virtmidi for that.
[...] They all have the problem of context switching between bluez plugin and alsa midi driver.
Why would context switches be a problem?
It is just too much travelling around. GATT messages are parsed in userspace by BlueZ, so it sounds unnecessary to copy buffers to the kernel and copy back to user space to the application (ALSA).
Felipe