Atte André Jensen wrote:
Rui Nuno Capela wrote:
when you import (or drop) a new audio file into
the qtractor time-line,
it's always assumed that the new clip is in tempo with the current
session.
I don't know if you're at all into blue/csound, but I did an instrument
called BeatPlayer, which automatically fits loops to the tempo of a
tune. You can check it out in blue share (if you have blue running).
Anyways the idea is pretty simple:
1) For this to work the loops you want to auto-fit must be truncated to
1, 2, 4, 8 etch bars (1/2 and 1/4 etc is ok too). Also I have a tempo
threshold which I set to 160, meaning the beats must be between 80 and
160 BPM (most of my beats are). Thoughout I'll asume 4/4 meter.
2) Supposed you have a 1 bar beat at 80BPM, sampled at 44.1, this will
be 60/80 * 4 * 44100 = 132300 samples long. Two bars will be 264600
samples, four bars 529200. This means that any 44100 beat fitting 1) and
beeing between 132300 and 264600 samples long will be one bar, and if
it's between 264600 and 529200 samples it will be two bars, etc.
3) Using 2) you can guess the number of bars (1/4, 1/2, 1, 2, 4, 8, etc)
and based on that and the length (and samplerate) you can calculate the
original BPM, and then you can figure out how much the beat needs to be
"transposed" or "stretched" fo fit the current tempo.
It's really a quite simple idea and it works very well.
Maybe something along these lines could be integrated into your program,
it sounds like it's what people are asking for...
Just my .02 :-)
thanks Atte,
your instructions are quite similar to the ones i've posted before, just
that you're being much more specific with the numbers involved and i was
just telling how to do it with the mouse-and-click way of things in
qtractor :)
however, it also assumes that tempo of a given loop is primarily derived
from the length or number of sample frames (or sub-divisions of it)
the other issue is about actual audio content vs. tempo and key
signature. suppose you have some file of a recorded drum beat performed
at any tempo X while the sample file length is arbitrary, that is, not a
multiple nor exact sub-division of a bar in that tempo X?
first you'll have to determine which tempo X is that, by earing and
tapping or using some kind of a beat-detector; once you know X then you
can start trimming the file to fit an exact multiple/division bar length
of X; only then you can time-stretch to fit against to yet another tempo Y.
the same applies to pitch and key signature detection. of course, all
this applies if you want to keep what i call musical and metric
coherence. if what you want to is breaking out new soundscapes, all this
workflow is moot ;)
afaict one purpose of the acid file meta-data is giving that tempo and
trimming information right from the sample file content; no need for
guessing.
otoh, it won't be a big surprise if those "high-end" loop-editor apps
includes some kind of beat and pitch-detection from the start, specially
when importing audio sample files from "unknown" sources ie. without the
proper meta-data filled in.
qtractor hasn't none. *you* are in control :))
--
rncbc aka Rui Nuno Capela
rncbc(a)rncbc.org