piz midi plugins (windows/linux/mac)
-
- KVRAF
- 6828 posts since 28 Apr, 2004 from france
THank you for all your work, IPH.
I am wondering : i have an old FM expander which doesn't respond to midi CC but only to Sysex : would it be possible to make a VST plugin sending Sysex ?
Like a "midiCC to Sysex" translator ?
I guess it would be also very depending on the host, but I know Reaper can send SYsex
I am wondering : i have an old FM expander which doesn't respond to midi CC but only to Sysex : would it be possible to make a VST plugin sending Sysex ?
Like a "midiCC to Sysex" translator ?
I guess it would be also very depending on the host, but I know Reaper can send SYsex
-
- KVRAF
- Topic Starter
- 2237 posts since 12 Nov, 2002 from swordfish
if it uses sysex as a continuous controller, that could be complicated, but i have some ideas. is there some documentation of the sysex for the device you want to control? that would give me somewhere to start... i don't have anything myself that uses sysex.
to get around the host (some hosts including energyXT ignore sysex), i would make the plugin send it directly to a midi port.
to get around the host (some hosts including energyXT ignore sysex), i would make the plugin send it directly to a midi port.
wrongtastic, baby
tucson's number one gothic rock band since 1995
tucson's number one gothic rock band since 1995
-
- KVRAF
- 6828 posts since 28 Apr, 2004 from france
you could do it and you'd be up to do it ?insertpizhere wrote:if it uses sysex as a continuous controller, that could be complicated, but i have some ideas. is there some documentation of the sysex for the device you want to control? that would give me somewhere to start... i don't have anything myself that uses sysex.
to get around the host (some hosts including energyXT ignore sysex), i would make the plugin send it directly to a midi port.
The unit is a Yamaha TX81Z, it is an 80's FM synth.
Programming it is a bit like setting a casio watch to the correct time, but i like that raw sound... I think many people still have theirs, and i think that if we can make a VST controller device for it, it oculd be helpfull for people owning a=other Yamaha FM synths (like DX78, TX802, etc).
I have found a standalone controller but it needs javascript and it is not a plugin, so no interaction with a host and not midi learnable stuff... So a vst plugin would be a nice nice nice addition
Here you can find some editors for it (no vst plugins), mayeb you can grab some useful techie infos :
http://the-all.org/tx81z/
You can find the manual here :
http://www.nodevice.com/user_manual/yam ... tx81z.html
The sysex infos are at the end ;
direct link to the manual :
http://www2.yamaha.co.jp/manual/pdf/emi ... TX81ZE.pdf
Big thanks for agreeing getting a bit into this !
-
- KVRAF
- 6111 posts since 18 Oct, 2007
-
- KVRAF
- Topic Starter
- 2237 posts since 12 Nov, 2002 from swordfish
i downloaded jsynthlib and i'm looking at its output in midiox... it looks like the parameters are usually 7 or 8 bytes of sysex, where only one byte is the actual data. that means a CC could probably be mapped to a parameter directly.
what i need to do is look for some format for a file for the plugin to load that defines the sysex implementation for a device. i'm sure this has been done numerous times before...
another thing to consider is that synthedit 1.1 will have sysex support, and will probably make it trivial to do what i'm planning. but i'm going to try it anyway.
what i need to do is look for some format for a file for the plugin to load that defines the sysex implementation for a device. i'm sure this has been done numerous times before...
another thing to consider is that synthedit 1.1 will have sysex support, and will probably make it trivial to do what i'm planning. but i'm going to try it anyway.
wrongtastic, baby
tucson's number one gothic rock band since 1995
tucson's number one gothic rock band since 1995
-
- KVRAF
- Topic Starter
- 2237 posts since 12 Nov, 2002 from swordfish
here's a quick proof-of-concept sysex plugin.
http://thepiz.org/xt/midiCCToSysex.zip
by default it uses CC1 to control the LFO speed of the TX81Z. as it is, you need to manual and a binary calculator to be able to set it to something else, but it is possible.
parameters:
Byte1-Byte8 - manually set individual bytes, starting with the manufacturer ID (F0/F7 start & end bytes are added automatically).
LastByte - sets the byte that the CC will be applied to. bytes after this one aren't used.
LowVal/HighVal - limits the possible values for the parameter
CC - which CC to use
Device - midi device to send the sysex to
http://thepiz.org/xt/midiCCToSysex.zip
by default it uses CC1 to control the LFO speed of the TX81Z. as it is, you need to manual and a binary calculator to be able to set it to something else, but it is possible.
parameters:
Byte1-Byte8 - manually set individual bytes, starting with the manufacturer ID (F0/F7 start & end bytes are added automatically).
LastByte - sets the byte that the CC will be applied to. bytes after this one aren't used.
LowVal/HighVal - limits the possible values for the parameter
CC - which CC to use
Device - midi device to send the sysex to
wrongtastic, baby
tucson's number one gothic rock band since 1995
tucson's number one gothic rock band since 1995
-
- KVRAF
- 6828 posts since 28 Apr, 2004 from france
Urgh
Thank very, very much, Piz. I can't really believe it : i asked that yesterday and something is already here today
But to be honnest i must say i feel quite embarassed : it sounds a bit like chinese to me, i am not really a byte guy
I have took the Tx81Z manual, and i don't really understand how to use it...
The value i wish to be able to use are the "ACED" data (operators attack, decay, the LFO speed, etc).
On PAge 73 of the manual, i see a table where the parameter numbers are labelled from "1" to "74", and i see nothing labelled as "bytes".
In example : according to the manual, the operator 1's rate scaling is ACED parameter number 6.
I have read the previous pages, they are full of figures, and i must say i don't understand anything (oops + urgh again : sorry for my un-knowledge, i really feel dumb !).
If you can provide me some more info, i'd gladly try, but right now i have the Tx81z powered on and the vst pugin loaded , i am tweaking the faders, but of course as i am tweaking it blindly, it does nothing
CHeers !
(and muchos thanxx again)
Thank very, very much, Piz. I can't really believe it : i asked that yesterday and something is already here today
But to be honnest i must say i feel quite embarassed : it sounds a bit like chinese to me, i am not really a byte guy
I have took the Tx81Z manual, and i don't really understand how to use it...
The value i wish to be able to use are the "ACED" data (operators attack, decay, the LFO speed, etc).
On PAge 73 of the manual, i see a table where the parameter numbers are labelled from "1" to "74", and i see nothing labelled as "bytes".
In example : according to the manual, the operator 1's rate scaling is ACED parameter number 6.
I have read the previous pages, they are full of figures, and i must say i don't understand anything (oops + urgh again : sorry for my un-knowledge, i really feel dumb !).
If you can provide me some more info, i'd gladly try, but right now i have the Tx81z powered on and the vst pugin loaded , i am tweaking the faders, but of course as i am tweaking it blindly, it does nothing
CHeers !
(and muchos thanxx again)
-
- KVRAF
- Topic Starter
- 2237 posts since 12 Nov, 2002 from swordfish
here's something that should be more user-friendly. all the allowed values are defined and named in a separate text file.
http://thepiz.org/xt/midiCCToSysex2.zip
http://thepiz.org/xt/midiCCToSysex2.zip
wrongtastic, baby
tucson's number one gothic rock band since 1995
tucson's number one gothic rock band since 1995
-
- KVRAF
- 6828 posts since 28 Apr, 2004 from france
Yes, it is both crazy and very kind.
This one is indeed more user friendly, but i still didn't manage to make it work
In fact, i think i understand the upper part, but i don't know what to do with the "data" fader and the 3 faders below...
Btw, if you wish to, as i tend to like GUI in order to make the plugin even more user friendly, i was thinking of a tabbed interface like this :
This one is dead ugly, done in 5 minutes in Paint.net, but If you want, i can make a better one tomorrow (if implementing it doesn't mean too much work for you and if you wish to) ?
This one is indeed more user friendly, but i still didn't manage to make it work
In fact, i think i understand the upper part, but i don't know what to do with the "data" fader and the 3 faders below...
Btw, if you wish to, as i tend to like GUI in order to make the plugin even more user friendly, i was thinking of a tabbed interface like this :
This one is dead ugly, done in 5 minutes in Paint.net, but If you want, i can make a better one tomorrow (if implementing it doesn't mean too much work for you and if you wish to) ?
-
- KVRAF
- Topic Starter
- 2237 posts since 12 Nov, 2002 from swordfish
for choosing the sysex to send, the only things you can change are the "parameter" and the "basic receive channel". the "data" is controlled by the incoming CC. i suppose i could make this control send the data itself. right now it only sends sysex out when it receives the CC.sinkmusic wrote:Yes, it is both crazy and very kind.
This one is indeed more user friendly, but i still didn't manage to make it work
In fact, i think i understand the upper part, but i don't know what to do with the "data" fader and the 3 faders below...
i can't do a real test of it here, so it could be that it simply doesn't work... do things like jsynthlib work for you?
anyway, once we verify that it actually works, i'll add a gui. i'll probably use your layout too.
wrongtastic, baby
tucson's number one gothic rock band since 1995
tucson's number one gothic rock band since 1995
-
- KVRAF
- Topic Starter
- 2237 posts since 12 Nov, 2002 from swordfish
-
- KVRAF
- 6111 posts since 18 Oct, 2007
Wow ok that was a while back I think I must have it then..
BTW I was wondering if you had a chance to take another look at probability. It still needs a certain randomization for either the probability or the steps. I'm not too sure if this is what will give the probability a randomised feel .
Anyway let me know
Thanks again
BTW I was wondering if you had a chance to take another look at probability. It still needs a certain randomization for either the probability or the steps. I'm not too sure if this is what will give the probability a randomised feel .
Anyway let me know
Thanks again
-
- KVRAF
- Topic Starter
- 2237 posts since 12 Nov, 2002 from swordfish
i'm still not sure what you mean. like a random lfo applied to the step or probability parameters?Optomadic wrote:Wow ok that was a while back I think I must have it then..
BTW I was wondering if you had a chance to take another look at probability. It still needs a certain randomization for either the probability or the steps. I'm not too sure if this is what will give the probability a randomised feel .
Anyway let me know
Thanks again
wrongtastic, baby
tucson's number one gothic rock band since 1995
tucson's number one gothic rock band since 1995