VB midi router sources and installer (was: Midi Router to share)
Posted 19 February 2009 - 21:40
I've written a MIDI application some time ago, and although is not strictly related to the MIDIBox Project, this community has given me so much and I'd like to share this with you.
The program is basically a MIDI Router and was written for a friend of mine, and is aimed to Live performances.
Here´s a screen capture.
It offers three "Slots", each of them can be connected to a different MIDI port or to different channels on the same port.
Each slot is able to:
* filter Midi events by pitch (to create keyboard zones),
* filter Midi events by velocity (you could for instance stack different sounds at high velocity values, but play just one sound when the velocity sent is low)
* filter modulation, pitch wheel, sustain, or other controllers.
* add or substract a velocity value.
* transpose notes up or down.
* send a program change to the port/channel you designate.
* send bender range message.
They have also the possibility to midi-learn keyboard zones. (for the lazy ones)
Each whole configuration can be saved as a preset (there are 127 of them) which can be named and you can copy one to another.
Presets can be changed by sending the app. a program change.
And that's the main idea, you are playing on your keyboard, and by changing your "sound" you will be able to send three program changes at once to your virtual instruments, and as explained above, apply all the filtering and changes the program is able to do.
It is programmed in Visual Basic 6,and thus needs installation (VB6 runtime, an ocx for the customized buttons, and Mabry Midi I/O -open source- for accessing to midi ports).
I would release the ocx for the buttons would be released as free software as well as the app. remaing all free software but the VB runtime.
I've never released any software, and so, I'd like you to help me to do things the right way. Especially, VB runtime not being free software makes me wonder whether the whole thing can be released as free soft.
One more thing, for routing MIDI to Virtual Instruments it's necessary to have maple virtual midi cable, Hubi MIDI Loopback Driver, or any other similar application.
PS: I've read the stickies and know this post is not strictly a user project as defined here, it may even not be the place to post this. I hope no one gets pissed off!
PS2: if anyone would like to try it, let me know.
Posted 20 February 2009 - 09:36
This is not a MIdibox User Project so I've moved it, but definitely not pissed off We only get pissy if people don't bother to read the stickies, and that's not you ;) So, I've moved it to misc... but somehow, misc seems not 'worthy'... I dunno quite where to put this one, but I am open to suggestions from you or anyone else as to where to put it (advice appreciated).
As for distribution and "free" software, that's a can of worms. Being as how the VB runtimes are preinstalled on all Windows versions (since 98se IIRC) you probably don't need to include them in your distribution, but you may choose to do so.
I don't know about licensing for the MIDI libs you've used, so you'll need to check that out, but generally speaking, that and your GUI widget OCX should be included in your distribution (PDW might be the tool for this?)
Now, as for whether it can be released as "free", that's the really wormy part.
Yes, the whole collection of components that make up your tool can be released as freeware. You'll have to see what MS's licensing is (this week hehehe.... ), but if things haven't changed, you can't actually host the runtimes on your site, but have to link users to the MS website to get them, should they be required.
Yes, your application itself, including your OCX, can be released as freeware. By 'freeware', I mean, free of charge - not 'libre'. Whether it can be released as libre software is a matter of some discussion. Generally speaking most people would agree that your app can be released as libre, but some would say that it can not, as it relies upon non-libre components (VB runtimes and maybe the Mabry IO).
Personally, I'd say: Don't worry about whether it's "free" or not. Just release it as you see fit.
Posted 21 February 2009 - 00:37
Yes, I think this is a good place for this thread, nevertheless misc is not very "exciting". :-)
The Mabry MidiLibs are Free Software (I always mean Libre when saying Free), and so there wouldn't be any trouble at all in that respect.
I think it could be asumed that I should be able to distribute the source code without a problem. I'll try to inform myself a little bit (want to read the GPL license during the weekend) and I suppose the app will be publicly available next week.
BTW, what does "PDW" mean??? ;-)
Oh, I found it!, Google you mighty God. :-/ You mean "Package and Deployment Wizard"? Yeah, I can make an installation package with that. I actually made it, and the PDW puts the VB runtimes oleaut, etc. inside it...
Posted 26 February 2009 - 18:39
Posted 06 March 2009 - 05:56
Full mabrymidi release, source codes, ocx, license, etc.
This is not necessary if you use the installer, but this is the way its meant to be distributed, according to its license.
The sources of the graphic controls is still to come. (I have to find the last version).
Hope someone finds this useful, cya.
Posted 06 March 2009 - 06:42
i used to write midi applications in VB and i think a lot of people underestimate what you can actually do with the language. here's some proof .
in fact i was in the middle of writing a sequencer in VB when i came across the midibox seq (never built anything electronic before then). i never finished it because i was too busy emptying buckets of drool.
any chance you'd make this in c, on a midibox?
Posted 06 March 2009 - 07:51
Isn't it already done? I mean, a Midi Router Midibox project is in the site afaik..
I would have loved to, but someone (you know who "someone" is, heh) did it first!
What I'm planning to do is some midi realtime processor. Obvious idea, an arpeggiator, but I'll try to come up with some more midi-processing ideas. Well, ideas are easy to find (convert this to that, etc.), thing is they should be useful, right? ;)
Posted 06 March 2009 - 13:55
have you seen the midi delay in the toys of the week thread?
Posted 08 March 2009 - 02:17
I'll see what comes up to my mind, I think i'll end up making an "it's-been-made-many-times" thingie, but by my own, at least!
Posted 02 September 2010 - 23:32
Funny, I came to this thread via Google, when I was searching some code examples. Unfortunately, the links are broken. Both for Pablop's sources also to the Mabry ActiveX controls. I didn't find the Mabry MIDI Controls anywhere (however I didn't have try the waybackmachine). There's a page on sourceforge.net that they said, if I have understood well, now the controls are free, but the compressed file available for download are free of controls! Then, searching a bit more, I had see that the Mabry software page still charge $99 for the controls.
I think I could do all the work done via some Windows APIs for MIDI but today just having a look in my backup files from the last year, what a surprise..I already had downloaded these files from this thread last year.
So I'm re-uploading them.
mabrymidi.zip 548.91K 31 downloads
Sources.rar 20.33K 25 downloads
Hope it helps in the future for a VB programmer/developer