There is an `about:config` setting to enable webmidi in Firefox `dom.webmidi.enabled`. It's not a great experience to have to set that by hand. It does work though, at least in Linux.
It looks like your site isn't detecting whether the webmidi feature is present though, it looks like its just doing dumb UA filtering.
It’s worth noting that I don’t use Firefox by default, but Safari, and the messaging only talks about Firefox.
I thought I’d read that WebMIDI was declined to be implemented by Apple because of security issues (including the ability for random webpages to send firmware updates to connected MIDI peripherals), and going back about four months I found an article here on HN (https://news.ycombinator.com/item?id=23676109 — note the top comment https://news.ycombinator.com/item?id=23679063).
I seriously doubt that Firefox is going to implement this.
That's just too bad then. Also, it really is nonsense, yes, you could do that, but that's a matter of blocking those specific calls, a pretty simple implementation would already be extremely useful and nobody even wants the firmware update extensions to be implemented, you can fairly trivially filter those out and redflag any application that even tries to do so.
It would make a lot of sense for a browser team to implement just the input part of the API and leave the firmware flashing part out. Or have it implemented but disabled by default, just like the access to the microphone / camera is.
Absolutely, and also program change/note on/note off those would already enable a whole pile of applications.
It's typical Mozilla. We won't do 'X' because 'Y' but when you drill down they could easily do 'X' but they won't and 'Y' is just whatever they can throw up to get away from it without having to dig in and get it over with in the best possible way. If users want something and you start throwing up technical reasons why you won't instead of can't then you've lost that user if alternatives are available.
This is how you kill your market share.
An interesting bit from one of my favorite IT related book, the Soul of a new machine revolves around the 'mode' bit. The engineers all want a 'mode' bit because it will make their life that much easier, and they keep throwing up flak why it has to be that way and the CEO keeps his foot down and says 'no mode bit, period'. 'I don't care how you get it done but that's the constraint and you will have to deal with that constraint'. And so in the end they find a way.
With all the smarts at Mozilla if they really wanted to get it done, I'm sure they'd find a way. The existence proof is Chrome, and I've yet to hear of a random website corrupting a synth's firmware using Chrome.
It looks like your site isn't detecting whether the webmidi feature is present though, it looks like its just doing dumb UA filtering.