Tap Tempo Revisited

Post your groups/layouts here

Moderators: davidv, seb@plogue

rob
Posts: 11
Joined: Sat Jul 23, 2011 3:36 am

Re: Tap Tempo Revisited

Postby rob » Mon Nov 07, 2011 6:15 pm

jersmi wrote:See if this version makes any sense. Major changes -- test!

This version uses two ways to create stability:
1. Set to require 4 taps to generate BPM. (4 taps seems to work better to create stable bpm. Can change this in tapCounter group).
2. If a pause is detected causing bpm to go out of range, holds last 'stable' bpm and waits for 2 taps to continue. "Padding" adds msecs to allow for taps close to desired bpm.

Also new: "taps2bpm" group averages current + up to last 4 taps.
There's also an "out of range" toggle setup in place to switch to "auto bpm", untested.



Cool, the extra tolerances make it much more stable however is still susceptible to swings when the beat jumps way out.

To reproduce, setup a MIDI step sequencer with any note on the 4/4 beat. Plug this straight into the taptempo group, set the ranges to say 110 low and 140 high. Hit play on step seq and it correctly locks at 120 (default for me). Then change the tempo in the step seq to 160. I assume taptempo is seeing the BPM speed up (but still in range) then works out it's heading out of range and stops at the last value that it thought was in range.

This is behavior is what often happens with audio analysers that lose the tempo lock for a little bit. Ideally taptempo would stay at 120 until it was confident the tempo really has shifted to the new value. To support this we would not have the output tempo updated until the last x BPM samples were the same.

To do this, would it be best to change the taps2bpm group, so instead of giving an average, it outputs the last known round(BPM) that was stable for 4 samples?


Thanks

jersmi
Posts: 3412
Joined: Tue Apr 19, 2005 4:18 pm
Location: Oakland, California

Re: Tap Tempo Revisited

Postby jersmi » Tue Nov 08, 2011 1:01 am

To support this we would not have the output tempo updated until the last x BPM samples were the same.

Ah, okay. I'd call this a special case, since tapping by hand is rarely consistent over 4 taps.

To do this, would it be best to change the taps2bpm group, so instead of giving an average, it outputs the last known round(BPM) that was stable for 4 samples?

Sounds like a plan. I separated the taps2bpm to be able to customize like this.

rob
Posts: 11
Joined: Sat Jul 23, 2011 3:36 am

Re: Tap Tempo Revisited

Postby rob » Tue Nov 08, 2011 4:11 pm

jersmi wrote:
To do this, would it be best to change the taps2bpm group, so instead of giving an average, it outputs the last known round(BPM) that was stable for 4 samples?

Sounds like a plan. I separated the taps2bpm to be able to customize like this.


Just tried but am having some problems with the prevX recursive function. No matter what speed I set, prevX(1), prevX(2), prevX(3) and prevX(4) are always the same value.

To reproduce, set range to say 15 - 80. Start sequencer at 20BPM, then change to 70. I'd expect the new values to ripple across as it re-measured up to 70 however all four update slowly but always with the same value. I had a look inside the tap2bpm group and appears to do the same thing. I tried doing prevX1-4 from the SH before tap2bpm and also the same. Am I missing something?

jersmi
Posts: 3412
Joined: Tue Apr 19, 2005 4:18 pm
Location: Oakland, California

Re: Tap Tempo Revisited

Postby jersmi » Tue Nov 15, 2011 3:02 am

I get the same results with the recursive function bidule. Using audio value display (terminal) to monitor time delta with taps, the monitored delta ouput signal shows different deltas between taps. The prevX(1), prevX(2), prevX(3) and prevX(4) functions all show the same value. Seb, shouldn't they all be different? Is this a bug?

seb@plogue
Site Admin
Posts: 9593
Joined: Tue Mar 02, 2004 7:23 pm
Location: Montreal
Contact:

Re: Tap Tempo Revisited

Postby seb@plogue » Tue Nov 15, 2011 10:59 am

If I debug a layout with a 1.0 constant feeding a Value List set to have 8 elements (1.0 through 8.0) feed it to the x input and debug I can see the rotating values into what is keeping the prevX, I also get the diff values if I do something like prevX(1) + prevX(2)

seb@plogue
Site Admin
Posts: 9593
Joined: Tue Mar 02, 2004 7:23 pm
Location: Montreal
Contact:

Re: Tap Tempo Revisited

Postby seb@plogue » Tue Nov 15, 2011 11:05 am

looking at the tap tempo layout: prevX gives access to the four previous values whether they are different or not, i.e. once you have 4 samples with the new value, all 4 will output the new value.

jersmi
Posts: 3412
Joined: Tue Apr 19, 2005 4:18 pm
Location: Oakland, California

Re: Tap Tempo Revisited

Postby jersmi » Tue Nov 15, 2011 3:07 pm

Thanks for looking into it, Seb. So the recursive function bidule keeps last 4 sample values instead of last 4 different values, ok. Not sure why I thought it was the other way around. :oops: back to the drawing board.

rob
Posts: 11
Joined: Sat Jul 23, 2011 3:36 am

Re: Tap Tempo Revisited

Postby rob » Sat Nov 19, 2011 1:49 pm

jersmi wrote:Thanks for looking into it, Seb. So the recursive function bidule keeps last 4 sample values instead of last 4 different values, ok. Not sure why I thought it was the other way around. :oops: back to the drawing board.


I assumed it was the last four samples. However, if I try and recursive the last four BPM's as output by taps2bpm I always get the same value.

taps2bpm-prev.PNG
taps2bpm-prev.PNG (15.65 KiB) Viewed 5428 times



I was hoping the above would catch the last four values generated by taps2bpm? Actually, at what rate do values come out of taps2bpm? I am, perhaps wrongly, assuming it's 1 value per BPM. I have a sneaking suspicion I'm wrong, perhaps it's coming out so fast we only ever see the same value? If so how do we slow down the sample rate? Perhaps TriggerClock on # samples a second / current guess BPM then, errrr? :-)

jersmi
Posts: 3412
Joined: Tue Apr 19, 2005 4:18 pm
Location: Oakland, California

Re: Tap Tempo Revisited

Postby jersmi » Sat Nov 19, 2011 4:05 pm

I dumped the recursive functions for a different method I think could work (using another accum to count taps with sample & holds). This samples/holds a tapped value and wraps around every four taps. Feel like it was a little too easy -- needs testing.
Attachments
TapTempo_v1.2.bgrp
(124.36 KiB) Downloaded 296 times

amGOam
Posts: 12
Joined: Fri Sep 04, 2015 4:10 am

Re: Tap Tempo Revisited

Postby amGOam » Sat Sep 05, 2015 5:27 am

Hi! I'm new on Bidule.
I want to use tap tempo to sync VST drum machine and other plug ins.
I wat to map the tap tempo with a simple button by my external control surface.

I alrady tried out all the layouts posted in this thread but i have two beginner questions:

What control (for example of jersmi metod) must I map to my c surface button?

Witch is the exactly chanis to distribute the tap to my Vst devices?

Simple questions :oops: but i hope very useful for other neophyte

amGOam
Posts: 12
Joined: Fri Sep 04, 2015 4:10 am

Re: Tap Tempo Revisited

Postby amGOam » Tue Nov 21, 2017 10:47 am

Hi,
i did this chain --> nanokontrol 1 --> NOTE Filter (A1) --> tap tempo v1.2 (with a1 note selected into the group)

Tempo doesn't change. what's wrong into my chain??

NTO
Posts: 111
Joined: Sat Feb 18, 2017 9:54 am

Re: Tap Tempo Revisited

Postby NTO » Tue Nov 21, 2017 1:43 pm

Seems that basically works. Couple questions...

2017-11-21_BiduleTapTempo2.png
2017-11-21_BiduleTapTempo2.png (71.37 KiB) Viewed 138 times

amGOam
Posts: 12
Joined: Fri Sep 04, 2015 4:10 am

Re: Tap Tempo Revisited

Postby amGOam » Tue Nov 21, 2017 6:59 pm

-Sync is ok, i synced a step sequencer and it start, the problem is that doesn't change the time
-Note on inside the group
-what you mean with "something about the count needed to trigger?

For the tempo display i don't know, what do you use into the image?

Anyway the problem is that doesn't change the time. heeelp

NTO
Posts: 111
Joined: Sat Feb 18, 2017 9:54 am

Re: Tap Tempo Revisited

Postby NTO » Tue Nov 21, 2017 7:31 pm

amGOam wrote:-Sync is ok, i synced a step sequencer and it start, the problem is that doesn't change the time

I have not "unwound" the group. jersmi's capabilities far exceed my experience... :shock:
but so far, it seems to me...
You have to be to link the VST tempo parameter(In) to the TapTempo BPM parameter(Out) in Bidule. I don't have any VST that exposes that parameter. Hence my question about that.
-what you mean with "something about the count needed to trigger?

I am not getting changes strictly at 4 taps, nor solely from a single note value. I *think* it has something to do w/the stay in range toggle :?: (see demo below where I have it turned off).
For the tempo display i don't know, what do you use into the image?

I am using a Audio Value display (terminal) from the monitoring menu to show what the sync extractor sees.

Anyway the problem is that doesn't change the time. heeelp

The group will change the tempo.
See this demo I've uploaded.
https://www.screencast.com/t/RxLpHfPTj

jersmi
Posts: 3412
Joined: Tue Apr 19, 2005 4:18 pm
Location: Oakland, California

Re: Tap Tempo Revisited

Postby jersmi » Wed Nov 22, 2017 12:40 pm

NTO -- um, what you are chasing here? If this tap tempo group looks over-complicated, it's probably because I was confused and couldn't spot the solution through my trials and errors.... :shock:

EDIT: Though on second look, seems everything should work as advertized in v1.2....


Return to “Bidule Layouts”

Who is online

Users browsing this forum: No registered users and 1 guest