- Home /
Synch clips with BPM
Hi everyone,
I've searched the forum and found no appropriate answer for this, and since the documentation does not show any entry on what I am asking, here follows:
I have one base audioclip - a music track for a game - with, let's say, 120 BPM. On a given time I want ot synch, with BPM, another clip, again in 120 BPM and in the same musical scale as the previous one, so that they are seamlessly integrated, just as one track.
Problem: How do I synch two (or more) different audiclips using BPM as reference without using some sort of time-based hack?
Answer by StephanK · Aug 27, 2010 at 10:45 AM
BPM is time-based, so everything you do to sync will be time-based. If your clips start without any preroll (that is sample 0 is the first downbeat of the song) you can easily calculate the exact beats and bars position from audio.time. If not you will need some meta-data about the audioclip to figure that out. (e.g. time of first downbeat) In some cases you could also find that out doing some audio analysis, but that is out of the scope of unity's audio features.
If you want to sync audioclips to a certain tempo which initially have a different tempo you could try to achieve this using pitch, but that will mess up the tuning and will only work for small differences.
Answer by Recluse · Jun 24, 2015 at 03:01 PM
If the clips are the same tempo and looping, can you simply play them both on Awake and then lerp between volume levels?
Your answer
Follow this Question
Related Questions
Audio Scripting 1 Answer
Question about audio (AudioSource). My ingame sound doesn't sound like the original audio file? 3 Answers
How to stop footstep sound when jumping, but continue when hitting the ground? 1 Answer
Play sound on animation event? 3 Answers
Stop audiosource clip from playing 1 Answer