On a fine day, 12-10-2003, gary pozner wrote: >It is hard to believe we used to have to this kind of math all the time >and now, it is gone with the brain cells. The weird thing is, when I >add 100 cents to a loop in Logic running at 120 it gives me the tempo as >127.1346. It only works out the same as your formula when I add 1200 >cents to make it an octave? I have been Doing the formula as (BPM) x >8.333 % x (the number of semitones) + (BPM) Well, again, 1 semitone increase is a frequency change by a factor of 2^(1/12). So that then also means the audio file tempo increases by the same factor. Makes sense: if you have a loop with a root note of C3, and you play C4, it'll all sound 1 octave higher -- i.e. double the pitch and double the bpm. So transposing a 120 bmp loop 1 semitone up would yield a tempo of 120 x 2^(1/12) = 127.13557 -- almost exactly what Logic gives you. Two semitones up gives 120*2^(2/12) = 134.7, et cetera. The 8.3 percentage is wrong. If you divide 100 by 12, you get 8.333% alright, but that's not how exponential growth works. If your bank gives you 5% interest per year, you *don't* get 10% interest in 2 years, but a wee bit more (since you also get 5% over the 1st year's 5%). Likewise you also don't get 100% in 20 years, but way more (1.05^20 = 2.65, so that's a 165% increase). Now apply the same to a 12-tone scale :-). >I wanted to build an excel chart for this. So I wanted to make >the formula as simple as possible. Easy. Let's suppose you want to use tuning in cents instead of semitones (for accuracy). Type the original bpm in cell A1. Type the transposition in cents in cell A2 (I.e. -1200 is an octave down). In A3 enter the formula: =A1*2^(A2/1200). That's your target bpm. The other way round also isn't very hard: given a source bpm and a target bpm, how much do you have to transpose the loop to reach the target? In A1: source bpm. In A2: target bpm. In A3: = log(A2/A1,2)*1200. A3 now contains the transposition you need in cents. If this fails (I've installed some extra Excel packages, and am not sure whether this log(num,base) function is one of them), this also works in A3: = log10(A2/A1)/log10(2)*1200. -- Hendrik Jan Veenstra h @ k n o w a r e . n l Omega Art: http://www.omega-art.com/
Message
RE: [EXS] Beats per minute
2003-10-13 by Hendrik Jan Veenstra
Attachments
- No local attachments were found for this message.