< Back to IRCAM Forum

Improving tracking performance: bass guitar

Hi everyone!

I’ve been trying to get Antescofo to follow a short clip of bass guitar. As you’ll hear, it’s played fairly sloppily and the tone is relatively dirty. I’ve gone through the Antescofo calibration, but I can’t get it to sync, in fact it barely progresses from note to note.

I also checked fzero~ and that doesn’t fare any better at recognising separate notes. Perhaps in this case a pitch-based following algorithm isn’t appropriate, and I should try to set up a custom inlet?

I’ve attached the sound clip, score and Max patch I’m using.
Cheers!

1.txt (1020 Bytes)

Your example is a bass guitar… and it’s very very low! :slight_smile: For the solution, just replace your score by the one attached to this post. Two modifications to your score.

(1) To begin with, pitches in your score are all wrong! They are on the 4th piano octave (e.g. A4) whereas they are on the first (A1). You can easily overcome this by putting a @transpose -3600 in the beginning of your score!

(2) Since the input sound is VERY low, we need to change the default analysis parameters of Antescofo. In the new score I am doing this in the beginning of the score as antescofo::analysis 8192 512. Note that this is equivalent to sending the message “analysis 8192 512” to the Antescofo object in Max/Pd. The magic number here is “8192”… We use a long analysis window so that the poor algorithm can somehow see the low pitches. You only need this value for extreme cases (such as this). For low piano pitches in my experience “4096” is good enough.

The attached score has it all! It works much better but you’ll here that while it’s good on down beats it’s a bit off on up-beats. This is due to the tuning of the base. You can not work this one out with fzero~ or similar! Just too low for them! :slight_smile:

1_AC.txt (1.05 KB)

Awesome, thanks Arshia! I tried using A3 and A2 octaves and they didn’t work better than A4… didn’t occur to me to go down to A1 :slight_smile: Larger window size makes sense, too.

Yep, now the synchronisation works from measure to measure but some of the quick notes are lumped together - I guess this is as good as it gets with this kind of source material?

The main reason for which it works on my score is because of the change of analysis parameters. By default Antescofo uses “2048 512” which is good for regular mid-register instruments. I personally always use “4096 512” for better spectral resolution! For very low instruments we can increase the first parameter to 8192.
BTW You can see all the parameters used by Antescofo by sending an “info” message to the object.