Jump to content

Modulating track gain using fundamental frequency of audio file

Recommended Posts



I have a rather abstruse question. I'm trying to figure out a way to use the fundamental frequency from a recorded monophonic instrument track to modulate the loudness of a number of drone tracks. The idea is that when the recorded instrument "control" track approaches or reached the frequency of a particular drone that drone track will correspondingly become louder (in a perceptually smooth curve) while keeping the other drone track loudnesses the same. I'm interested in getting this kind of system working and building off of it as an expressive tool for performance. Does anyone have thoughts on how to accomplish this? Any plugins/tools would be acceptable, though using default Logic kit is preferable for convenience. Thanks in advance for any thoughts or suggestions you might be willing to volunteer.


Below is a probably very hard-to-follow description of the first attempt I made at making a system to do this. tl;dr bandpasses, Expanders with sidechains, sorta works but is terrible.


The set up is like so: Three drone tracks, each of which consists of a softsynth and an Expander plugin in the signal chain, outputting to the main project out. The control track is an audio track (a solo violin recording) sending to three busses, one for each of the drones. These first busses go to three separate Aux channels, each of which has a bandpass filter at the fundamental frequency of the drone track it will be modulating. These Aux channels then send to another set of busses. Each bus in the second set is sidechained to the Expander on the corresponding drone track. The idea is that the bandpass filters on the Aux channels will make it so the Expanders on the drone tracks increase the gain when the fundamental frequency of the control track is at or near their frequency, sort of like the classic sidechain compressor effect but in reverse and only at specific frequencies. One major problem with this is that the drone tracks' Expanders will be triggered when the note played on the control track is at or above their fundamental, a problem I figured could be fixed by adding compressors on the other Aux channels, but at that point I stopped because my brain hurt. The setup sort of works, but seems pretty overcomplicated and I feel like there ought to be better ideas out there.

Link to comment
Share on other sites

couple of ways to approach this.



if you think of having Audio as source: forget about it in logic.

I actually did a similar thing a while ago for *live audio*, but it was in Max.

I had microphone pickup an accordion, and the fundamental was detected, converted to pure sine wave, and used as a ringmod modulator source frequency for another accordion. (there were two accordions, one source, one modulator).


Fundamental frequency is something you need to detect first. (which is a task by itself and probably the biggest challenge here), then you need to scale it to something useful. Nothing of which logic is suited for really.

You could do a roundtrip to Max from Logic. (which is what i would do), but its cumbersome and probably overkill especially if you have your source in MIDI.



However, if you have source in MIDI, you can do something extremely simple:

- load gain plugin at the end of your ch strip chain

- load a MIDI plugin (modifier), and set it as in screeshot i attached. (thru enabled, input: note number)

- click "learn plugin parameter" in modifier, then wiggle gain with your mouse. your pitch is now directly assigned to level of your audio in the track.

now your pitch is directly affecting gain (or whatever parameters) in the ch strip.


the limitation of this is that MODIFIER only works with parameters on the same strip, so to bypass that you would need to move to environment and use modifiers in environment and hard-patch strips in one another. (Also doable, i once did a track using only Whitenoise as source and a series of EQ controlled by midi pitch)


Link to comment
Share on other sites

Thanks for the tips! That accordion project sounds super cool. I have had ambitions to learn Max for a while, perhaps this project will finally be the spark...


I haven't messed around much with MIDI plugins, the Modifier looks like a very neat tool.

Link to comment
Share on other sites

it is! it's like an "environment lite"


Yeah the whole thing was driven by logic, routed to Max and back to Logic (Via RME Loopback function, so latency-less hardware routing between apps - super cool thing), performed live. Logic serving as a synchronization source (click track), midi sequencer for Max objects, and pre-automated FX, and also as a mixer for live input+max synthesized/modulated input. :D


dunno if i'd dare run this setup for an hour, but for the 15minute idling and 10minute show-time it was ok.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...