Align two music tracks in audacity

When creating a karaoke track I often need to align the mp3 karaoke file with the original recording. If I am very lucky, both tracks will have a steady BPM throughout. Then I can select as large a portion of the original track as possible - say from the first snare to the last snare-and note the exact length in seconds.
Now I select the same portion of the MP3 track and adjust the tempo to exactly align the two tracks.
Often the unselected parts-the intro and outro-can be left untouched.

As you might appreciate, this is a drudge. But in reality it is a multiple drudge since very few drummers can keep their tempo to a precise degree (metronome, anyone?). Then I might identify where the tempo starts to wander and apply my tempo corrections from there.

My productivity would increase enormously if there was an effect that automated this process. How?

I am not a coder-apart from some BASIC experience from the 80’s. But the required process would look like this:

Align two music tracks in audacity

  1. Find each snare on the reference track (A) and log its precise time.
  2. Find equivalent snare on the track to be aligned (B) and log its precise time.
  3. Use something like Paul Stretch or Tempo change to adjust the inter-snare gaps in the karaoke track (B) to match their equivalents in the reference track (A).
  4. The tracks should now be aligned between the first and last snares.
  5. Align the first snare of each track.

Done. Any takers?
Or is there an easier way that I am missing? Any comments or suggestions are welcome.

The effect that you are describing would be “possible”, but extremely difficult. I’m guessing that you don’t have an unlimited budget to pay a team of developers to work on this :wink:

Quite possibly, but I don’t have a clear mental picture of what you are trying to do.

What do you mean by “creating a karaoke track”, and why do you need to synchronise it with another recording?

I’m a poor old pensioner so budget…limited.

Let me explain in more detail:

A karaoke track actually comprises two computer files;

  1. The mp3 file. What you hear from the speakers in a karaoke joint.
  2. The cdg file which contains the graphics information. What you see on the monitor. The intro and outro screen with the lyrics in between.

I obtain an mp3 file from (typically) karaoke-version.co.uk. Let’s use Jingle Bells.mp3 as an example.

I obtain the song lyrics and convert it to a txt file.
Using Karaoke Builder Studio (other software is available) I synchronise the lyrics to the music by tapping my keyboard in time with the music.
I save the result as a cdg file (Jingle Bells.cdg)
I now have two files which can be used by any karaoke player software to play the music while the lyrics are displayed on screen.

That’s a simplified account of the process. But the closer the karaoke music is in sound and tempo to the original recording, the easier it is for the karaoke singer to follow. So I always sync the cdg file to the original recording first. If the karaoke mp3 is perfectly matched in tempo to the original recording, then job done. But the two tracks are almost never perfectly matched in tempo. Even if they both start and end simultameously (very unlikely), one or both may stray slightly within the music track (a virtual certainty).

Now my real work begins. I need to align the music tracks exactly, both at the start and at the end. Then I cross my fingers that the drummer in either track didn’t slow down or speed uo during the recording (virtually unknown). But sometimes it’s near enough so I leave it at that. But there’s alway some matching to be done. Sometimes it’s the guitar solo that goes on a fraction of a second too long. Sometimes there’s a pause in the music that’s either too long or too short.

I know that all sounds complicated. And it is. So any help I can get in sychronising the music tracks would be of enormous help.

Which / what music are you synchronising to?

I don’t understand why you have two different versions of the music. You said that you have an MP3 version of the music. Where does the other version of the music come from?

Steve

I obtain an mp3 file from (typically) karaoke-version.co.uk.

That’s the karaoke file. It’s the song without the lead vocal and it invariably comes as an mp3 file.
If you go to karaoke-version.co.uk you’ll see all the karaoke tracks available. You can listen to samples of each.
The original music track I can grab from one of my CDs. You can also download most tracks from YouTube then discard it once the karaoke file is created in KBS.

So you have a “karaoke” MP3 version without the lead vocal, and a “CD” version (the original song with vocals).

Why do you need the CD version?
Can’t you use the karaoke version throughout the process?

Is it because you are making karaoke versions of songs that you don’t know?

I said earlier:

But the closer the karaoke music is in sound and tempo to the original recording, the easier it is for the karaoke singer to follow. So I always sync the cdg file to the original recording first. If the karaoke mp3 is perfectly matched in tempo to the original recording, then job done. But the two tracks are almost never perfectly matched in tempo. Even if they both start and end simultameously (very unlikely), one or both may stray slightly within the music track (a virtual certainty).

Sorry but I don’t understand why you need the CD version. From your description it seems that you could just use the karaoke version and the problem wouldn’t occur. Perhaps I’m missing something, but I can only go on the information provided by your description.

Okay, Steve, one more try.
You have the lyrics loaded into your karaoke creation software. Karaoke Builder Studio, in my case.
You separate the lyrics into syllables. So Jingle Bells would begin:

Jin-gle Bells
Jin-gle Bells
Jin-gle all the way

That’s 3 syllable on each of the first two lines and 5 syllables on the third line.
You hit Sync and the music begins to play. You tap the spacebar at the instant you would sing each syllable.
So you’d go:

tap-tap-tap
tap-tap-tap
tap-tap-tap-tap-tap

in time with the music.

Now, if you used the karaoke file as per your suggestion, how would you know when to tap since the karaoke file has no vocals. i.e., nobody is singing?
You could just let the song run through your mind and tap to the song as you remember it. But then you would need to have the timing of the lyrics absolutely 100% in your memory. With Jingle Bells, that would probably work OK.
But when you are doing a song that you don’t know absolutely spot on, you will get a lot of the timing wrong. Trust me.
What you want is for the lyrics to appear on-screen at precisely the correct time. That’s why you use the original recording. You tap along with the singer on the record.
Here’s something you could try: sit down with another person and play a karaoke track of a song you both know well. Now you both sing along to the karaoke track. I guarantee that you will not sing perfectly together in time.

So it is because you are wanting to make a karaoke version of a song that you don’t really know. Perhaps it’s because I’m primarily a musician that I assumed you would know the song well enough to sing it if you had the lyrics in front of you and could hear the backing track.

So, taking that into account, could you do this:

  1. With the CD version in your karaoke making software, enter the lyrics as you do now.
  2. Then replace the CD version with the karaoke version in your karaoke making software.
  3. Adjust the position of the words in the karaoke software as necessary to line up correctly. When necessary, listen to that part of the CD to refresh your memory.

Now you’ve got it. Apart from the last sentence.
I need to make the karaoke track sound familiar to any Tom, Dick or Jane, not just myself.
People get up to sing at karaoke nights with the song firmly in their minds. Thinking they know that song very well (even though some of them don’t, so why they get up to attempt it is beyond me.)
Other than that, what you propose is exactly what I do. With some songs (Jingle Bells) I could sync the song pretty easily.
But here’s where it gets tough. Say I wanted to make a karaoke track for Engelbert Humperdink’s version of The Power Of Love.
I look around for a good karaoke mp3 track and find only one. And it’s crap.
What do I do?
I find a track for the Jennifer Rush version. Or Celine Dionne.
Oops! They are both over 6 minutes long compared to Engelbert’s 4 minutes. So I use Audacity to chop out the verse(s) she does but Engelbert misses out. Then I sync my lyrics to Jennifer Rush cut-down file. Sounds easy, doesn’t it? But Jennifer’s phrasing is completely different from Engelberts. So I fit the lyrics sung by Engelbert to the karaoke file that should be close to the original by Jennifer. But wait… Aaaarrrrggggh! Engelbert’s drummer wouldn’t know the difference between a time-signature and an egg timer. He’s all over the place. Speeding up here - slowing down there. I spend at least as much time tweaking and dragging as I do on all other aspects of the job combined just to align the lyrics with his erratic drumming.

Now…

If I could run both tracks through a cheeky little plug-in in Audacity that aligns both tracks according to the snare/bass or whatever, life would be so much easier. And that’s where I came in.

There’s no way that any software can do that. Humans are not obsolete yet :wink: