Last modified: 2013-05-03 14:43:49 UTC
Could you consider supporting the play of Midi files?
Could any developers give an reply? Please.
Moving this out of OggHandler extension to 'extension requests' generally. I'm not sure how fully or consistently inline midi players are supported on modern browsers; if common and consistent, a MidiHandler class could probably be tossed into core pretty easily. If not, it might require jumping through some hoops to provide a player, which would be kinda uggy.
*** Bug 18922 has been marked as a duplicate of this bug. ***
On Commons and other Mediawiki Wikis, there are uploads of MIDI files, However, to play these 'in-browser' currently requires a non-free plugin (such as Quicktime) By providing an 'inline' player for Midi (possibly based on Java) this dependence on a non-free plugin would be reduced. One possible solution, but this would involve some work, is for the server side to do a one-shot rendering of MIDI files into a format like OGG (using something like FluidSynth and a suitable 'free' sample set). A second solution would be to have a specific inline MIDI plugin. The third solution is the current one, whereby the MIDI file is offered for download to an external player.
There is now a MIDI player available in TMH (see Bug 43388). Maybe it could be used for all the MIDI files on commons?
Tentatively moving to TMH, though not sure if TMH itself needs further code changes, or if this falls into a server configuration category. Jan / Michael: Do you know?
FWIW the Score extension invokes /usr/bin/timidity (the TiMidity++ MIDI converter) in Score.body.php's generateOgg() to convert MIDI files generated by GNU Lilypond into .ogg files. It seems plausible to do just this part of Score's processing for other MIDI files. A different approach is to read, process, and play MIDI files directly in sufficiently powerful recent browsers, see http://mudcu.be/midi-js/
spage, thank you for clarifying this. I hadn't looked closely at Score and only saw that the player was JS. I didn't look at the source and only saw that Bug 43388 called for MIDI and assumed that, as a result, TMH was using MIDI. But, yes, midi.js was the other tool I looked at for this. From my tests (and information on the website), it doesn't work as well in recent Firefox as it does in Chrome. Filing a bug with Mozilla.
For the curious, my Mozilla bug: https://bugzilla.mozilla.org/show_bug.cgi?id=868425