First time here? Check out the FAQ!

frequency tracking of drum machine

0 votes
hello everybody,

I am trying to track the frequency o my NordDrum connected to one of the input of my audio interface.

amplitude foloower works fine, but frequency tracker does not.

is there something that I should do if I want to track the frequency of short sound like drums?


asked Mar 29, 2017 in Sound Design by domenico-cipriani (Master) (3,090 points)

3 Answers

0 votes
This is problematic for two reasons: most percussive sounds are not tonal at all and even if they are their overtones are not harmonic e.g. tom toms. Also they are mostly short which gives the tracker just a small time window to make a guess. In general if you want to do frequency tracking of some sample you should ask yourself: Is the sound even tonal? Am I able to sing the according note when hearing it? I know this is not really solving your issue, but it might help you to understand why you are getting problems in the first place. Cheers, Gustav
answered Mar 29, 2017 by kymaguy (Virtuoso) (10,580 points)
0 votes
Hi Domenico.
Yes, i don't think you can ever really expect accurate frequency tracking on percussive sounds. Amplitude tracking though, will always work well with percussive sounds.

it depends what you would like to achieve. One  thing to try could be to use the Monotonizer in Kyma which can give quite interesting pitch effects to sounds that have no pitch information.

Or the more classical treatment of Ring Modulation.... especially awesome in Kyma, is SingleSideBand ring modulation with high quality Hilbert shift and quadrature oscillators - you can find an example directly in the Kyma prototypes.
answered Mar 30, 2017 by cristian-vogel (Master) (8,370 points)
hello Cristian,
actually I would like to use it for synthesised sound with a quite distinct tone (not on hihats, noises or cymbals).
I don't need an accurate frequency tracking, I just need an aprroximative one.
What I am doing is sending data with your OSCsend tool to PureData Gem. So, for example, I would like to control rotation of a Gem object with the rising in pitch of a percussive sound.
Hello Domenico,
Since you are synthesizing the tone in the first place, are you also specifying its frequency?  Can the NordDrum output MIDI?  Perhaps this could help guide your pitch tracker?
0 votes
There are a few different approaches you might try: one would be to narrow the range of the FrequencyTracker; another would be to use a bank of frequency detectors (instead of a tracker); and another would be to control both the NordDrum frequency and GEM from the same control generator in Kyma.

To narrow the range of the FrequencyTracker, I would make a recording of the NordDrum signal and open the recording in the Kyma Wave editor. Select, then use the icon in Visible to make your selection fill the editing area. Keep zooming in this way until you see a single cycle. Position your cursor at the start of a cycle; then click the (+) in the Selection sidebar to select one full cycle. Then you can read the frequency and duration of that selection from the sidebar.  Once you get an estimate of the range of pitches in the recording, you can set the MinFrequency and MaxFrequency in the FrequencyTracker to give it a hint of where to look.

Alternatively, you could create a bank of EnergyAtFrequency modules.  You could set them to the frequencies you expect, or you could use a Replicator to create a bank of pseudo Helmholtz resonators.  When you hit a frequency near one of the resonators, its energy level goes up.

Since you are synthesizing the tones for the NordDrum, do you already know what the frequency is?  Or could you send the NordDrum its frequency by sending MIDIOutputEvents from Kyma?  In that case, you could have Kyma send the desired pitches to both the NordDrum and PureData using MIDI (or OSC).  Or could the NordDrum output a MIDI event each time you strike it?  You could receive that MIDI pitch in Kyma and change it into an OSC message for PD.

Hope one of these approaches can get you closer to what you need.
answered Mar 30, 2017 by ssc (Savant) (120,590 points)
thanks SSC,
narrowing the range of the FrequencyTracker helped me  to make it work.
As you suggest, now I am combining MIDI messages (as note on, pitch and ccs) sent to the MIDI drum to other analysis on the input. All data transformed in OSC messages with the OSC tools of the neverEngineLabs. it works good and I am building up an interesting "interface" with GEM.