Alter JavaScript MIDI Player For Instrument Changes

In Progress Posted Jan 18, 2014 Paid on delivery
In Progress Paid on delivery

I have an HTML/JavaScript project based on the JavaScript MIDI player that can be found at [url removed, login to view]

A bare bones version of the project can be found at [url removed, login to view]

The JavaScript app loads a remote URL and plays it. This part works fine. The issue is that the instrument never changes.

All 128 MIDI instrument files are in the soundfonts directory. They should all be preloaded (I don't know how to do this). There should be a progress bar for the loading that shows users the status, but the rest of the page needs to keep working.

Here is the email response from the JavaScript author:

As far as what you're talking about, that's definitely possible and wouldn't take much to code in, the only issue is that you'd also need to download soundfonts for each of the instruments in the MIDI file. I would imagine this would be done prior to starting the song (so scrub through song to find all instruments required, download, and then start playing)

The code would be injected into the [url removed, login to view]: [url removed, login to view]

Where it says "case 'noteOn':"

Someone would need to add in "case 'programChange'"

and then make a call to [url removed, login to view] with the appropriate timing.

The reason the soundfonts need to be preloaded is so that when a program change happens it does not slow down the playback.

There is a lengthy switch statement in the code that is not needed, but it can be used in order to get the order of the MIDI files. It is possible that I am using the MP3 version when the OGG version is what is needed.

Please ask if you have any questions before getting started.

JavaScript

Project ID: #5335321

About the project

2 proposals Remote project Active Jan 19, 2014

2 freelancers are bidding on average $179 for this job

XFastSolution

Dear sir, I've read your requirement, also checked the link carefully. With expertise in Javascripts/HTML5 (10 and 3 years experience) and much experience working with HTML component like player, I would be a good More

$100 USD in 2 days
(3 Reviews)
3.5