Thread with 18 posts
jump to expanded postmy newest project: a MIDI SysEx inspector and editor for Roland SC-7, Roland GS/SC-55, and eventually Yamaha XG
currently it understands the Roland Type IV SysEx format and DT1 messages, and it knows about all the Roland SC-7's effect parameters
it's not ready for release yet
features (implemented):
• runs in web browser. no download needed
• reads Standard MIDI Files
• reads hexadecimal SysEx
• parses Universal SysEx, Roland SysEx
• parser is very carefully designed. gives as much information as possible even for incomplete SysEx messages.
features (work in progress):
• easy generation of General MIDI, Roland GS, Roland SC-7 SysExes using drop-down menus. for example, select “Roland” > “Roland SC-7” > “System parameters, Effect Control” > “CHORUS DEPTH”, then enter 7F. full SysEx in hexadecimal is generated.
features (to-do, will be in first release):
• generated or entered SysExes can be collected
• collected SysExes can be saved to Standard MIDI File
features (to-do, some time in future):
• WebMIDI for direct communication with synthesiser
• Yamaha XG
• other Roland SC
👀👀👀👀👀
happening
(might not look like much but a Lot is going on behind the scenes to make that menu work, including Rust–JavaScript FFI shenanigans and a pile of traits. so i'm very very happy it works)
YES, HA HA HA, YES!!!
turns out Web MIDI is really easy to implement and really fun to play with, and it works in all the browsers that matter (Firefox and Chrome). I don't like the web eating everything but gods it is just the best platform for creative experiments and low-complexity GUI tools.
short video demo of my upcoming MIDI SysEx editor: tweaking the Roland SC-7's effects in real time! (there is audio so you can hear what i'm doing)
there are definitely far more interesting settings i could use, this is very much ad-libbed and mostly demonstrating what kinds of things the editor can change, not how you can make something good with them
update: much as it pains me, I'm gonna have to tell people not to use my editor's Web MIDI function in Firefox, because its Web MIDI implementation is so goddamn unreliable and has really sloppy timing somehow 😭
it works flawlessly in Chrome on the other hand
🎺🎺🎺 it's finally out!!! my MIDI SysEx editor/analyser: SoundPalette!
currently, it understands most SysExes of the Roland SC-55's version of Roland GS, plus all for Roland SC-7.
you can read more here: https://github.com/hikari-no-yume/SoundPalette
also see the earlier tweets in this thread ^^
I decided to stop letting perfect be the enemy of the good and have finally “released” a new version of SoundPalette, my MIDI SysEx analyser and editor for Roland GS (currently only SC-55 stuff) and SC-7.
you can read more here: https://github.com/hikari-no-yume/SoundPalette/releases/tag/v1.1.0
i have been promising myself i'll get SC-88 and XG support in this “soon”. i've been promising myself i'll make a youtube video explaining what the project is for and how to make the best use of it… before the end of the year. but at this point that may be unrealistic.
@hikari I just tried it, it's really cool! the midi file analysis stuff will come in handy for my own little projects
@1Bit thank you! what kinds of projects are you imagining?
@hikari I already made this python program that I run in windows cli that parses and plays back a .mid file. Type 0 and type 1 are taken care of, but there's this alternative method of setting the tempo that I haven't dealt with. Your midi file analyzer will help provide sanity checks. I've ported my code to THINK C and it also runs on 68k macs (all the way to Mac Plus). Wanna have it for a F256K2 as well, they have midi out now.
@1Bit ah, i haven't tried to implement tempo and most timing-related stuff yet…
@hikari that's sad.