General project info - terraincognita

Name. KTDrumTrigger. Version. 1.0b5. Type. VST plugin. (MIDI drum trigger based on .... apply the groove to other parts, it might well do the trick and save you a lot of time :-) ... VST is a trademark of Steinberg Media Technologies AG.
130KB taille 0 téléchargements 285 vues
KTDrumTrigger

Koen Tanghe @ Smartelectronix

General project info Name

KTDrumTrigger

Version

1.0b5

Type

VST plugin (MIDI drum trigger based on incoming audio)

Author

Koen Tanghe @ Smartelectronix

http://koen.smartelectronix.com

p. 1 / 4

KTDrumTrigger

Koen Tanghe @ Smartelectronix

Documentation Processing Incoming audio is split up into different frequency bands (up to 24) using tweakable filters. The signal in each of these bands is sent through an envelope follower. When the envelope reaches a specified threshold level, a MIDI note on message is generated. The trigger module has some built-in hysteresis and minimum inter onset time settings to avoid fast successive triggers due to noise on the envelope curves. Visual feedback of the filter and trigger settings is available. Input • audio: mono • MIDI: none

Output • audio: mono • MIDI: triggered drum events

Parameters For each band X • FilterXType • FilterXCutoff • FilterXQ • FilterXGain • EnvFollowerXAttack • EnvFollowerXRelease • TriggerXThreshold • TriggerXHysteresis • TriggerXMinimumIOT • DrumXMIDINoteNumber • DrumXMIDIChannel • DrumXUseMIDIVelocity • DrumXCompanderRatio • DrumXCompanderThreshold • DrumXCompanderGain • MIDIXState • AudioXOutputGain • AudioXState • BandXState http://koen.smartelectronix.com

Type of filter: low pass, high pass, band pass or notch. Cutoff frequency of the filter (in Hz). Q factor of the filter (the higher, the "sharper"). Gain of the filter (in dB). Attack time of the envelope follower (in s). The smaller, the faster (but potentially noisier) the attack. Release time of the envelope follower (in s). The smaller, the faster (but potentially noisier) the release. Envelope level that must be exceeded (with a positive slope) for a trigger to be generated (in dB). Is subtracted from the threshold value and defines a threshold below which the envelope value must decrease before a new trigger can be generated (in dB). Minimum time between two successive triggers (in s). MIDI note number to be used for the trigger (0-127). MIDI channel on which the trigger note should be sent (1-16). If on, the velocity of the trigger note will be extracted from the audio. If off, 100 is used. Velocity scaling ratio. For expansion, use a ratio smaller than 1, for compression use a ratio bigger than 1. Velocity threshold below which compression/expansion should have no effect. Added velocity gain. Negative gain values are used with expansion, positive ones with compression. Determines whether MIDI output is enabled or not (on or off). Gain applied to this audio output before mixing it into the overall audio output (in dB). Determines whether audio output is enabled or not (on or off). Determines whether this band will be processed or not (on or off). p. 2 / 4

KTDrumTrigger

Global • AudioInputGain • AudioOutputMode

• AudioOutputGain • MIDIOutputGainFactor • VelocityScanTime • First shown channel

Koen Tanghe @ Smartelectronix

Gain applied to the audio input before processing (in dB). Determines what is sent to the audio output: - Mute: no audio output (silence) - Through: incoming audio input is passed through as-is - Filtered: mix of filter outputs Gain applied to the processed audio output (in dB). Factor by which all note velocities are multiplied. Time range over which velocity is calculated from the audio if “use velocity” is enabled (in s). Used to choose the 3 out of 24 channels that are visible in the editor (from 1 to 22).

Tweaking • As usual, Control+clicking sets the parameter to the default value and Shift+adjusting uses smaller steps for changing the parameters where applicable. • The filter settings can also be edited with the mouse in the frequency response views: - left-click changes both the cutoff frequency and the gain - holding down Shift while left-clicking changes only the gain - holding down Alt while left-clicking changes only the cutoff frequency - right-click changes the Q factor • The trigger settings can also be edited with the mouse in the trigger history views: - left-click changes the threshold level - holding down Shift while left-clicking changes the hysteresis value - right-click changes the minimum IOT • All other controls are just standard knobs, buttons or sliders. You know how to tweak these ;-) Some hints to get started • You will need to find out how to route the MIDI output of the plugin to the MIDI track or instrument you want it to be sent to. This is different in every host: - in track-based hosts (like Cubase), inserting the plugin on a mono audio track will usually add the plugin to the list of available MIDI inputs for your MIDI tracks - in modular hosts (like Bidule), you will see 1 input (audio) and 2 outputs (1 audio and 1 MIDI): just plug in two audio cables and a MIDI cable and you're all set More detailed info about setting up KTDrumTrigger in your favorite host can be found in the KTDrumTrigger section on the web site. • Since there are now 24 "channel strips" in the plugin, your audio track can contain 24 types of drum sounds that are spread over 24 different frequency ranges on a single track. In practice, the different types of sounds will probably always overlap too much in the frequency domain in order for this to be useful. But it’s there, just in case. Also, if you still need more, just put the audio output mode on "through" and insert another instance of the plugin after the first one. • For bass drums, use a low pass filter with a very low cutoff frequency. • For hi hats, use a high pass filter with a very high cutoff frequency and a high Q factor. • Snare drums can be tricky as they contain both low and mid (to high) frequencies. Use http://koen.smartelectronix.com

p. 3 / 4

KTDrumTrigger

• • •

Koen Tanghe @ Smartelectronix

a band pass filter with reasonable Q factor and try to find the cutoff frequency where you can see the biggest difference between peaks caused by bass drums (and maybe hi hats) and snare drums. After that, set the threshold so that it is just above the nonsnare drum peaks. If you get false triggers due to noise on the envelopes, increase the attack and/or release parameters of the envelope follower. The IOT and hysteresis parameters can help eliminate false triggers further by limiting the possibility of having multiple triggers too close to each other. Experiment for yourself…

Remarks • This is a rather simple system for finding drum onsets in an audio stream. It will probably only work reliably on isolated drum tracks (no mixed-in music), it's quite sensitive to volume changes and it might not always be possible to separate the different types of drum sounds using simple filters. However, if you just need a fast way of transcribing your isolated drum tracks into MIDI so you can tweak them further or apply the groove to other parts, it might well do the trick and save you a lot of time :-) • That said, no one says you *must* use this on drum tracks! You might come up with some other applications where this thing comes in handy or use it to extract a rhythmic sequence out of an instrument track (although this will only work with instruments that have clear onsets). As always: tweak those knobs and experiment! • The output of the plugin is delayed by an amount of time equal to the VelocityScanTime parameter. This is needed for the velocity extraction (you can only know how loud a drum stroke was after having listened to it for at least a very short amount of time). Good hosts will compensate for this delay when playing back tracks, but in live situations, delay compensation is not possible. Always try to find the smallest setting of VelocityScanTime that still allows you to get good velocity sensitivity. If you don’t need that, set the DrumXUseMIDIVelocity parameters to “off” and VelocityScanTime to the minimum value. All notes will then be played with a default velocity of 100. • Clicking the info text at the bottom of the editor shows the about with some version and contact info, and a quick reference of the various parameters. Click somewhere in the area below the header to go back to the main screen. • If you messed up your presets and want to revert to the "factory presets", you can load the included FactoryPresets.fxb bank to get a fresh start (of course you could also unload the plugin and then reload it). To get a default setting for only one of your presets, you can load the included Default.fxp preset. Acknowledgements Mac versions were built by Marc from DestroyFX. Legal stuff VST is a trademark of Steinberg Media Technologies AG

Thanks for not skipping the "read me" file! Koen Tanghe - 20060808

http://koen.smartelectronix.com

p. 4 / 4