Subject: [linux-audio-dev] ReLoop-style sample splitting?
From: Frank Neumann (Frank.Neumann_AT_st.com)
Date: Mon May 28 2001 - 13:29:36 EEST
Hi,
I was thinking for a few days about ways to split a short drum loop into
a couple of smaller samples which should ideally begin at the bass,
snare, hihat etc. points. I'm wondering what the best way would be to
find this out - it's basically what ReLoop from the Propellerheads does,
and judging from their freely available demo version, it's not too
computationally complex - you can move a round a "coarseness" slider,
and it will insert additional split points almost instantly.
My first ideas would be to do something like:
- Produce a shorter "overview file" of the loop so I have less data to
look at
- make a few copies (3 e.g.), of which one is filtered low-pass to find
the bass drum, one band-pass filtered for the snares and one high-pass
filtered for hihats/crash cymbals.
- Now look through the data left-to-right and create some kind of
histogram of energy over time so I can seperate the real hits from the
remaining "noise".
- In the end fine-tune the start/length value pairs so they align nicely
with the original-size sample. Here I'd probably take some approach of
looking at the differences between single sample points (in a small
range of time) to find where "the kick takes off".
Is this a feasible approach? If not, what flaws are in there, or what
superior methods can you think of to perform this task? Please let me
know of any ideas. E.g., I was also thinking if a speed detection
algorithm (determine BPM) should be run first.
Thanks,
Frank
-- Frank Neumann (Frank.Neumann_AT_st.com), VIONA Development Center ST Microelectronics, Karlstraße 27, 76133 Karlsruhe
This archive was generated by hypermail 2b28 : Mon May 28 2001 - 15:06:28 EEST