Jump to content

Confusion around tempo changes with audio regions etc - how can I change tempo and have region lock?


lostblues

Recommended Posts

I couldn't work out how to set the tempo for the song without weird buggy stuff happening like the regions changing length, so I just bounced the tracks out that I want to work on with flex and was going to try to rebuild it from there in a new session file. I find the Logic tempo stuff SUPER confusing and weird, and it seems inconsistent too. 

Anyway, I've set the tempo to 172 and imported the tracks I want to flex. As soon as I turn on flex for a channel, the speed of the audio goes way up (see attached screenshots - the first is 120pm, the longer looking one is 172).

To explain what I've done: I've edited all the piano so that it all sits cleanly at 172. I did this in a different session file because I couldn't work out how to get everything to stay cleanly without messing all regions up. I would now like to put the piano back into that original session with many other tracks and edit all other tracks around it, but I need to change the project bpm from 120 to 172 in order to have the click line up. How can I do this without changing the piano audio? As you can see I've tried protect track but that doesn't seem to work.

thanks

 

Screenshot 2024-02-24 at 11.36.53 am.png

Screenshot 2024-02-24 at 11.36.45 am.png

Link to comment
Share on other sites

From the top of my head, I would try the following;

If I understand well, you have an audio track that was recorded in Logic at 172 bpm. You managed to have that recorded audio piano to sit well at 172bpm. In such a case, that piano audio file now contains the 172bpm metadata. If it was Flex-analyzed, it now contains the tempo fluctuation around 172bpm.

If the final destination session/project is/was originally set to 120 while recording the other tracks and you want to crank that project tempo to 172 without changing those already recorded tracks, don’t flex them. Instead remove their tempo information. Set the project to 172bpm. Set your project Tempo mode to ADAPT. Then import your audio piano track.

If the other tracks had been recorded to 172bpm (regardless of the 120bpm then set), try to sync them to the audio piano track using Groove track (making the audio piano track the star one) could do the trick.

OTOH, if the other tracks had been recorded following the 120bpm metronome beat, you will likely need first remove their embedded tempo information (for the audio regions) then resort using other methods to align them to the proper tempo changes such as time-stretching/compressing them and use beat mapping.

For safety purpose, try the above on a backup copy of your original projects and audio files…

There might other approaches…

 

Link to comment
Share on other sites

Thank you so much for responding firstly, I appreciate the time and thought you've put into my post.

I'll try to respond to your points:

The initial recording was just played freely. In fact it's actually a bounce from tape. Lots of tracks were then overdubbed in the digital domain. No tempo was applied to anything until the editing stage (not great practise but here we are). So the project is only at 120 because that is the default tempo. I have worked out roughly the best tempo is 172 and I now want to adjust all tracks to sit at 172 and my plan was to flex all of it to sit at 172.

Let me know what you would consider the best method considering that information. The best thing might actually be to just start over and import tracks in one at a time and re-build it from scratch.

I still don't understand any of the tempo stuff in Logic though really - is there a good resource somewhere that explains it?

Edited by lostblues
Link to comment
Share on other sites

20 hours ago, lostblues said:

I still don't understand any of the tempo stuff in Logic though really - is there a good resource somewhere that explains it?

Considering your explanation, I would suggest starting from scratch as you suggested using the Smart Tempo features/functions in Logic.

There are many tempo functions in Logic. Starting with the Apple readily available documentations is a good start.

David’s book is highly recommendable to acquire a solid insight into Logic work. And since @David Nahmani actually host this website, the support is unbeatable.

Eli Krantzberg’s video tutorials on Groove3 are definitely a reference, among those offered on that platform, which are offers few other good courses.

Youtube contains many other sources, but IMHO, most of the time, they aren’t deep and contain lots of self promoting chit-chat.

There is also dedicated topics on this website that lists attendees recommendations for various Logic tutorials which you may find interesting.

 

Edited by Atlas007
  • Like 2
Link to comment
Share on other sites

It's actually quite easy to explain.

- set the tempo to a number. Any number. Like, 172 bpm

- import some audio. Any audio. Like, some audio that was not recorded at 172 bpm. Most audio wasn't.

- turn on Flex on the new Region

Logic will detect one of three things. Either

- the imported audio has Tempo information embedded which states that it was in fact recorded at 172bpm. Then nothing will happen to the length of the Region, since recording Tempo and playback Tempo are identical. Unlikely, but possible.

or

- the imported audio has Tempo information embedded which states that it was *not* recorded at 172bpm. Then Logic will speed up or slow down the Region so its speed now matches your new playback Tempo of 172 bpm

or

- there is no Tempo information embedded in the audio file. Now Logic will assume 120bpm, speed the region up to 172bpm and you only get correct results if your song happens to be 120bpm by coincidence.

So what you see is expected behaviour if the recording Tempo is different from the playback Tempo.

There are two ways to get around this, depending on the source of the audio file.

Edited by fuzzfilth
  • Like 2
Link to comment
Share on other sites

It was explained above, but in the plain terms, the reason for regions changing length when you engage flex is really simple:  the regions have tempo information embedded in them, and it's a different tempo than your session is at currently.

FYI, tempo information gets "burned" into a file when you engage flex for the first time, and then this metadata stays in the file (unless you manually change it). So say your session is 120bpm, you engage flex on a track, and boom, suddenly all files on that track are branded as 120bpm (even if that doesn't make musical sense). If you import these into another session that's 172bpm, the files all still say "hi I'm 120bpm" under the hood, and as soon as you turn on flex, they'll instantly get shorter because Logic is trying to play them back faster (120bpm files now playing at 172bpm speed). The main thing is:  the files' tempo metadata and session's tempo are a mismatch.

To fix a mismatch like this, you need to manually reset the tempo data of the file(s).

 

In your case I would:

1) In your edit session, merge all files starting from the nearest bar (important). This will render all your edits and ensure everything stays on the grid.

2) Turn flex OFF. This should now sound good at 172bpm with no flex whatsoever.

3) Import these into your destination session & make sure it's set to desired tempo (172bpm). With flex still OFF, right click these files and choose Tempo->Write Project Tempo To Audio File. This basically says "brand these files as 172bpm instead." Now engaging flex will do nothing, because the file (172bpm) matches the session (172bpm).

Link to comment
Share on other sites

Grubmanus is right on the money except this:

9 hours ago, grubmanus said:

tempo information gets "burned" into a file when you engage flex for the first time

This is not true. TI gets embedded into a file either when it is created (recorded, bounced, merged) or manually with Write Project Tempo To Audio File. Engaging Flex does not write TI to the file, but existing TI is being read from the file.

And to correct my previous post - since I generally tend to check if my claims are true (if just to spare me from some embarrassment), I just found that trying to Flex an imported file that has no TI embedded does *not* cause Logic to assume 120bpm and change the speed of the Region to the Project Tempo. Actually it does not assume anything then, so engaging Flex does not change speed of an imported Region which has no TI embedded. 

Edited by fuzzfilth
Link to comment
Share on other sites

Thanks, you're right. I should clarify though:  tempo information does get burned into a file when engaging flex for the first time when the file has no pre-existing tempo information. This is common when dragging in audio from elsewhere. Also, processing audio in other software can sometimes strip the tempo metadata, so it's a good concept (potential pitfall) to be aware of for those learning.

Otherwise though, very true: Logic just tries to handle all this automatically by writing tempo info to any file created in the DAW, which is probably 90% of the time for most people & sounds like the OP's case here.

Link to comment
Share on other sites

40 minutes ago, grubmanus said:

tempo information does get burned into a file when engaging flex for the first time when the file has no pre-existing tempo information.

I cannot confirm this. 

- record an audio file
- Smart Tempo Editor (quickest way to check whether an audio file contains Tempo information) shows this:Bildschirmfoto2024-02-29um22_49_47.png.cc988a18cdb4fefdbb2607e876a652aa.png

- after Remove Tempo Information from Audio File, Smart Tempo Editor shows this:

Bildschirmfoto2024-02-29um22_48_04.thumb.png.6e99d0ef38a126e44fea2c75afc561fb.png

- after engaging Flex on this Region, Smart Tempo Editor still shows this:

Bildschirmfoto2024-02-29um22_48_04.thumb.png.62ade195985ac89f535f0963220217fa.png

This lets me think that engaging Flex on an audio file that has no Tempo information embedded does not write any Tempo information into that file.

How do you get to the contrary conclusion that it does ?

Link to comment
Share on other sites

Well I was going to say daily experience, but after running a few quick tests, I just learned something!

Here's what I do all the time:  kick files out of Logic (say vocals), edit elsewhere, dump back into Logic into a song that has since sped up. These new (edited) files have tempo info stripped. So the pitfall is, you have to make sure to initially engage flex at the original tempo (not the new faster tempo), or else they're permanently stuck out of time. They "lock" in place relative to the grid/session upon that initial flex button press, so you obviously need to be sure to do so at the appropriate tempo.

Now what I assumed was going on under the hood was that tempo metadata was being written to the file, and that's how Logic handled their flex behavior. But I'm very surprised to see that in fact this only holds true for the local session, not the actual files themselves. Meaning if you drop these same files into a different session (which I guess I've never done before), you get another fresh chance to "lock" them in at whatever tempo you want.

Now I wonder where Logic is actually storing that info.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...