abudaan / heartbeat

a javascript MIDI/Audio sequencer for your browser
http://abudaan.github.io/heartbeat/
120 stars 20 forks source link

MIDI suddenly stops working (OSX) #3

Closed edokoa closed 9 years ago

edokoa commented 9 years ago

I've been using heartbeat successfully for the last week using it to communicate Chrome with Ableton Live using the OSX built-in IAC driver. Suddenly the MIDI stopped initializing with no error message whatsoever. Tracing the lines one by one I notice that the line midi.outputs() is the one making the init function stop.

Trying to find out if it's a problem with my program, I tried to run the heartbeatjs.org examples with the same result. Then I tried to use both Chromium and Chrome Canary. both get stuck in the "getting midi ports..." message and display the same error : screen shot 2014-11-28 at 1 07 22 pm

I tried restarting the sound system, running it with Jazz plugin in FireFox and Safari:

-In Safari with the Jazz plugin, I get the same problem. The examples are stuck in the "getting MIDI ports..." message with no error. (The metronome takes 0s to parse)

-In FireFox (as of this morning) it initializes normally with the Jazz plugin (unexpectedly).

abudaan commented 9 years ago

1) update your Jazz plugin to 1.4 and check again 2) enable native midi in Chromium or Chrome and check again

To enable native midi: 1) go to chrome://flags 2) find "midi" and click enable 3) restart your browser

abudaan commented 9 years ago

And can you give me the version numbers of your browsers? Are you on Yosemite?

edokoa commented 9 years ago

Sorry for the time in-between answers, but I'm AFK until Monday.

I'm using Mountain Lion (didn't need to update) that's why I was saying I considered formatting and upgrading. I'll do it as soon as I get an HDD to backup.

the versions of the browsers are:

Chrome Version 39.0.2171.71 (64-bit) Chromium Version 41.0.2233.0 (64-bit) Chrome Canary Version 41.0.2232.0 canary (64-bit) FireFox 33.1.1 Safari Version 6.1.4 (8537.76.4)

I already have the last version of the Jazz plugin, and native MIDI activated. It's what I was using. I have my suspicions that it has to do with the (my) system MIDI and some kind of corruption or file suddenly missing somewhere. But GarageBand and Ableton still work. I'll write my results when I format (could not be until Monday).

abudaan commented 9 years ago

Unfortunately midi support in browsers isn't very stable; native support for midi is still in development and the Jazz plugin doesn't work under certain conditions. It isn't something that I can fix in heartbeat.

I was asking about Yosemite because I've heard that it has stability issues.

I have tested on my Mac with OSX 10.7.5:

Chrome 39.0.2171.71 -> broken Chromium 38.0.2125.122 -> ok Firefox 33.1.1 -> ok (Jazz 1.4) Safari 6.1.6 -> ok (Jazz 1.4)

btw: it's best to use the stable versions of browsers only.

Native midi support in Chrome 39.0.2171.71 is broken on all platforms.

Jazz 1.4 is very unstable in Firefox 33.1.1 on Ubuntu 13.10.

On my Windows 8.1 installation Jazz 1.4 is only fully working with Chrome; in other browsers midi devices are detected correctly but midi messages don't seem to arrive in Jazz.

You can test Jazz separately with these examples: http://jazz-soft.net/demo/

edokoa commented 9 years ago

Hey, thanks. I was not expecting it to be "fixed" via Heartbeat or anything. I was documenting it in case you saw it before and knew why it happens. I'll just try downgrading chrome and see if that makes it work again.

Thanks for everything!

abudaan commented 9 years ago

The implementation of WebMIDI has been updated to the latest W3C draft which was the cause that MIDI ceased to work. All works fine again in the next version of heartbeat.