piz midi plugins (windows/linux/mac)

Official support for: thepiz.org
Post Reply New Topic
RELATED
PRODUCTS

Post

Note: this is the original (old) discussion thread. Please continue any discussion in the official KVR forum for Insert Piz Here plugins.

In the tradition of the classic "some more MIDI plugins..." thread, here are some more midi plugins. They're GUI-less for the most part, written in C++. Anything that needs a GUI is done with JUCE.

They are VST 2.4 plugins, available for Windows (32-bit), Linux (x86), and Mac OS X (Universal Binary), unless otherwise noted.

Current price: free.

If you feel like it:
Image


"pizmidi" collection:
midi16CCRouter - Changes up to 16 CCs to 16 other CCs.
midi2qwerty16 - Use MIDI to trigger fake keystrokes to the focused window.
midiAudioToCC - Converts audio amplitude to CC messages.
midiBlackKeyFilter - Separately adjust velocity of black and white keys, and/or send them on different channels.
midiCCModulator - Use one CC to modulate another CC (or note velocity) in various ways: add/subtract/multiply/etc, plus logic gates (AND, NAND, XNOR, etc).
midiCCReset - Remembers CC values and sends them out again at selected times.
midiCCStepper - Quantize CC events by value or in time.
midiCCToggle - For changing momentary CC buttons into toggles.
midiChannelFilter - Simple single-channel filter.
midiChannelize - Transforms everything to the selected channel.
midiChs_noGUI - Channel filter/changer like energyXT1 "MIDI chs" component.
midiConverter3 - Change and convert between CC, Channel Pressure, Poly Aftertouch, Program Change, Pitch Bend, NRPN/RPN, Note On/Off, and other messages in various ways.
midiDelay - Delay notes and/or CCs with feedback.
midiDuplicateBlocker - Remembers all MIDI message values it gets on each channel, and blocks any repeated values until a different value is received.
midiExactDelay - Simple delay (no dry signal, no feedback) with flexible and precise delay time.
midiFingered - Selectively sends standard portamento on/off CC messages to emulate "fingered portamento" for synths that don't have it.
midiForceToKey - Enforces a scale, and transposes within the scale (optionally based on MIDI notes on a selected channel).
midiForceToRange - Transposes notes by octave into the selected range.
midiInvertNotes - "Mirrors" notes centered around the selected note.
midiKeySplit - Simple keyboard splitter.
midiKeySplit4 - Four-zone keyboard splitter.
midiNotchFilter - Isolate, remove, or channelize specific MIDI messages.
midiNoteGroups - Assign play and/or choke groups to MIDI notes.
midiNotesToCC - Converts note number and velocity to CC messages.
midiNoteToggle - Notes (optionally within a selected range and/or channel) are toggled... play a note once to turn it on, play it again to turn it off.
midiNRPNConverter - Converts between NRPN/RPN and CC messages, with 16 conversion slots.
midiOverlappingNoteKiller - Prevents overlapping notes at the same pitch.
midiPitchBendQuantize - Quantizes pitch bend messages to up to 25 values.
midiPitchBendToNotes - Changes pitch bend plus note messages into notes at the "bent" pitch (may be useful for using Suzuki QChord with non-multitimbral instruments).
midiPolyphony - For spreading polyphony across MIDI channels, i.e. if you play 4 notes, each one will go to a different channel. Polyphony per channel can be set from 1 to 16 notes for more flexibility. You can also use it to convert polyphonic input to monophonic output.
midiProbability - Add probability-based effects to incoming MIDI events, optionally synced to host timeline.
midiProgramChange - Send Program Change and/or Bank Select messages.
midiSimpleLFO - One CC LFO with some "simple" options.
midiSostenuto - Like a piano sostenuto pedal, but for MIDI notes instead of piano dampers.
midiStrum - Sequentially delays notes of an input chord to simulate strumming.
midiStuckNoteKiller - Sends note-off messages to end hanging notes when the host stops (for hosts that don't do this themselves).
midiSwing - Delays and/or offsets velocity of and applies probability to notes (and optionally also CCs) at every other step of a selected note value.
midiTriggerList - Use one note or CC to trigger up to 8 other notes and/or CCs.
midiVelocityScale - Scale/reverse/offset velocity of input notes (Note On and/or Note Off).

Download:
Windows: http://thepiz.org/pizmidi/pizmidi.zip (20091010)
Linux: http://thepiz.org/pizmidi/pizmidi.tar.bz2 (20081204)
Mac OS X: http://thepiz.org/pizmidi/pizmidi.dmg (20090506)

For Windows, DarkStar has made GUI versions:
http://asseca.com/wiki/MGUI/MdaPizmidi
Image


Other plugins (no GUI):
Gain - Simple gain plugin for linux: Gain.so.bz2
link/unlink - Not a midi plugin - A workaround for XT2 to get back the XT1 functionality to link/unlink audio inputs and outputs (Windows)
midi8CCRouter_PC - The same as the 16 CC router, but with only 8 slots (so that Cantabile shows full-length sliders), and responds to Program Change. This might be useful if you have a midi controller with a small number of knobs (or only a mod wheel), to change their function using Program Change messages. (Windows)
midiCCToTempo - Use a CC to control the host's tempo, if supported by the host, which it almost certainly isn't (Windows / Linux / OS X)
XT2 transport control - Control XT2's play, stop, home, and record functions with midi (Windows / Linux)


Plugins with GUI (still Windows only unless otherwise noted):
cpuram - Displays system CPU load and free physical memoryImage
midiPads - 1 to 64 buttons/sliders/XY-pads that send learnable midi messages, with resizable GUI. (1-program version) (now available as part of Jost, the open source multi-technology Linux host!)Image
midiChs - same as energyXT1 "MIDI chs" component

midiKeyboard Win/Mac - Resizable piano keyboard to monitor/play midi notes
Image
midiMonitor Win/Mac - Resizable, scrollable midi monitor. can save log as text or midi file. loads default settings from "midiMonitor.fxp" in the same directory as the plugin. Image
Big Clock (effect version) - Configurable, resizable counter for bars/beats/ticks, hours/minutes/seconds/frames, or samples. Image
image - Displays an image, and optionally a line of text. Resizable. Load images (png/jpg/gif/svg) with drag & drop. Supports program change.Image
midiOut Win/Mac - Sends MIDI directly to an output port. Now can also send MIDI clock & song position pointer. Has a small icon to remind you which device the midi is going to (drag & drop to load an image).
Image
midiIn - Receives MIDI from an external input.

midiCurve - Maps a CC, velocity, aftertouch, and/or channel pressure according to a curve. Instructions are in the plugin (click "Help").
Image


Source Code:
Source code is available by request, as long as you agree not to make fun of my code in public. Here's one of them: http://thepiz.org/pizmidi/midiForceToRange_src.zip


To Do:
- Add more useful presets
- Add support for 14-bit CC pairs where appropriate
- Make a real website (will be here: http://thepiz.org/pizmidi)


Future Plugin Ideas:
  • - Something like soma's enveloper (smooth tempo-synced audio to CC) (in progress)
    - CC smoother (see soma CC_Glider)
    - Advanced note transposer/filter/splitter (like XT 1.x MIDI Patcher / asseca's MidiSplit)
    - Random note generator (better than randomid)
    - Random cc generator (maybe something like Modismaster, but different)
    - Something like Trollo (configurable qwerty to midi)
    - Some kind of graphical CC LFO/envelope (like XT 1.x envelope comp)
    - Complex CC LFO (two oscillators modulating each other, etc.)
    - Joystick to midi
    - Mouse (trackball, trackpad, graphics tablet...) to midi
    - Learning midi message translator (midi macros?) (14% done)
    - Note (start,stop,length) quantizer (old SynthEdit attempts: noteonoffq & Lengther)
    - SysEx recorder/sender
    - Endless encoders (prototype)
    - Beat-synced midi sampler/looper (amazing version)
    - "Round robin" midi notes
    - One dedicated X/Y pad with every option imaginable
    - Midi-controlled mouse pointer & buttons (test version - needs work)
    - Velocity compressor/expander
    - CC scene morpher (see MiddyMorphy)
    - CC to SysEx (proof of concept: midiCCToSysex)
    - midi note stepper (like cc stepper but for notes)
    - chord plugin
    - Any other useful ideas I (or you) can think of
Last edited by insertpizhere on Thu Oct 21, 2010 11:53 pm, edited 143 times in total.
wrongtastic, baby
tucson's number one gothic rock band since 1995

Post

:hyper: sweet!
Those all sound good.
What about a good hardy MIDI LFO?

Post

thank you for the cross platform tools :D not much time to test these but will give feedback here when i can :)
i am me and i am free...k thx bai

Post

cheers iph !

slainte :D rob

Post

soma wrote::hyper: sweet!
Those all sound good.
What about a good hardy MIDI LFO?
yes, there should be a simple "normal" CC LFO. good point.
wrongtastic, baby
tucson's number one gothic rock band since 1995

Post

insertpizhere wrote:
soma wrote::hyper: sweet!
Those all sound good.
What about a good hardy MIDI LFO?
yes, there should be a simple "normal" CC LFO. good point.
now MIDI tracks will be assignable to other tracks maybe jorgen could add a 'preset' rate / amplitude / shape definable 'lfo envelope' to the automation menus ?

slainte 8) rob

Post

pHz wrote:
insertpizhere wrote:
soma wrote::hyper: sweet!
Those all sound good.
What about a good hardy MIDI LFO?
yes, there should be a simple "normal" CC LFO. good point.
now MIDI tracks will be assignable to other tracks maybe jorgen could add a 'preset' rate / amplitude / shape definable 'lfo envelope' to the automation menus ?

slainte 8) rob
that would be nice. along those lines, if envelopes were saved in xtc files, we could already save our own waveforms. stretchable midi parts would also be good. the sequencer itself could become a very flexible LFO module.

i think a simple LFO as a plugin will still have its uses, though.
wrongtastic, baby
tucson's number one gothic rock band since 1995

Post

some ideas:
1)mouse position to cc. for some surround live effects... expecially using trackballs!

2)a learn-in learn-out plugin. it will work with notes and cc. usefull to remap controllers like doepfer's ones...
for every "conversion slot" that is added i can use learn-in to assign a note and learn out to assign a cc. so everytime i press that note it will be converted in a cc message.
everything can be converted in everything in a user friendly way.
other possible improvements:
multiple learn-out for a single in-message (usefull to build snapshots)
editable parameters(range, toggle,hold..)
preset switching automation.

take a look to that topic
http://www.kvraudio.com/forum/viewtopic ... highlight=

Post

-PIKU- wrote:some ideas:
1)mouse position to cc. for some surround live effects... expecially using trackballs!
good idea. would be nice with a trackpad as well.
2)a learn-in learn-out plugin. it will work with notes and cc. usefull to remap controllers like doepfer's ones...
for every "conversion slot" that is added i can use learn-in to assign a note and learn out to assign a cc. so everytime i press that note it will be converted in a cc message.
everything can be converted in everything in a user friendly way.
other possible improvements:
multiple learn-out for a single in-message (usefull to build snapshots)
editable parameters(range, toggle,hold..)
preset switching automation.

take a look to that topic
http://www.kvraudio.com/forum/viewtopic ... highlight=
i think i understand what you mean... learn an incoming message, and map it to one or more learned outgoing messages. this may not be too hard if i do it with JUCE.
wrongtastic, baby
tucson's number one gothic rock band since 1995

Post

insertpizhere wrote:
-PIKU- wrote:2)a learn-in learn-out plugin. it will work with notes and cc. usefull to remap controllers like doepfer's ones...
for every "conversion slot" that is added i can use learn-in to assign a note and learn out to assign a cc. so everytime i press that note it will be converted in a cc message.
everything can be converted in everything in a user friendly way.
other possible improvements:
multiple learn-out for a single in-message (usefull to build snapshots)
editable parameters(range, toggle,hold..)
preset switching automation.

take a look to that topic
http://www.kvraudio.com/forum/viewtopic ... highlight=
i think i understand what you mean... learn an incoming message, and map it to one or more learned outgoing messages. this may not be too hard if i do it with JUCE.
Build this plugin and every year on the anniversary of its release the monkey and I will both lift our glasses in your honor for having broken our chains of dependence on inadequate hardware controller program memory.

Image

Post

SWEET! Thanks for making these for Mac, I will have to test them with Live!

I always loved your horrific synths as well :D

Also, my GF & I agree, this is one of the greatest accomplishments of modern art:

Image

Post

bobsled wrote:Build this plugin and every year on the anniversary of its release the monkey and I will both lift our glasses in your honor for having broken our chains of dependence on inadequate hardware controller program memory.
i guess i could see that as an incentive. i'll keep it in mind.
wrongtastic, baby
tucson's number one gothic rock band since 1995

Post

I have that album! I have all of them, also the piz tribute and soggy pants. The beats aren't tight, the bass isn't bassy, but the songwriting is always creative.

kodama wrote:SWEET! Thanks for making these for Mac, I will have to test them with Live!

I always loved your horrific synths as well :D

Also, my GF & I agree, this is one of the greatest accomplishments of modern art:

Image
The only site for experimental amp sim freeware & MIDI FX: http://runbeerrun.blogspot.com
https://m.youtube.com/channel/UCprNcvVH6aPTehLv8J5xokA -Youtube jams

Post

kodama wrote:SWEET! Thanks for making these for Mac, I will have to test them with Live!

I always loved your horrific synths as well :D

Also, my GF & I agree, this is one of the greatest accomplishments of modern art:

[img]
well, i see you have good taste! thanks. please do test them in Live... i only tried it in Tracktion. i've never tried Live on a mac, though i'm pretty sure this plugin won't work. but i think i know how to make it work.
wrongtastic, baby
tucson's number one gothic rock band since 1995

Post

RunBeerRun wrote:I have that album! I have all of them, also the piz tribute and soggy pants. The beats aren't tight, the bass isn't bassy, but the songwriting is always creative.
always? that's debatable. it's a great compliment though, thanks.
wrongtastic, baby
tucson's number one gothic rock band since 1995

Post Reply

Return to “Insert Piz Here”