Old 09-23-2018, 05:34 AM   #121
sjs94704
Human being with feelings
 
Join Date: Mar 2017
Location: Berkeley, CA USA
Posts: 975
Default

OK, so, let's approach it from this direction...

I have lots of songs and several of them say 'variable' while most others give a specific tempo. For the ones that don't, I realize it is largely subjective, but, if I was going to go about finding and selecting a single tempo for the whole song, any suggestions on things I might do to at least try to find a reasonable tempo that I can then set in Reaper without spending too much time getting there?

Before anyone says it, I'm not looking for that 'perfect' sweet spot. What I am asking about is the method I can use to go about finding a tempo that works for me ......
__________________
Bayside Studios, Berkeley, CA - Music That Brings People Together
Come visit me at: https://soundcloud.com/bayside-studios
sjs94704 is offline   Reply With Quote
Old 09-23-2018, 12:07 PM   #122
JamesPeters
Human being with feelings
 
JamesPeters's Avatar
 
Join Date: Aug 2011
Location: Near a big lake
Posts: 2,505
Default

Quote:
Originally Posted by sjs94704 View Post
if I was going to go about finding and selecting a single tempo for the whole song, any suggestions on things I might do to at least try to find a reasonable tempo that I can then set in Reaper without spending too much time getting there?

Before anyone says it, I'm not looking for that 'perfect' sweet spot. What I am asking about is the method I can use to go about finding a tempo that works for me ......
The first video explains this rather well.

If you mean "just a general ballpark", you can tap the BPM button in time with what you think every beat is, and the project tempo will change to that. (Keep the metronome on when doing this and you'll hear if you're close or not.) You'll have to have the timebase set to "time" otherwise the audio files will stretch. Also when you set the tempo, even if you get it 100% accurate, it's most likely the audio won't be aligned to the grid and you'll have to move it all to be aligned.

And, if you plan to assign a tempo and then use the metronome, you'll want it accurate. So starting by tapping the BPM button is ok but you'll still want to do what those videos show. Having a slightly off tempo is horrible. After the music plays for a while, your metronome will drift to the point where you'll be so out of time it'll be worse than having no metronome. So this is an all-or-nothing situation; you won't want to half-ass it. Also if the tempo changes during the song, it'll be even worse than that.

So either decide to tempo map it properly/accurately, or not at all.

Again, you're a singer and I assume you're relatively familiar with the songs you're covering. You shouldn't need to have the metronome enabled, and thus you won't need a proper tempo map.
__________________
http://petersamplification.com
Core i3-6300 - MSI B150M Mortar - 8 GB RAM - Asus Xonar DX - Linux Mint 19.1 (64-bit) - REAPER for Linux
JamesPeters is offline   Reply With Quote
Old 01-01-2019, 08:45 AM   #123
Plentos
Human being with feelings
 
Join Date: Dec 2018
Posts: 2
Default

Do you know which script that www.getsongbpm.com is using ? As I have said before I want to build a new website that could help visitors to find the BPM of any song...

Last edited by Plentos; 01-13-2019 at 04:44 AM.
Plentos is offline   Reply With Quote
Old 01-02-2019, 12:35 PM   #124
jrk
Human being with feelings
 
Join Date: Aug 2015
Posts: 597
Default

Quote:
Originally Posted by Plentos View Post
Hello,
Does anybody here know the technic how websites like getsongbpm work ?
I want to build a new website that helps visitors to find the tempo of a song...
Thank you
Well, the easiest way is to look it up. If you don't have access to a bpm database you'll have to work it out...

Start here: https://ieeexplore.ieee.org/document/1415691
__________________
it's meant to sound like that...
jrk is offline   Reply With Quote
Old 01-26-2019, 03:19 PM   #125
MusoBob
Human being with feelings
 
MusoBob's Avatar
 
Join Date: Sep 2014
Posts: 839
Default

Once I have a tempo map in Reaper how can I drag a drum track in, set the bmp of that track if not an Acid track and fit it automatically to every tempo change like I can in Studio One.




In Reaper I have to split the Acid drum track at every tempo marker or mess around adding stretch markers. As you can see the middle acid track does not adjust at the bar but the whole track.

MusoBob is offline   Reply With Quote
Old 02-14-2019, 01:03 PM   #126
kirk1701
Human being with feelings
 
kirk1701's Avatar
 
Join Date: May 2015
Location: Ontario
Posts: 790
Default

This may have been answered already, but I just tempo mapped a reference track and only the track itself is mapped. There's atill four bars in front of the track that aren't on the same grid. How do I snap the entire project to the track's tempo?
__________________
"I've never trusted Klingons and I never will. I can never forgive them for the death of my boy."
kirk1701 is offline   Reply With Quote
Old 02-14-2019, 01:26 PM   #127
G-Sun
Human being with feelings
 
G-Sun's Avatar
 
Join Date: May 2010
Location: Norway
Posts: 7,228
Default

Quote:
Originally Posted by kirk1701 View Post
This may have been answered already, but I just tempo mapped a reference track and only the track itself is mapped. There's atill four bars in front of the track that aren't on the same grid. How do I snap the entire project to the track's tempo?
Set timebasee to beat and set time0 tempo-marker to match desired tempo.
__________________
Reaper x64, win 8.1
G-Sun.no - Music Blog - My music
G-Sun is offline   Reply With Quote
Old 02-18-2019, 05:08 PM   #128
MusoBob
Human being with feelings
 
MusoBob's Avatar
 
Join Date: Sep 2014
Posts: 839
Default

This will fit any item to the tempo map but loops/lengthens a section (or shortens if going down in tempo) on the end when it changes playback rate, not sure how to avoid that so I just set it to not loop but the length is still added, so just adjust it manually before gluing.

Here's some Drums to try (there's no embedded tempo though it will work with embedded tempo also)
https://www.dropbox.com/s/iyc2il43za...pm120.wav?dl=1
just create a tempo map, drag the wav in, run the script on the selected item, set it to 120.

Here's the Lua script

EDIT: Updated
Here's an updated script to try, just set the item on the start beat, run the script and set the items original tempo in the popup.
Let me know if it works for you.

right click Save Link/Target As
ReaTrak set item bpm and fit to project tempo map.lua

Watch Video


Code:
    -- Display a message in the console for debugging
    
    function Msg(variable)
      reaper.ShowConsoleMsg(tostring(variable).."\n")
    end
    cur_pos = reaper.GetCursorPosition()
    retval, org_bpm = reaper.GetUserInputs("Set Item's Original Tempo", 1, "Enter item's tempo (bpm):", "" )
    
    if retval then
    reaper.Main_OnCommand(40042,0) -- Transport: Go to start of project
    tempo_markers_count = reaper.CountTempoTimeSigMarkers(0)
    for i = 0, tempo_markers_count - 1 do
    
        reaper.Main_OnCommand(40759,0) --Item: Split items at edit cursor (select right)
        retval, timepos, measurepos, beatpos, bpm, timesig_num, timesig_denom, lineartempo = reaper.GetTempoTimeSigMarker(0, i)
        item = reaper.GetSelectedMediaItem(0, 0) 
        take = reaper.GetMediaItemTake(item, 0)
        playrate = bpm / org_bpm
        reaper.SetMediaItemTakeInfo_Value( take, "D_PLAYRATE", playrate )
        reaper.Main_OnCommand(41821,0) --Move edit cursor to next tempo or time signature change
        
    end    
        
    reaper.SetMediaItemInfo_Value(item, "B_LOOPSRC", 0)
    
    Info2 = [[
      
    "If you want to glue the items together"
    
    "make sure the end is correct"
      
    "else cancel out and adjust it"
    
    "then Remove fade in and fade out then glue" ]]
    
    reaper.MB(Info2, "Information", 0)
    
    
    retval,input  = reaper.GetUserInputs("Glue Items", 1, "This will glue split item", "")
    
    if retval then
       reaper.Main_OnCommand(40421,0) --Item: Select all items in track
       reaper.Main_OnCommand(41193,0) --Item: Remove fade in and fade out
       reaper.Main_OnCommand(41588,0) --Item: Glue items
    end
    reaper.SetEditCurPos(cur_pos, 1, 0)      
    
end

Last edited by MusoBob; 06-25-2019 at 03:44 AM.
MusoBob is offline   Reply With Quote
Old 04-17-2019, 08:14 PM   #129
hopi
Human being with feelings
 
hopi's Avatar
 
Join Date: Oct 2008
Location: Right Hear
Posts: 14,632
Default

Breeder... seems like the download link in first post is broken? goes empty page with a 500 error???
__________________
...should be fixed for the next build... http://tinyurl.com/cr7o7yl
https://soundcloud.com/hopikiva/angel-rain
hopi is offline   Reply With Quote
Old 04-18-2019, 03:14 AM   #130
Breeder
Human being with feelings
 
Breeder's Avatar
 
Join Date: Nov 2010
Location: Croatia
Posts: 2,109
Default

Quote:
Originally Posted by hopi View Post
Breeder... seems like the download link in first post is broken? goes empty page with a 500 error???
Haha - it's fixed now, thanks! I think the broken link was the relic from the olden days during website redesign by Jeffos.
Breeder is offline   Reply With Quote
Old 06-03-2019, 04:53 PM   #131
MusoBob
Human being with feelings
 
MusoBob's Avatar
 
Join Date: Sep 2014
Posts: 839
Default Tempo Map from Sonic Visualiser or Audacity Win\Lin\Mac

This uses the SWS Convert project markers to tempo markers..
You can start Sonic Visualiser or Audacity from Reaper
Code:
os.execute [["C:\Program Files\Sonic Visualiser\Sonic Visualiser.exe"]]
you can change it to your mac path.


Tempo map from audio to Reaper

Audacity load your audio file
Analyze > Add Remove > Enable Tempo and Beat Tracker: Beat (& Beat Count)(& Bars)
Analyze > Tempo and Beat Tracker: Beat (or Beat Count)(or Bars)
File > Export > Labels

Sonic Visualiser load your audio file
Transform > Category > Time > Tempo and Beat Tracker: Beat (or Beat Count)(or Bars)
File > Export Annotation Layer txt or csv
https://www.sonicvisualiser.org/ Win/Lin/Mac

right click Save Link/Target As

ReaTrak audacity import bars or beats.lua

ReaTrak sonic visualiser import bars or beats.lua


Chords from audio to Reaper
Audacity load your audio file
Analyze > Add Remove > Enable Chordino: Chord Estimate
Analyze > Chordino: Chord Estimate
File > Export > Labels

Chordino Vamp Plugin
http://www.isophonics.net/nnls-chroma

Sonic Visualiser load your audio file
Transform > Chordino
File > Export Annotation Layer txt or csv
https://www.sonicvisualiser.org/ Win/Lin/Mac

Chordino Vamp Plugin
http://www.isophonics.net/nnls-chroma


right click Save Link/Target As

ReaTrak audacity chordino chords to regions.lua

ReaTrak sonic visualiser chordino chords csv txt to regions.lua



Thanks again to X-Raym Donation for Import markers and regions from tab-delimited CSV-TXT file.lua

The script will ask if you want to set the bar 1 start marker,
in the pic of a drum track bar 1 starts on marker 6 (bar 2 beat 2)






__________________
ReaTrakStudio Chord Track for Reaper forum
www.reatrak.com

Last edited by MusoBob; 06-26-2019 at 01:06 PM.
MusoBob is offline   Reply With Quote
Old 06-25-2019, 03:46 AM   #132
MusoBob
Human being with feelings
 
MusoBob's Avatar
 
Join Date: Sep 2014
Posts: 839
Default

Here's an updated script to try, just set the item on the start beat, run the script and set the items original tempo in the popup.
Let me know if it works for you.

right click Save Link/Target As
ReaTrak set item bpm and fit to project tempo map.lua

Watch Video
__________________
ReaTrakStudio Chord Track for Reaper forum
www.reatrak.com
MusoBob is offline   Reply With Quote
Old 06-25-2019, 11:18 PM   #133
MusoBob
Human being with feelings
 
MusoBob's Avatar
 
Join Date: Sep 2014
Posts: 839
Default

I updated this to give a bar or [grid] beat option (so if you right click the snap magnet and set it to 1/2 it will insert the stretch marker every half bar when set to beat), if you have sustained notes like a bass you get an artifact where the stretch marker is, to remove them from a sustained ending use (beats won't work with the grid set to swing, that's a Reaper issue, so use bar)
Item: Remove all stretch markers in time selection

right click Save Link/Target As
ReaTrak set item bpm and fit to project tempo map.lua

I used the ReaTrak sonic visualiser import bars or beats.lua above to get the map then fitted the constant tempo tracks to it.


__________________
ReaTrakStudio Chord Track for Reaper forum
www.reatrak.com
MusoBob is offline   Reply With Quote
Old 06-26-2019, 07:54 AM   #134
Breeder
Human being with feelings
 
Breeder's Avatar
 
Join Date: Nov 2010
Location: Croatia
Posts: 2,109
Default

MusoBob, I'm too busy to read/test what you did, but if you want for me to put it in the first post with links to your posts, write me a small/one sentence description what this does exactly

It seems you invested so much time, it would be smart to put it there so it doesn't get lost in the crowd.
__________________
My contributions
Breeder is offline   Reply With Quote
Old 06-26-2019, 10:43 AM   #135
MusoBob
Human being with feelings
 
MusoBob's Avatar
 
Join Date: Sep 2014
Posts: 839
Default

Import Tempo Map from Audio and fit any constant tempo items to it.
__________________
ReaTrakStudio Chord Track for Reaper forum
www.reatrak.com
MusoBob is offline   Reply With Quote
Old 06-26-2019, 10:51 AM   #136
Breeder
Human being with feelings
 
Breeder's Avatar
 
Join Date: Nov 2010
Location: Croatia
Posts: 2,109
Default

Quote:
Originally Posted by MusoBob View Post
Import Tempo Map from Audio and fit any constant tempo items to it.
Done! Thank you for sharing your findings with us!
__________________
My contributions
Breeder is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 08:00 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.