e-UniverCity.com Projects

Using our products in your project? - Place your link here!
Post Reply
Steve
Posts: 10
Joined: Mon Jan 19, 2015 4:28 pm

e-UniverCity.com Projects

Post by Steve » Mon Dec 25, 2017 8:06 am

Hi. A few years ago I started dabbling with the Jazz-Soft plug-in related to E-Mu gear. My goal was to extend the usefulness of the gear by implementing web-based functionality using E-Mu's sysex implementation, including regular sysex commands and E-Mu's Remote Control Sysex. From there, the plan was to extend functionality to other legacy gear whose potential could be developed further.

Until recently the web-pages-in-progress existed only on my PC. It was and still is a work-in-progress--testing, exploring, experimenting, etc. However, a few weeks ago, in a forum devoted to E-Mu ROMplers, some members of the community started discussing E-Mu's Remote Control sysex commands and it was clear that years ago, I had developed an understanding that others would find useful. So, I decided to "push" my pages-in-progress onto my website. The plan was also to explore updating it.

However, it uses a Jazz-Soft plug-in and methods that only seem to work on older browsers in Window XP. Due to the aging process, my mind is not what it used to be and I am not sure (1) what would be involved in updating my code and (2) how I might do it.

Also, at the time I started on the project using Jazz-Soft, WebMIDI was just a dream in a couple of people's minds (with some proposed documentation here and there on the internet). I decided the Jazz-Soft plug-in could do what I wanted to do; WebMIDI couldn't. However, I see that it has come a long way and I am now also faced with the decision--can I use WebMIDI to do what I was starting to do with the Jazz-Soft plug-in?

Anyhow, I would appreciate any insights on things like: how to bring my pages up to speed so they work with new-fangled browsers and OSes that add far more complexity (and barriers) than I could ever imagine. (I am using Windows 10, though I have started to explore linux on a possibly soon-to-be former XP PC.

The discussion related to my sharing the pages-in-progress can be found here: https://www.gearslutz.com/board/showpos ... tcount=278. There is a screenshot of one of the pages a few posts down [Firefox/XP] - here https://www.gearslutz.com/board/showpos ... tcount=286

The entry point to my experimental exploratory web-pages is currently here: http://www.e-univercity.com/SynthGearDo ... teControl/.

To prevent International Bots from repeatedly downloading every single page and document from my site day-after-day, I have password protected this portion of the site. The current password can be found here: http://www.e-univercity.com/SynthGearDocs/. Please don't tell the bots!

Any insights for potential updates to my use of the Jazz-Soft plug-in would be appreciated.

Steve

PS: I have developed some additional pages which have not yet been posted to my site. I was hoping to figure out how to get it to work in newer browsers and newer operating systems first. Thanks.

sema
Site Admin
Posts: 388
Joined: Mon Oct 17, 2011 7:28 pm

Re: e-UniverCity.com Projects

Post by sema » Mon Dec 25, 2017 12:50 pm

Hi Steve,

You are doing a great job! I too had a Proteus long time ago. What a wonderful time that was...

Instead of directly using the plugin, try the JZZ.js library - it supports both the native WebMIDI Api where available, and the plugin in older browsers, and it works in the latest Firefox too.

And please test your E-mu devices at our MIDI Gear page.

Steve
Posts: 10
Joined: Mon Jan 19, 2015 4:28 pm

Re: e-UniverCity.com Projects

Post by Steve » Mon Dec 25, 2017 6:21 pm

Thanks! I was able to use the plug-in based on your excellent examples--dissecting them, tweaking then, and incorporating them into web-pages. I will take another look at the JZZ.js library and the WebMIDI api in hopes that I will be able to make the transfer. The MIDI Gear page looks like a great place to start.
Steve

Steve
Posts: 10
Joined: Mon Jan 19, 2015 4:28 pm

Re: e-UniverCity.com Projects

Post by Steve » Mon Dec 25, 2017 7:46 pm

Well, I tried several example programs--MIDI Gear, Hello MIDI, and Echo. As is, they don't do anything. I suspect that unless I can find some examples that work right out of the box, I will have to spend thousands of hours teaching myself js and WebMIDI to make my old web-pages work. Do you know of any examples that would allow me to choose MIDI devices (In and Out) from what's on a computer, send midi data, echo the data in hex to a visual display, etc.? Thanks.

sema
Site Admin
Posts: 388
Joined: Mon Oct 17, 2011 7:28 pm

Re: e-UniverCity.com Projects

Post by sema » Mon Dec 25, 2017 7:52 pm

Which browser/OS did you use?
Do you have the plugin installed?
Please check the instructions, there may be some additional steps.

Steve
Posts: 10
Joined: Mon Jan 19, 2015 4:28 pm

Re: e-UniverCity.com Projects

Post by Steve » Tue Dec 26, 2017 5:09 am

Thanks. I have set aside a few hours today to read up on WebMIDI and to try to make sense of the JZZ.js library. Last night I was on Win10 Home (laptop) and tried FF (the latest) and Chrome. Currently on Win10 Pro; generally I use FF, but have chrome installed, too. (I never use MS Edge.)

Which plug-in should I be using? I ran the msi program from the site [1-5-1.msi]. In fact, I just uninstalled it and re-installed it. Last night I just did a repair.] FF = 57.0.2 (64-bit) Chrome is Version 63.0.3239.84 (Official Build) (64-bit) - automatic updater produces an error. LOL "Error 4: A newer version of Chrome is already present on the computer."

All this stuff confuses me and I have no idea where and how to start. That's why it seems like I need to spend thousands of hours learing js and WebMIDI programming. The Jazz-Soft Plug-in I had been using did not have such a steep learning curve. I just clicked on the msi installer, followed the old examples, and it worked!!!

https://github.com/cwilso/WebMIDIAPIShim
https://www.npmjs.com/package/web-midi-api
https://www.npmjs.com/package/jazz-midi
https://www.npmjs.com/package/jzz
http://jazz-soft.net/doc/JZZ/

To someone who already knows what to do, it is probably simple. For me, I could spend hours just trying to figure out s0omething ridiculously simple. But, I am not ready to give up yet--intuitively, I think once I figure out how to get something to happen, I should be able to convert my existing web-pages into pages that work with the new system.

Thanks for any basic tips you can provide.

Steve

UPDATE: Can't get "Testing JZZ v.0.0" to do anything. I want to believe that there is something very simple that I am just not understanding, but I don't know what can be simpler than trying to run the test program.

Other things tried (without success):
--installing the Jazz plug-in in the 64 bit program folder (instead of the x86 folder)
--running compatibility troubleshooter
--other third party projects listed here

BTW, I do have the FF Jazz-MIDI 1.0.1.1 extension with automatic updates turned on (just in case default didn't work. Also, when I tried the DNA Sonification program (both FF and chrome), I get "This page requires Jazz-Plugin ..." no matter how many times I uninstall, reinstall, or repair the plug-in.

Are there any sites anywhere on the internet that have actual FF or Chrome functionality working with JZZ.js?

Thanks.

Steve
Posts: 10
Joined: Mon Jan 19, 2015 4:28 pm

Re: e-UniverCity.com Projects

Post by Steve » Tue Dec 26, 2017 7:36 am

Some progress: The code here: https://jazz-soft.github.io/modules/jzz-crx.html displays my enumerated midi I/O ports--with play buttons for outputs and "listening" for inputs. However, the page says: "This page requires jazz-midi extension. ( Chrome Web Store, Mozilla Add-ons )" even though FF reports I have the jazz-midi extension installed and it is not-disabled.

Also, some of the modules work, but most don't. I do get my I/O list, and knobs works insofar was the knobs/sliders display data in the window, but there is no midi data coming in or going out.

Maybe this is significant:
"JZZ v.0.4.0 NPAPI test This page requires Jazz-Plugin. Jazz-Plugin is not available or no MIDI ports found. Back " ?

----------------------------------------------
chrome:
https://jazz-soft.github.io/modules/jzz-webmidi.html - seems to output midi data and display incoming midi data; although the page says "This page requires Web MIDI API." Maybe that's not a detection failure but just a notice.
----------------------------------------------
The bottom line for today https://jazz-soft.github.io/modules/index.html - Engine tests:
NPAPI - chrome and FF fail
WebMIDI - chrome seems to have functionality; FF fails
Web extension - chrome and FF fail

Conclusion: Either stick to XP and use old Jazz-Soft plug-in approach or learn WebMIDI and use chrome on Win 10

To be tested: If there's chrome with WebMIDI support for linux, that.
----------------------------------------------
PS: I have documented the failings and successes here (1) for my benefit, (2) in case it helps others, and (3) in case someone can provide insights into why the things that don't work fail.
----------------------------------------------

JZZ modules

MIDI Out:

Microsoft GS Wavetable Synth
v.1.0 - Microsoft Corporation (extension)
E-MU XMidi2X2
v.1.0 - E-mu Systems, Inc. (extension)
MIDIOUT2 (E-MU XMidi2X2)
v.1.0 - E-mu Systems, Inc. (extension)
Creative MIDI Port
v.10.0 - Microsoft Corporation (extension)
Creative MIDI Port II
v.10.0 - Microsoft Corporation (extension)
MK-449C USB MIDI Keyboard
v.1.34 - unknown (extension)
ChucK
v.1.0 - unknown (extension)
JZZ.synth.MIDIjs
v.0.3.2 - virtual (MIDI.js)
JZZ.synth.Timbre
v.14.10.12 - virtual (Timbre.js)
JZZ.synth.OSC
v.0.3 - virtual (Web Audo)

MIDI In:

E-MU XMidi2X2
v.1.0 - E-mu Systems, Inc. (extension)
MIDIIN2 (E-MU XMidi2X2)
v.1.0 - E-mu Systems, Inc. (extension)
Creative MIDI Port
v.10.0 - Microsoft Corporation (extension)
Creative MIDI Port II
v.10.0 - Microsoft Corporation (extension)
MK-449C USB MIDI Keyboard
v.1.34 - unknown (extension)
ChucK
v.1.0 - unknown (extension)
Qwerty-Hancock
v.0.5.1 - virtual (qwerty-hancock.js)
Kbd
v.1.3 - virtual (html/javascript)
ASCII
v.1.0 - virtual (html/javascript)

sema
Site Admin
Posts: 388
Joined: Mon Oct 17, 2011 7:28 pm

Re: e-UniverCity.com Projects

Post by sema » Tue Dec 26, 2017 8:27 am

As I see from the above output, your MIDI setup works fine. Congratulations!
Now try to go through the examples at https://jazz-soft.net/demo/

Don't worry about the npmjs.com links in your previous post - most of that stuff is for command-line Node.js applications, not for browsers.

Steve
Posts: 10
Joined: Mon Jan 19, 2015 4:28 pm

Re: e-UniverCity.com Projects

Post by Steve » Wed Dec 27, 2017 6:00 am

Thanks for the encouragement If at all possible, I would like to get either the Jazz-Soft plug-in or the JZZ.js library working in FF on my Win10 PC to do midi I/O tasks. Unfortunately, only chrome seems to work (based on the JZZ modules engine tests). I have cloned jazz-soft.github.io-master and will see how far I get from there since (1) it successfully lists hard and soft midi ports seen by Windows 10, (2) I am getting mid I/O on soft of the ports, and (3) maybe the engine tests will help as I try to get things to work.

BTW, I have tried https://github.com/M-Reimer/midiinputprovider in FF and even though I have the Jazz-Midi extension, the JZZ Modules engines tests still fail.

Do you know Is there is a WebMIDI API extension that works with FF?

Thanks.

sema
Site Admin
Posts: 388
Joined: Mon Oct 17, 2011 7:28 pm

Re: e-UniverCity.com Projects

Post by sema » Wed Dec 27, 2017 9:06 am

Unfortunately, I am not familiar with the midiinputprovider.

Since your FF correctly reports the port names, all other functions should work too.

There may be one reason for not been able to open the hardware ports:
When you use the standard WebMIDI in Chrome, it captures all MIDI devices so that no other application can use them at the same time.
Chrome keeps holding the devices even after the page is closed.
Please try FF when Chrome is closed, or you may even have to reboot.

Steve
Posts: 10
Joined: Mon Jan 19, 2015 4:28 pm

Re: e-UniverCity.com Projects

Post by Steve » Wed Dec 27, 2017 2:23 pm

Thanks for the suggestions. The good news is: I haven't given up yet!
I will uninstall chrome to see if chrome is not the source of the problem I am having.*
I have already started dissecting the github clone (jazz-soft.github.io-master) to try to pinpoint where the problem occurs.
----------------------
*First, though, I have started to turn off [disable] ALL add-ons, including Jazz-MIDI. That seems to have helped with what I suspect are web audio applications.

========================
Regarding: MIDI Input Provider: How did you get the WebMIDI API to work with JZZ.js in FF v57?

When I run the Web Audio & MIDI Util web page from the cloned github suite of programs with just Jazz-MIDI, I get:
Web Audio: AudioContext (new version)
Web MIDI is not supported

When I enable the MIDI Inputprovider, I get:
Web Audio: AudioContext (new version)
Web MIDI is supported

However, with the MIDI Inputprovider extension enabled, the JZZ Modules index page hangs on "Reading MIDI Information..."

Plus there is never any Gear identified via the midi Gear app in FF regardless of what combination of Jazz-Plugin, Jazz-MIDI, and InputProvider I have installed or enabled with all other add-ons off and with chrome uninstalled with restarting FF and rebooting WIndows at various points. I believe I have exhausted all combinations, but will make another systematic attempt tomorrow.

Maybe I will stumble onto something I am missing that needs to be loaded/unloaded, enabled/disabled, installed/uninstalled.

Steve
Posts: 10
Joined: Mon Jan 19, 2015 4:28 pm

Re: e-UniverCity.com Projects

Post by Steve » Wed Dec 27, 2017 8:28 pm

Out with the old . . .
Before reinstalling chrome, I decided to try some other browsers--starting with Opera. Good news: It seems to support both Web Audio and Web MIDI; plus, all of the JZZ Modules except one seem to work. While I am still disappointed that the Jazz-Soft plug-in and the Jazz-MIDI extension do not seem to work with FireFox v.57 via JZZ.js, it is good to know that there are at lease two other browsers that do seem compatible. Perhaps FireFox will someday have fully implemented Web MIDI support and if so perhaps the JZZ.js library will work with FF.

Thanks for your software and for your suggestions. Though they didn't help solve the issues with FF, they provided encouragement not to give up looking for solutions.

Steve

sema
Site Admin
Posts: 388
Joined: Mon Oct 17, 2011 7:28 pm

Re: e-UniverCity.com Projects

Post by sema » Mon Jan 01, 2018 4:56 pm

I have posted two more examples. Hope they'll be useful...
https://jazz-soft.net/demo/SelectMidi.html
https://jazz-soft.github.io/modules/jzz-all.html

Steve
Posts: 10
Joined: Mon Jan 19, 2015 4:28 pm

Re: e-UniverCity.com Projects

Post by Steve » Mon Jan 01, 2018 8:55 pm

Thanks for the additional demos!! I will have to take a look when I get another block of time. --Steve

Post Reply